コンテナコンピューティングサービス (ACS) は、Alibaba Cloud アカウント、Resource Access Management (RAM) ユーザー、または RAM ロールへの ID 情報を含む kubeconfig ファイルに署名して発行します。これらの kubeconfig ファイルを使用して、ACS クラスタにアクセスできます。kubeconfig ファイル管理機能を使用すると、クラスタ、RAM ユーザー、または RAM ロールに基づいて、Alibaba Cloud アカウント、RAM ユーザー、または RAM ロールに発行された kubeconfig ファイルのステータスを表示できます。さらに、セキュリティリスクとなる可能性のある kubeconfig ファイルを削除し、権限を取り消すことができます。
Kubeconfig ファイルの概要
Kubeconfig ファイルには、クライアントが ACS クラスタにアクセスするために使用する認証情報が保存されます。ACS コンソールを使用するか、DescribeClusterUserKubeconfig API オペレーションを呼び出して、kubeconfig ファイルをクエリできます。認証情報の漏洩によるデータ侵害を防ぐために、kubeconfig ファイルは機密にしておく必要があります。
kubeconfig ファイルは、ファイルの有効期限が過ぎると無効になります。kubeconfig ファイルの有効期限のクエリ方法の詳細については、「クラスタの kebeconfig ファイルを取得し、kubectl を使用してクラスタに接続する」トピックの問題 2: kubeconfig ファイルで使用されている証明書の有効期限をクエリするにはどうすればよいですか?セクションを参照してください。
Kubeconfig ファイルのステータス
次の表に、ACS で使用される kubeconfig ファイルのステータスを示します。
Kubeconfig ファイルのステータス | 説明 |
未発行 | 現在のクラスタの kubeconfig ファイルは、RAM ユーザーまたは RAM ロールに発行されていません。 |
有効 | 現在のクラスタの kubeconfig ファイルは、RAM ユーザーまたは RAM ロールに発行されており、kubeconfig ファイルはまだ有効です。 |
RAM ユーザーまたは RAM ロールに発行された kubeconfig ファイルは削除されましたが、ロールベースのアクセス制御 (RBAC) 権限は取り消されていません。 | |
期限切れ | 現在のクラスタの kubeconfig ファイルは、RAM ユーザーまたは RAM ロールに発行されていますが、kubeconfig ファイルは期限切れです。 |
削除済み | 現在のクラスタの kubeconfig ファイルは、RAM ユーザーまたは RAM ロールに発行されていますが、kubeconfig ファイルは削除されています。 kubeconfig ファイルを削除すると、kubeconfig 情報と RAM ユーザーまたは RAM ロールの RBAC バインディングも削除されます。 |
kubeconfig ファイルを削除する前に、有効な kubeconfig ファイルの重要度と有効期限を確認することをお勧めします。たとえば、退職した従業員に発行された kubeconfig ファイルを削除し、kubeconfig ファイルの期限切れによる業務の中断を防ぐことをお勧めします。
kubeconfig ファイルを削除する前に、リスクが発生しないことを確認してください。そうしないと、kubeconfig ファイルを生成したクラスタの API サーバーにアクセスできなくなります。
共同責任モデルで定義されているように、kubeconfig ファイルは Alibaba Cloud のお客様によって管理および保守されます。潜在的なリスクのある kubeconfig ファイルはできるだけ早く削除することをお勧めします。
Kubeconfig ファイル管理
ディメンション | ユースケースシナリオ | 必要な権限 | 例 |
クラスタ | クラスタ内のすべての RAM ユーザーまたは RAM ロールの kubeconfig ファイルを管理します。 |
| |
RAM ユーザーまたは RAM ロール | RAM ユーザーまたは RAM ロールに発行されたすべての kubeconfig ファイルを管理します。 |
| |
削除された RAM ユーザーまたは RAM ロール | 削除された RAM ユーザーまたは RAM ロールの残存 kubeconfig ファイルを管理します。残存 kubeconfig ファイルはまだ有効です。 |
|
クラスタ内の kubeconfig ファイルを管理する例
ACS コンソールにログオンします。左側のナビゲーションペインで、権限管理をクリックします。
承認ページで、Kubeconfig ファイル管理タブをクリックします。次に、管理するクラスタを見つけ、[アクション] 列でKubeconfig ファイル管理をクリックします。Kubeconfig ファイル管理パネルが表示されます。
クラスタの kubeconfig ファイルを保持している RAM ユーザーまたは RAM ロール、または クラスタの kubeconfig ファイルが削除されているが、まだ RBAC 権限を持っているユーザーを表示できます。[KubeConfig ファイル管理] パネルには、kubeconfig ファイルに含まれるユーザー情報と証明書情報が表示されます。
ユーザー情報: ユーザー名、ユーザー ID、アカウントタイプ、アカウントステータスが含まれます。
Kubeconfig ファイル情報: kubeconfig ファイルの有効期限とステータスが含まれます。
RAM ユーザーまたは RAM ロールが保持している現在のクラスタの kubeconfig ファイルがどのアプリケーションでも使用されていないことを確認した後、RAM ユーザーまたは RAM ロールに対応するアクション列のKubeconfig ファイルの削除をクリックして、kubeconfig ファイルを削除します。
重要kubeconfig ファイルを削除する前に、リスクが発生しないことを確認してください。そうしないと、kubeconfig ファイルを生成したクラスタの API サーバーにアクセスできなくなります。
共同責任モデルで定義されているように、kubeconfig ファイルは Alibaba Cloud のお客様によって管理および保守されます。潜在的なリスクのある kubeconfig ファイルはできるだけ早く削除することをお勧めします。
Kubeconfig ファイルの削除をクリックすると、システムは API サーバーの監査ログに自動的にアクセスし、過去 7 日間の kubeconfig ファイルのアクセスレコードを確認します。この機能を使用するには、API サーバーのクラスタ監査機能が有効になっていることを確認してください。詳細については、クラスタ監査の操作を参照してください。
RAM ユーザーまたは RAM ロールに発行された kubeconfig ファイルを管理する例
ACS コンソールにログオンします。左側のナビゲーションペインで、権限管理をクリックします。
承認ページで、RAM ユーザータブをクリックします。[RAM ユーザー] タブで、管理する RAM ユーザーを見つけ、右側にあるKubeConfig 管理をクリックします。Kubeconfig 管理パネルが表示されます。
[KubeConfig 管理] パネルには、RAM ユーザーまたは RAM ロールに属するクラスタの kubeconfig ファイルのステータスが表示されます。これには、クラスタ情報と kubeconfig ファイル情報が含まれます。
クラスタ情報: クラスタの名前と ID が含まれます。
Kubeconfig ファイル情報: kubeconfig ファイルの有効期限とステータス、および過去 7 日間の kubeconfig ファイルを使用したアクセスレコードが含まれます。
クラスタの kubeconfig ファイルを削除するか、複数のクラスタの kubeconfig ファイルを一度に削除します。kubeconfig ファイルを削除する前に、kubeconfig ファイルがどのアプリケーションでも使用されていないことを確認してください。
クラスタの kubeconfig ファイルを削除する: kubeconfig ファイルを削除するクラスタを見つけ、アクション列のKubeconfig ファイルの削除をクリックします。
複数のクラスタの kubeconfig ファイルを一度に削除する: kubeconfig ファイルを削除するクラスタを選択し、パネルの左下にあるKubeconfig ファイルの削除をクリックします。
重要kubeconfig ファイルを削除する前に、リスクが発生しないことを確認してください。そうしないと、kubeconfig ファイルを生成したクラスタの API サーバーにアクセスできなくなります。
共同責任モデルで定義されているように、kubeconfig ファイルは Alibaba Cloud のお客様によって管理および保守されます。潜在的なリスクのある kubeconfig ファイルはできるだけ早く削除することをお勧めします。
説明Kubeconfig ファイルの削除をクリックすると、システムは API サーバーの監査ログに自動的にアクセスし、過去 7 日間の kubeconfig ファイルのアクセスレコードを確認します。この機能を使用するには、API サーバーのクラスタ監査機能が有効になっていることを確認してください。詳細については、クラスタ監査の操作を参照してください。
残存 kubeconfig ファイルを削除する例
ACK コンソールの使用
ACS コンソールにログオンします。左側のナビゲーションペインで、権限管理をクリックします。
削除された RAM ユーザーまたは RAM ロールの残存 kubeconfig ファイルが存在する場合、承認ページに次のメッセージが表示されます。

