IAM の概要
アカウント内のユーザーの IBM Cloud® Object Storage サービス・インスタンスへのアクセス権限は、IBM Cloud Identity and Access Management (IAM) によって制御されます。
Identity and Access Management 役割
ご使用のアカウント内の IBM Cloud® Object Storage サービスにアクセスするすべてのユーザーには、IAM ユーザー役割が定義されたアクセス・ポリシーを割り当てる必要があります。 そのポリシーにより、選択したサービスまたはインスタンスのコンテキスト内でユーザーが実行できるアクションが決まります。 許可されるアクションは、サービス上で実行できる操作として、IBM Cloud サービスによってカスタマイズされて定義されます。 その後、操作は IAM ユーザー役割にマップされます。
外部ID分離(EII)が Limited に設定されている場合、匿名要求にはアカウント IDがなく、ID照合要件を満たすことができないため、公開アクセスは失敗する。
ポリシーでは、さまざまなレベルのアクセス権限を付与できます。 以下に選択肢をいくつか示します。
- アカウント内のすべてのサービス・インスタンスに対するアクセス権限
- アカウント内の個別のサービス・インスタンスに対するアクセス権限
- インスタンス内の特定のバケットへのアクセス ( バケットの許可 を参照)
- アカウント内のすべての IAM 対応サービスに対するアクセス権限
- バケット内の特定のオブジェクトまたはオブジェクト・グループへのアクセス
アクセス・ポリシーの有効範囲を定義した後に、役割を割り当てることができます。 Object Storage サービス内で各役割が実行できるアクションを示した、下記の表を参照してください。
下記の表は、プラットフォーム管理役割にマップされたアクションの詳細を示しています。 プラットフォーム管理役割により、ユーザーはプラットフォーム・レベルでサービス・リソースに対するタスクを実行できます。例えば、サービスに対するユーザー・アクセス権限の割り当て、サービス ID の作成または削除、インスタンスの作成、アプリケーションへのインスタンスのバインドなどを実行できます。
| プラットフォーム管理ロール | アクションの説明 | アクション例 |
|---|---|---|
| ビューアー | サービス・インスタンスの表示はできるが、変更はできない |
|
| エディター | アカウントの管理とアクセス・ポリシーの割り当てを除き、すべてのプラットフォーム・アクションを実行する |
|
| オペレーター | COS では使用されない | なし |
| 管理者 | この役割が割り当てられているリソースに基づいてすべてのプラットフォーム・アクションを実行します。これには、他のユーザーへのアクセス・ポリシーの割り当て、およびバケットに対する PublicAccess ポリシーの設定が含まれます。 |
|
次の表は、サービス・アクセス役割にマップされたアクションについて詳しく示しています。 ユーザーは、サービス・アクセス役割を持つことで、Object Storage にアクセスしたり、Object Storage API を呼び出したりすることができます。
| サービス・アクセス・ロール | アクションの説明 | アクション例 |
|---|---|---|
| オブジェクト・ライター | オブジェクトのアップロードおよび上書き (複数パーツでのオブジェクトのアップロードを含む)。 |
|
| オブジェクト・ライター | オブジェクトのアップロードおよび上書き (複数パーツでのオブジェクトのアップロードを含む)。 |
|
| オブジェクト・リーダー | オブジェクトをダウンロードし、オブジェクト・メタデータ (ヘッダー) を読み取りますが、オブジェクトやバケットはリストしません。 |
|
| コンテンツ・リーダー | オブジェクトをダウンロードしてリストし、オブジェクト・メタデータ (ヘッダー) を読み取りますが、バケットはリストしません。 |
|
| リーダー | リーダーは、コンテンツ・リーダー・アクションに加えて、バケットをリストしたり、バケット・メタデータを読み取ったりすることはできますが、変更することはできません。 |
|
| ライター | リーダーのアクションに加えて、ライターは、バケットを作成したり、オブジェクトをアップロードしたりできます。 |
|
| マネージャー | ライターのアクションに加えて、管理者は、アクセス制御に影響する特権アクションを実行できます。 |
|
UI でのユーザー役割の割り当てについては、IAM アクセス権限の管理を参照してください。
Identity and Access Management アクション
| アクションID | 説明 | サポートされる条件属性 |
|---|---|---|
cloud-object-storage.account.get_account_buckets |
サービス・インスタンス内のすべてのバケットをリストします。 | なし |
cloud-object-storage.account.list_account_backup_vaults |
サービスインスタンス内のすべてのバックアップ・ヴォールトを一覧表示します。 | なし |
cloud-object-storage.bucket.put_bucket |
バケットを作成します。 | なし |
cloud-object-storage.bucket.post_bucket |
内部使用のみ - ユーザーに対してはサポートされていません。 | なし |
cloud-object-storage.bucket.delete_bucket |
バケットを削除します。 | なし |
cloud-object-storage.bucket.get |
バケット内のすべてのオブジェクトをリストします。 | 接頭部、区切り文字 |
cloud-object-storage.bucket.list_crk_id |
バケットに関連付けられている暗号化ルート鍵の ID をリストします。 | なし |
cloud-object-storage.bucket.head |
バケット・メタデータを表示します。 | なし |
cloud-object-storage.bucket.get_versions |
オブジェクト・バージョンをリストします。 | 接頭部、区切り文字 |
cloud-object-storage.bucket.get_uploads |
バケットのアクティブなマルチパート・アップロードをすべてリストします。 | 接頭部、区切り文字 |
cloud-object-storage.bucket.put_quota |
サポートされない操作 - S3 API 互換性にのみ使用されます。 | なし |
cloud-object-storage.bucket.get_acl |
バケット ACL [非推奨]を読み取ります。 | なし |
cloud-object-storage.bucket.put_acl |
バケット ACL [非推奨]を作成します。 | なし |
cloud-object-storage.bucket.get_cors |
CORS ルールを読み取ります。 | なし |
cloud-object-storage.bucket.put_cors |
バケットに CORS ルールを追加します。 | なし |
cloud-object-storage.bucket.delete_cors |
CORS ルールを削除します。 | なし |
cloud-object-storage.bucket.get_website |
バケット Web サイト構成を読み取ります。 | なし |
cloud-object-storage.bucket.put_website |
バケット Web サイト構成を追加します。 | なし |
cloud-object-storage.bucket.delete_website |
バケット Web サイト構成を削除します。 | なし |
cloud-object-storage.bucket.get_versioning |
バケットのバージョン管理状況を確認します。 | なし |
cloud-object-storage.bucket.put_versioning |
バケットのバージョン管理を有効にします。 | なし |
cloud-object-storage.bucket.get_object_lock_configuration |
バケットからオブジェクト・ロック構成を取得します。 | なし |
cloud-object-storage.bucket.put_object_lock_configuration |
バケットからオブジェクト・ロック構成を設定します。 | なし |
cloud-object-storage.bucket.get_fasp_connection_info |
Aspera FASP 接続情報を表示します。 | なし |
cloud-object-storage.account.delete_fasp_connection_info |
Aspera FASP 接続情報を削除します。 | なし |
cloud-object-storage.bucket.get_location |
バケットの場所とストレージ・クラスを表示します。 | なし |
cloud-object-storage.bucket.get_lifecycle |
バケット・ライフサイクル・ポリシーを読み取ります。 | なし |
cloud-object-storage.bucket.put_lifecycle |
バケット・ライフサイクル・ポリシーを作成します。 | なし |
cloud-object-storage.bucket.get_basic |
リソース構成 API を使用してバケット・メタデータ (オブジェクトの数など) を読み取ります。 | なし |
cloud-object-storage.bucket.get_activity_tracking |
アクティビティー・トラッキング構成を読み取ります。 | なし |
cloud-object-storage.bucket.put_activity_tracking |
アクティビティー・トラッキング構成を追加します。 | なし |
cloud-object-storage.bucket.get_metrics_monitoring |
メトリック・モニター構成を読み取ります。 | なし |
cloud-object-storage.bucket.put_metrics_monitoring |
メトリック・モニター構成を追加します。 | なし |
cloud-object-storage.bucket.put_protection |
変更不可能 Object Storage ポリシーを追加します。 | なし |
cloud-object-storage.bucket.get_protection |
変更不可能 Object Storage ポリシーを読み取ります。 | なし |
cloud-object-storage.bucket.put_firewall |
ファイアウォール構成を追加します。 | なし |
cloud-object-storage.bucket.get_firewall |
ファイアウォール構成を読み取ります。 | なし |
cloud-object-storage.bucket.put_public_access_block |
バケットのパブリック・アクセス・ブロック構成を追加または更新します。 | なし |
cloud-object-storage.bucket.delete_public_access_block |
バケットのパブリック・アクセス・ブロック構成を削除します。 | なし |
cloud-object-storage.bucket.get_public_access_block |
バケットのパブリック・アクセス・ブロック構成を取得します。 | なし |
cloud-object-storage.bucket.list_bucket_crn |
バケット CRN を表示します。 | なし |
cloud-object-storage.bucket.get_notifications |
内部使用のみ - ユーザーに対してはサポートされていません。 | なし |
cloud-object-storage.bucket.put_notifications |
内部使用のみ - ユーザーに対してはサポートされていません。 | なし |
cloud-object-storage.bucket.get_replication |
バケットのレプリケーション設定を読み取ります。 | なし |
cloud-object-storage.bucket.put_replication |
バケットに複製構成を追加します。 | なし |
cloud-object-storage.bucket.delete_replication |
バケットのレプリケーション設定を削除します。 | なし |
cloud-object-storage.object.get |
オブジェクトを表示およびダウンロードします。 | path |
cloud-object-storage.object.head |
オブジェクトのメタデータを読み取ります。 | path |
cloud-object-storage.object.get_version |
指定されたバージョンのオブジェクトを読み取ります。 | path |
cloud-object-storage.object.head_version |
オブジェクトの特定のバージョンのヘッダーを取得します。 | path |
cloud-object-storage.object.put |
オブジェクトを書き込み、アップロードします。 | path |
cloud-object-storage.object.post |
HTML フォーム [非推奨]を使用してオブジェクトをアップロードします。 | path |
cloud-object-storage.object.post_md |
HTML フォーム [非推奨]を使用してオブジェクト・メタデータを更新します。 | path |
cloud-object-storage.object.post_initiate_upload |
マルチパート・アップロードを開始します。 | path |
cloud-object-storage.object.put_part |
オブジェクト・パーツをアップロードします。 | path |
cloud-object-storage.object.copy_part |
オブジェクト・パーツをコピー (書き込み) します。 | path |
cloud-object-storage.object.copy_part_get |
オブジェクト・パーツをコピー (読み取り) します。 | path |
cloud-object-storage.object.copy_part_get_version |
オブジェクト・パーツをコピー (読み取り) します。 | path |
cloud-object-storage.object.post_complete_upload |
マルチパート・アップロードを完了します。 | path |
cloud-object-storage.object.copy |
1 つのバケットから別のバケットにオブジェクトをコピー (書き込み) します。 | path |
cloud-object-storage.object.copy_get |
1 つのバケットから別のバケットにオブジェクトをコピー (読み取り) します。 | path |
cloud-object-storage.object.copy_get_version |
1 つのバケットから別のバケットにオブジェクトをコピー (読み取り) します。 | path |
cloud-object-storage.object.get_acl |
オブジェクト ACL [非推奨]を読み取ります。 | path |
cloud-object-storage.object.get_acl_version |
オブジェクトACLの読み取り権限のバージョンは[非推奨となりました] | path |
cloud-object-storage.object.put_acl |
オブジェクト ACL [非推奨]を書き込みます。 | path |
cloud-object-storage.object.put_acl_version |
サポートされない操作 - S3 API 互換性にのみ使用されます。 | path |
cloud-object-storage.object.delete |
オブジェクトを削除します。 | path |
cloud-object-storage.object.delete_version |
オブジェクトの特定のバージョンを削除します。 | path |
cloud-object-storage.object.get_uploads |
オブジェクトの構成要素を列挙する。 | path |
cloud-object-storage.object.delete_upload |
マルチパート・アップロードを中止します。 | path |
cloud-object-storage.object.restore |
アーカイブされたオブジェクトを一時的に復元します。 | path |
cloud-object-storage.object.restore_version |
アーカイブされたオブジェクトを一時的に復元します。 | path |
cloud-object-storage.object.get_tagging |
オブジェクト・タグ・バージョンを読み取ります | path |
cloud-object-storage.object.put_tagging |
オブジェクト・タグの追加または更新 | path |
cloud-object-storage.object.delete_tagging |
オブジェクト・タグを削除します | path |
cloud-object-storage.object.post_multi_delete |
複数のオブジェクトを削除します。 | なし |
cloud-object-storage.object.post_legal_hold |
オブジェクトに訴訟ホールドを追加します。 | path |
cloud-object-storage.object.get_legal_hold |
オブジェクトに対する訴訟ホールドを表示します。 | path |
cloud-object-storage.object.post_extend_retention |
保存ポリシーを拡張します。 | path |
cloud-object-storage.object.get_object_lock_retention |
オブジェクトに対するオブジェクト・ロック保存設定を取得します。 | path |
cloud-object-storage.object.put_object_lock_retention |
オブジェクトにオブジェクト・ロック保存設定を設定します。 | path |
cloud-object-storage.object.get_object_lock_legal_hold |
オブジェクトに対するオブジェクト・ロックの訴訟ホールド状態を取得します。 | path |
cloud-object-storage.object.put_object_lock_legal_hold |
オブジェクトにオブジェクト・ロックの法的保留状態を設定します。 | path |
cloud-object-storage.object.get_object_lock_retention_version |
オブジェクトに対するオブジェクト・ロック保存バージョン設定を取得します。 | path |
cloud-object-storage.object.put_object_lock_retention_version |
オブジェクトにオブジェクト・ロック保存バージョン設定を設定します。 | path |
cloud-object-storage.object.get_object_lock_legal_hold_version |
オブジェクトに対するオブジェクト・ロックの訴訟ホールド状態を取得します。 | path |
cloud-object-storage.object.put_object_lock_legal_hold_version |
オブジェクトにオブジェクト・ロックの法的保留状態を設定します。 | path |
cloud-object-storage.object.put_tagging_version |
オブジェクト・タグ・バージョンの追加または更新 | path |
cloud-object-storage.object.get_tagging_version |
オブジェクト・タグ・バージョンを読み取ります | path |
cloud-object-storage.object.delete_tagging_version |
オブジェクト・タグ・バージョンを削除します | path |