Secrets Manager の IAM アクセス権限管理
アカウントのユーザーに対する IBM Cloud® Secrets Manager サービス・インスタンスへのアクセス権限は、IBM Cloud ID およびアクセス管理 (IAM) によって制御されます。 アカウントの Secrets Manager サービスにアクセスするすべてのユーザーに、IAM ロールを持つアクセス・ポリシーが割り当てられている必要があります。 このポリシーは、Secrets Manager のコンテキストでユーザーが実行できるアクションを決定します。
IAM アクセス・ポリシーによって、さまざまなレベルでアクセス権限を付与できます。 オプションには次のようなものがある:
- アカウントのすべての Secrets Manager サービス・インスタンスにわたるアクセス権限
- アカウントの各 Secrets Manager インスタンスへのアクセス権限
- Secrets Manager インスタンス内の特定のリソースへのアクセス。
secret-group
Secrets Manager の IAM ロールとアクション
Secrets Manager サービス・インスタンスへのアクセス権限を割り当てるために使用できる以下の プラットフォームおよびサービスのロール をレビューしてください。 各ロールは、ユーザーが 1 つのアカウントまたは各インスタンスで実行できる特定の Secrets Manager アクションにマッピングされます。
特定のロールとそのアクションが、アドレスを探すユースケースに適合しない場合は、カスタム・ロールを作成して、含めるアクションを選択できます。
| 役割 | 説明 |
|---|---|
| ビューアー | ビューアーとしては、Secrets Manager サービス・インスタンスを表示することはできますが、変更はできません。 |
| オペレーター | オペレーターとしては、例えば Secrets Manager ダッシュボードを表示する機能など、Secrets Manager サービス・インスタンスの構成と操作に必要なプラットフォーム・アクションを完了できます。 |
| エディター | エディターとしては、Secrets Manager サービス・インスタンスを作成、変更、削除することはできますが、アクセス・ポリシーを他のユーザーに割り当てることはできません。 |
| 管理者 | 管理者としては、他のユーザーにアクセス・ポリシーを割り当てる機能を含む、Secrets Manager のすべてのプラットフォーム・アクションを実行できます。 |
| 役割 | 説明 |
|---|---|
| リーダー | リーダーとしては、Secrets Manager サービス・インスタンスの読み取り専用アクション (シークレットやシークレット・グループを表示する機能など) を実行できます。 リーダーは、シークレットに関連するメタデータにのみアクセスできます。 |
| SecretsReader | シークレット・リーダーは、読み取り専用アクションを実行でき、またシークレットに関連付けられているシークレット・データにアクセスすることもできます。 シークレットの作成および既存のシークレットの値の変更は行えません。 |
| ライター | ライターにはシークレット・リーダー役割を超える権限があります。例えば、シークレットの作成や編集を行えます。 ライターは、シークレット・グループを作成したり、シークレット・エンジンを構成したりできません。 |
| マネージャー | マネージャーとして、シークレットグループの管理やシークレットエンジンの設定など、特権的なアクションを完了するためのライターロールを超える権限を持っています。 |
| SecretTaskUpdater | シークレットタスクの更新者として、シークレットタスクを更新することができる。 このロールは他のオペレーションを行うことはできない。 |
| アクション | 説明 | 役割 |
|---|---|---|
secrets-manager.dashboard.view |
Secrets Manager ダッシュボードを表示します。 | オペレーター、エディター、管理者 |
secrets-manager.secret-group.create |
シークレット・グループを作成します。 | マネージャー |
secrets-manager.secret-group.update |
シークレット・グループを更新します。 | マネージャー |
secrets-manager.secret-group.delete |
シークレット・グループを削除します。 | マネージャー |
secrets-manager.secret-group.read |
シークレット・グループの詳細を表示。 | リーダー、シークレット・リーダー (SecretsReader)、ライター、マネージャー |
secrets-manager.secret-groups.list |
インスタンス内のシークレット・グループをリストします。 | リーダー、シークレット・リーダー (SecretsReader)、ライター、マネージャー |
secrets-manager.secret.create |
シークレットを作成します。 | ライター、マネージャー |
secrets-manager.secret.read |
シークレットの値を取得します。 | シークレット・リーダー (SecretsReader)、ライター、マネージャー |
secrets-manager.secret.delete |
シークレットを削除します。 | マネージャー |
secrets-manager.secrets.list |
インスタンス内のシークレットをリストします。 | リーダー、シークレット・リーダー (SecretsReader)、ライター、マネージャー |
secrets-manager.secret-locks.create |
シークレット・ロックを作成します。 | ライター、マネージャー |
secrets-manager.secret-locks.delete |
シークレット・ロックを削除します。 | マネージャー |
secrets-manager.secrets-locks.list |
シークレット・ロックをリストします。 | リーダー、シークレット・リーダー (SecretsReader)、ライター、マネージャー |
secrets-manager.secret-version-locks.create |
シークレット・バージョン・ロックを作成します。 | 管理者、ライター |
secrets-manager.secret-version-locks.list |
シークレット・バージョンのロックをリストします。 | マネージャー、読者、作家、 SecretsReader |
secrets-manager.secret-version-locks.delete |
シークレット・バージョン・ロックを削除します。 | マネージャー |
secrets-manager.secret-metadata.update |
シークレットのメタデータを更新。 | ライター、マネージャー |
secrets-manager.secret-metadata.read |
シークレットのメタデータを表示。 | リーダー、シークレット・リーダー (SecretsReader)、ライター、マネージャー |
secrets-manager.secret-action.create |
シークレット・アクションを作成します。 | 管理者、ライター |
secrets-manager.secret-version.create |
新しいシークレット・バージョンを作成します。 | 管理者、ライター |
secrets-manager.secret-version.read |
シークレット・バージョンの詳細を表示します。 | マネージャー、ライター、 SecretsReader |
secrets-manager.secret-version-metadata.read |
シークレット・バージョンのメタデータを表示します。 | マネージャー、読者、作家、 SecretsReader |
secrets-manager.secret-version-action.create |
シークレット・バージョン・アクションを作成します。 | 管理者、ライター |
secrets-manager.configuration.create |
新規構成を作成します。 | マネージャー |
secrets-manager.configuration-action.create |
新しいコンフィギュレーション・アクションを作成する。 | マネージャー |
secrets-manager.configurations.list |
構成をリストします。 | マネージャー、リーダー、ライター |
secrets-manager.configuration.read |
構成の詳細を表示します。 | マネージャー |
secrets-manager.configuration.update |
構成を更新します。 | マネージャー |
secrets-manager.configuration.delete |
構成を取得します。 | マネージャー |
secrets-manager.secret-versions.list |
シークレットのバージョンをリストします。 | リーダー、シークレット・リーダー (SecretsReader)、ライター、マネージャー |
secrets-manager.endpoints.view |
サービス・インスタンス・エンドポイントを取得します。 | リーダー、シークレット・リーダー (SecretsReader)、ライター、マネージャー |
secrets-manager.notifications-registration.create |
Event Notificationsで登録を作成します。 | マネージャー |
secrets-manager.notifications-registration.read |
Event Notifications 登録の詳細を取得します。 | リーダー、シークレット・リーダー (SecretsReader)、ライター、マネージャー |
secrets-manager.notifications-registration.delete |
Event Notifications の登録を削除する。 | マネージャー |
secrets-manager.notifications-registration.test |
テスト・イベントの送信。 | リーダー、シークレット・リーダー (SecretsReader)、ライター、マネージャー |
secrets-manager.secret-tasks.list |
シークレット・タスクをリストします。 | リーダー、シークレット・リーダー (SecretsReader)、ライター、マネージャー |
secrets-manager.secret-task.read |
シークレットのタスクを取得します。 | リーダー、シークレット・リーダー (SecretsReader)、ライター、マネージャー |
secrets-manager.secret-task.update |
シークレットのタスクを更新します。 | SecretTaskUpdater |
secrets-manager.secret-task.delete |
秘密のタスクを削除する。 | マネージャー |
Secrets Manager へのアクセス権限の割り当て
IBM Cloud コンソール、CLI、API のいずれかを使用して、アカウントの Secrets Manager リソースに異なるレベルのアクセス権限を割り当てることができます。 インスタンス・レベルでアクセス権限を割り当てることも、1 つ以上のシークレットを含むシークレット・グループへのアクセスを制限することもできます。 詳細については、Secrets Manager へのアクセス権限の割り当てを参照してください。