操作シナリオ
Tencent Cloudは、お客様がコンソールとAPIの2つの方法でロールを使用することをサポートします。本ドキュメントは、典型的なケースを使って、お客様にロールの使用方法を簡単に理解していただきます。
前提条件
以下の条件が存在すると仮定します:
会社Aは運用保守エンジニアのポジションを持っており、会社Bにアウトソーシングされており、そのポジションが会社Aの広州リージョンにあるすべてのCloud Virtual Machine (CVM)リソースを操作できることを希望しています。
会社Aの企業アカウント CompanyExampleA の ownerUin は 12345 です。
会社Bの企業アカウント CompanyExampleB の ownerUin は 67890 です。
会社Bはサブアカウント DevBを持っており、DevBによってこの作業を完了することを希望しています。
操作手順
以下のタブをクリックして、対応する操作説明を閲覧できます。
1. 会社Aが会社Bのためにロールを作成します(ロール作成を参照)。
Tencent Cloudアカウントをロール担い手として選択し、DevOpsRoleなどのロールを作成します。ロール担い手を会社Bの企業アカウント「67890」に設定し、DevOpsRoleロールに会社Aの広州リージョンにあるすべてのCVMリソースを操作可能な権限を付与します。 2. 会社Bは会社Bのサブアカウントに権限付与を行います(サブアカウントにロール引き受けポリシーを付与を参照)。
会社BのサブアカウントDevBに、会社A(ownerUinが12345)のDevOpsRoleロールを引き受け可能なポリシーを付与します。これには「sts:AssumeRole」インターフェース権限を含める必要があります。 3. 会社Bのサブアカウントがロールを使用してコンソールにログインします。
会社BのサブアカウントDevBがコンソールにログインし、コンソールのアバターのドロップダウンメニューで「ロール切り替え」を選択し、ロール切り替えページに進みます。
会社Aのメインアカウント「12345」とロール名「DevOpsRole」を入力し、確定後、会社A(ownerUinが12345)のDevOpsRoleロールに切り替わります。
同様に、他のロールに切り替える必要がある場合、コンソールのアバターのドロップダウンメニューで「ロール切り替え」を選択し、ロール切り替えページで他のロールに切り替えることができます。
コンソールでロール切り替えログイン後、元のサブユーザーに戻る場合、コンソールのアバターのドロップダウンメニューで「サブユーザーに戻る」を選択すると、ロールを終了し元のサブユーザーに戻ります。
注意:
サブアカウントは権限付与されたロールのみ切り替え可能であり、かつロール担い手がクラウドアカウントである場合に限ります。その他の権限付与されていないロールは切り替えできません。
1. ロールを作成し、ロール担い手を会社Bの企業アカウントCompanyExampleBに設定します。
2. CreateRoleインターフェースを呼び出して、ロール名(roleName)をDevOpsRoleとして作成し、当該ロールに会社Aの広州リージョンにあるすべてのCVMリソースを操作可能な権限を付与します。
1. サブアカウントDevBにCompanyExampleAのDevOpsRoleロールを引き受ける権限を付与します。
2. AssumeRoleインターフェースを呼び出し、ロールDevOpsRoleの一時的な証明書を申請します。入力パラメータは以下の通りです: 説明:
会社B(CompanyExampleB)が会社A(CompanyExampleA)のリソースを直接操作したい場合、ロールの一時的な証明書を申請することで操作を行うことも可能です。
roleArn=qcs::cam::uin/12345:roleName/DevOpsRole,
roleSessionName=DevBAssumeTheRole,
durationSeconds=7200
もしインターフェースの実行が成功した場合、返却結果は以下の通りとなります:
{
"credentials": {
"sessionToken": "5e776c4216ff4d31a7c74fe194a978a3ff2a42864",
"tmpSecretId": "AKI***PCl",
"tmpSecretKey": "Vpx***MqD"
},
"expiredTime": 1506433269,
"expiration": "2018-09-26T13:41:09Z"
}
3. 有効期間内に、実際のニーズに基づき、DevBは会社Aに対して権限の範囲内で操作を実行します。
例えば、APIを通じてCVMリストを閲覧する場合、DescribeInstancesインターフェースを呼び出す際に、APIキーSecretIdとSecretKeyの値をtmpSecretIdとtmpSecretKeyの値に置換します。同時に、共通パラメータのTokenをsessionTokenの値に設定します。 注意:
会社Aが会社Bへの権限付与を終了したい場合、ロールDevOpsRoleを削除します。