メッセージ内の無効なアカウントに関連付けられている Kubeconfig ファイルを管理するをクリックして、削除された RAM ユーザー/ロールの Kubeconfig ファイルの削除ページに移動します。
このページでは、kubeconfig ファイルと RBAC 権限がまだ有効な、削除された RAM ユーザーまたは RAM ロールを表示できます。
削除する残存 kubeconfig ファイルがどのアプリケーションでも使用されていないことを確認し、削除された RAM ユーザーまたは RAM ロールの右側にあるKubeconfig ファイルの削除をクリックして、kubeconfig ファイルを削除します。
重要kubeconfig ファイルを削除する前に、リスクが発生しないことを確認してください。そうしないと、kubeconfig ファイルを生成したクラスタの API サーバーにアクセスできなくなります。
共同責任モデルで定義されているように、kubeconfig ファイルは Alibaba Cloud のお客様によって管理および保守されます。潜在的なリスクのある kubeconfig ファイルはできるだけ早く削除することをお勧めします。
Kubeconfig ファイルの削除をクリックすると、システムは API サーバーの監査ログに自動的にアクセスし、過去 7 日間の kubeconfig ファイルのアクセスレコードを確認します。この機能を使用するには、API サーバーのクラスタ監査機能が有効になっていることを確認してください。詳細については、クラスタ監査の操作を参照してください。
kubeconfig ファイルに関する FAQ
7 日間のアクセスレコードチェックとは何ですか?
7 日間のアクセスレコードチェック機能は、過去 7 日間に kubeconfig ファイルを使用して対応するクラスタにアクセスしたかどうかを確認します。この機能を使用するには、API サーバーのクラスタ監査機能が有効になっていることを確認してください。詳細については、クラスタ監査の操作を参照してください。この機能には制限があり、チェック結果は参考用です。削除する kubeconfig ファイルがどのアプリケーションでも使用されていないことを確認する必要があります。
7 日間のアクセスレコードチェック結果をどのように理解すればよいですか?
チェック結果 | タイプ | 考えられる原因 |
リクエストが開始されました | アクセスレコードが見つかりません。 | 過去 7 日間に、kubeconfig ファイルを使用してクラスタの API サーバーにアクセスしていません。 |
アクセスレコードが見つかりました。 | 過去 7 日間に、kubeconfig ファイルを使用してクラスタの API サーバーにアクセスしました。 | |
失敗 | アクセスレコードのクエリに失敗しました。 | クラスタ監査機能が無効になっているため、7 日間のアクセスレコードチェックに失敗しました。 |
クラスタ接続の失敗やネットワークの問題など、その他のエラーにより、7 日間のアクセスレコードチェックに失敗しました。 |
どのようなシナリオで kubeconfig ファイルを削除できませんか?
異常なクラスタ状態: 削除に失敗しました、削除中、削除済み、失敗状態のクラスタの kubeconfig ファイルは削除しないでください。
異常な kubeconfig ファイルまたは証明書のステータス: 未発行、取り消し済み、不明状態の kubeconfig ファイルは削除しないでください。
自分が保持している kubecofig ファイルは削除できません。
Alibaba Cloud アカウントに発行された kubeconfig ファイルは削除できません。
kubeconfig ファイル管理のセキュリティに関するベストプラクティスは何ですか?
クラスタへのアクセスに使用されるアカウントと認証情報 (RAM ユーザーの AccessKey ペア、トークン、kubeconfig ファイルなど) を管理し、機密にしておく必要があります。アカウントを管理し、クラスタの権限を付与する際には、最小権限の原則に従い、権限を速やかに取り消してください。たとえば、従業員が退職した後、できるだけ早く従業員のアカウントからクラスタアクセス権限を取り消す必要があります。
共同責任モデルに基づいて、kubeconfig ファイルの保守はお客様の責任です。kubeconfig ファイルが使用可能で有効であることを確認してください。これにより、kubeconfig ファイルの漏洩によるセキュリティリスクを防ぎます。
参考資料
従業員が退職した場合、または kubeconfig ファイルの漏洩が疑われる場合は、kubeconfig ファイルを取り消し、新しい kubeconfig ファイルを生成できます。詳細については、クラスタの kubeconfig ファイルを取り消すを参照してください。