9.5. ロールの管理
ストレージ管理者は、radosgw-admin
コマンドでロールに関連付けられたパーミッションを作成、削除、または更新できます。
ロールはユーザーに似ており、パーミッションポリシーが割り当てられます。任意のアイデンティティーをもとに想定することができます。ユーザーがロールを想定すると、動的に作成された一時認証情報のセットがユーザーに返されます。ロールを使用すると、一部の S3 リソースへのアクセス権限を持たないユーザー、アプリケーション、およびサービスへのアクセスを委譲できます。
9.5.1. ロールの作成 リンクのコピーリンクがクリップボードにコピーされました!
radosgw-admin role create
コマンドでユーザーのロールを作成します。コマンドで assume-role-policy-doc
パラメーターを持つユーザーを作成する必要があります。これは、エンティティーにロールを引き受けるパーミッションを付与する信頼関係ポリシードキュメントです。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway のインストール
- Ceph Object Gateway ノードへのルートレベルのアクセス。
- S3 バケットが作成されている。
- ユーザーアクセスで作成された S3 ユーザー。
手順
ロールを作成します。
構文
radosgw-admin role create --role-name=ROLE_NAME [--path=="PATH_TO_FILE"] [--assume-role-policy-doc=TRUST_RELATIONSHIP_POLICY_DOCUMENT]
radosgw-admin role create --role-name=ROLE_NAME [--path=="PATH_TO_FILE"] [--assume-role-policy-doc=TRUST_RELATIONSHIP_POLICY_DOCUMENT]
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow --path
の値は、デフォルトで/
です。
9.5.2. ロールの取得 リンクのコピーリンクがクリップボードにコピーされました!
get
コマンドを使用して、ロールに関する情報を取得します。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway のインストール
- Ceph Object Gateway ノードへのルートレベルのアクセス。
- S3 バケットが作成されている。
- ロールが作成されている。
- ユーザーアクセスで作成された S3 ユーザー。
手順
ロールに関する情報を取得します。
構文
radosgw-admin role get --role-name=ROLE_NAME
radosgw-admin role get --role-name=ROLE_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.3. ロールの一覧表示 リンクのコピーリンクがクリップボードにコピーされました!
list
コマンドを使用して、特定のパス内のロールを一覧表示できます。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway のインストール
- Ceph Object Gateway ノードへのルートレベルのアクセス。
- S3 バケットが作成されている。
- ロールが作成されている。
- ユーザーアクセスで作成された S3 ユーザー。
手順
ロールを一覧表示します。
構文
radosgw-admin role list
radosgw-admin role list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.4. ロールの仮定ロールポリシードキュメントの更新 リンクのコピーリンクがクリップボードにコピーされました!
modify
コマンドを使用してロールを引き受けるためにエンティティーパーミッションを付与する assume ロールポリシードキュメントを更新できます。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway のインストール
- Ceph Object Gateway ノードへのルートレベルのアクセス。
- S3 バケットが作成されている。
- ロールが作成されている。
- ユーザーアクセスで作成された S3 ユーザー。
手順
ロールの assume ロールポリシードキュメントを変更します。
構文
radosgw-admin role-trust-policy modify --role-name=ROLE_NAME --assume-role-policy-doc=TRUST_RELATIONSHIP_POLICY_DOCUMENT
radosgw-admin role-trust-policy modify --role-name=ROLE_NAME --assume-role-policy-doc=TRUST_RELATIONSHIP_POLICY_DOCUMENT
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.5. ロールに割り当てられたパーミッションポリシーの取得 リンクのコピーリンクがクリップボードにコピーされました!
get
コマンドを使用して、ロールに割り当てられた特定のパーミッションポリシーを取得できます。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway のインストール
- Ceph Object Gateway ノードへのルートレベルのアクセス。
- S3 バケットが作成されている。
- ロールが作成されている。
- ユーザーアクセスで作成された S3 ユーザー。
手順
パーミッションポリシーを取得します。
構文
radosgw-admin role-policy get --role-name=ROLE_NAME --policy-name=POLICY_NAME
radosgw-admin role-policy get --role-name=ROLE_NAME --policy-name=POLICY_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
radosgw-admin role-policy get --role-name=S3Access1 --policy-name=Policy1
[root@host01 ~]# radosgw-admin role-policy get --role-name=S3Access1 --policy-name=Policy1 { "Permission policy": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"s3:*\"],\"Resource\":\"arn:aws:s3:::example_bucket\"}]}" }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.6. ロールの削除 リンクのコピーリンクがクリップボードにコピーされました!
ロールは、割り当てられたパーミッションポリシーを削除した後にのみ削除できます。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway のインストール
- Ceph Object Gateway ノードへのルートレベルのアクセス。
- ロールが作成されている。
- S3 バケットが作成されている。
- ユーザーアクセスで作成された S3 ユーザー。
手順
ロールに割り当てられたポリシーを削除します。
構文
radosgw-admin role policy delete --role-name=ROLE_NAME --policy-name=POLICY_NAME
radosgw-admin role policy delete --role-name=ROLE_NAME --policy-name=POLICY_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
radosgw-admin role policy delete --role-name=S3Access1 --policy-name=Policy1
[root@host01 ~]# radosgw-admin role policy delete --role-name=S3Access1 --policy-name=Policy1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ロールを削除します。
構文
radosgw-admin role delete --role-name=ROLE_NAME
radosgw-admin role delete --role-name=ROLE_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
radosgw-admin role delete --role-name=S3Access1
[root@host01 ~]# radosgw-admin role delete --role-name=S3Access1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.7. ロールに割り当てられたポリシーの更新 リンクのコピーリンクがクリップボードにコピーされました!
put
コマンドを使用して、ロールにアタッチされたインラインポリシーを追加または更新できます。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway のインストール
- Ceph Object Gateway ノードへのルートレベルのアクセス。
- S3 バケットが作成されている。
- ロールが作成されている。
- ユーザーアクセスで作成された S3 ユーザー。
手順
インラインポリシーを更新します。
構文
radosgw-admin role-policy put --role-name=ROLE_NAME --policy-name=POLICY_NAME --policy-doc=PERMISSION_POLICY_DOCUMENT
radosgw-admin role-policy put --role-name=ROLE_NAME --policy-name=POLICY_NAME --policy-doc=PERMISSION_POLICY_DOCUMENT
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
radosgw-admin role-policy put --role-name=S3Access1 --policy-name=Policy1 --policy-doc=\{\"Version\":\"2012-10-17\",\"Statement\":\[\{\"Effect\":\"Allow\",\"Action\":\[\"s3:*\"\],\"Resource\":\"arn:aws:s3:::example_bucket\"\}\]\}
[root@host01 ~]# radosgw-admin role-policy put --role-name=S3Access1 --policy-name=Policy1 --policy-doc=\{\"Version\":\"2012-10-17\",\"Statement\":\[\{\"Effect\":\"Allow\",\"Action\":\[\"s3:*\"\],\"Resource\":\"arn:aws:s3:::example_bucket\"\}\]\}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow この例では、
Policy1
をロールS3Access1
に割り当てます。これにより、example_bucket
ですべての S3 アクションが許可されます。
9.5.8. ロールに割り当てられたパーミッションポリシーの一覧表示 リンクのコピーリンクがクリップボードにコピーされました!
list
コマンドを使用して、ロールに割り当てられているパーミッションポリシーの名前を一覧表示できます。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway のインストール
- Ceph Object Gateway ノードへのルートレベルのアクセス。
- S3 バケットが作成されている。
- ロールが作成されている。
- ユーザーアクセスで作成された S3 ユーザー。
手順
パーミッションポリシーの名前を一覧表示します。
構文
radosgw-admin role-policy list --role-name=ROLE_NAME
radosgw-admin role-policy list --role-name=ROLE_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
radosgw-admin role-policy list --role-name=S3Access1
[root@host01 ~]# radosgw-admin role-policy list --role-name=S3Access1 [ "Policy1" ]
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.9. ロールに割り当てられたポリシーの削除 リンクのコピーリンクがクリップボードにコピーされました!
rm
コマンドを使用すると、ロールに割り当てられたパーミッションポリシーを削除できます。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway のインストール
- Ceph Object Gateway ノードへのルートレベルのアクセス。
- S3 バケットが作成されている。
- ロールが作成されている。
- ユーザーアクセスで作成された S3 ユーザー。
手順
パーミッションポリシーを削除します。
構文
radosgw-admin role policy delete --role-name=ROLE_NAME --policy-name=POLICY_NAME
radosgw-admin role policy delete --role-name=ROLE_NAME --policy-name=POLICY_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
radosgw-admin role policy delete --role-name=S3Access1 --policy-name=Policy1
[root@host01 ~]# radosgw-admin role policy delete --role-name=S3Access1 --policy-name=Policy1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.10. ロールのセッション期間の更新 リンクのコピーリンクがクリップボードにコピーされました!
update
コマンドを使用してロールのセッション期間を更新し、提供された認証情報を使用してユーザーがアカウントにサインインできる期間を制御できます。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway のインストール
- Ceph Object Gateway ノードへのルートレベルのアクセス。
- S3 バケットが作成されている。
- ロールが作成されている。
- ユーザーアクセスで作成された S3 ユーザー。
手順
update
コマンドを使用して max-session-duration を更新します。構文
radosgw-admin role update --role-name=ROLE_NAME --max-session-duration=7200
[root@node1 ~]# radosgw-admin role update --role-name=ROLE_NAME --max-session-duration=7200
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
radosgw-admin role update --role-name=test-sts-role --max-session-duration=7200
[root@node1 ~]# radosgw-admin role update --role-name=test-sts-role --max-session-duration=7200
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
ロールを一覧表示して、更新を確認します。
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow