スタックロールを作成し、それを使用して特定の権限でリソースをデプロイすることで、個々のユーザーに過剰な権限を付与せずに運用できます。
ユースケース
スタックロールとは、信頼されたエンティティとして Resource Orchestration Service (ROS) を指定した RAM ロールです。スタックに対してスタックロールを指定すると、ROS は現在のユーザーの権限を使用する代わりに、そのロールを引き受けてリソースをデプロイします。
たとえば、企業が従業員に複数のクラウドリソースを作成させたいものの、広範な権限は付与したくない場合があります。この場合、企業は必要な権限のみを持つスタックロールを作成できます。従業員はスタックを作成する際にこのスタックロールを選択し、ROS がそのロールを使用してリソースを作成します。このトピックでは、Alibaba Cloud アカウントがスタックロールを作成し、RAM ユーザーがそのロールを使用して VPC リソースを作成する例を説明します。
操作手順
ステップ 1: スタックロールの作成
-
Alibaba Cloud アカウントで Resource Access Management (RAM) コンソール にログインします。
-
左側のナビゲーションウィンドウで、 を選択します。
-
Roles ページで ロールの作成 をクリックします。
-
ロールの作成 ページで、[プリンシパルタイプ] に [クラウドサービス] を選択します。
-
[プリンシパル名] で [Resource Orchestration Service] を選択し、OK をクリックします。
-
表示されたダイアログボックスで [ロール名] を入力し、OK をクリックします。
ステップ 2: テンプレート権限ポリシーの取得
-
VPC リソースを作成するためのテンプレートを定義します。
リソーステンプレートの作成方法の詳細については、「リソースタイプの表示」をご参照ください。
ROSTemplateFormatVersion: '2015-09-01' Resources: Vpc: Type: ALIYUN::ECS::VPC Properties: CidrBlock: 192.168.0.0/24 VpcName: TestVpc -
権限ポリシーを取得します。
-
OpenAPI Explorer で GenerateTemplatePolicy API に移動します。
-
[TemplateBody] パラメーターにサンプル VPC テンプレートを入力します。
-
[呼び出しを開始] をクリックして、VPC リソースを作成するための権限ポリシーを取得します。
{ "Policy": { "Version": "1", "Statement": [ { "Action": [ "quotas:ListProductQuotas" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "vpc:AssociateVpcCidrBlock", "vpc:CreateVpc", "vpc:DeleteVpc", "vpc:DescribeVpcs", "vpc:ModifyVpcAttribute", "vpc:TagResources", "vpc:UnTagResources" ], "Resource": "*", "Effect": "Allow" } ] }, "RequestId": "607A8E4E-4423-5D2D-8392-E74C5DC42EC5" }
-
ステップ 3: カスタム権限ポリシーの作成
-
Alibaba Cloud アカウントで Resource Access Management (RAM) コンソール にログインします。
-
左側のナビゲーションウィンドウで、を選択します。
-
Policies ページで、ポリシーの作成 をクリックします。
-
ポリシーの作成 ページで、[JSON] タブをクリックします。
-
ポリシードキュメントを入力し、OK をクリックします。
内容を、「ステップ 2: テンプレート権限ポリシーの取得」で取得した権限ポリシーの
Policyセクションの内容に置き換えます。 -
ポリシーの [名前] と [備考] を入力します。
-
OK をクリックします。
ステップ 4: スタックロールへの権限の付与
-
左側のナビゲーションウィンドウで、 を選択します。
-
Roles ページで、「ステップ 1」で作成した RAM ロールを見つけ、[操作] 列の [権限の付与] をクリックします。
デフォルトでは、承認スコープは現在の Alibaba Cloud アカウントです。
-
権限の追加 パネルで、ポリシータイプとして カスタムポリシー を選択し、「ステップ 3: カスタム権限ポリシーの作成」で作成したポリシーの ポリシー を入力します。
ポリシー名の確認方法の詳細については、「ポリシー情報の表示」をご参照ください。
-
OK をクリックします。
ステップ 5: スタックロールを使用したスタックの作成
前提条件
開始する前に、Alibaba Cloud アカウントを使用して RAM ユーザーを作成し、そのユーザーに AliyunROSFullAccess 権限を付与します。詳細については、「RAM ユーザーの作成」および「RAM ユーザーへの権限の付与」をご参照ください。
操作手順
-
RAM ユーザーとして Resource Orchestration Service (ROS) コンソール にログインします。
-
左側メニューで、スタック をクリックします。
-
上部のナビゲーションバーで、スタックを作成するリージョンを選択します。
-
スタック ページで、スタックの作成 をクリックします。テンプレートの指定 セクションで、既存テンプレートの使用 をクリックします。
説明-
テンプレートの作成 または Composer を選択すると、対応するページにリダイレクトされます。
-
-
[テンプレートの選択] ページでテンプレートを指定し、[次へ] をクリックします。
VPC リソースを作成するためのテンプレートを入力します。テンプレートの指定方法の詳細については、「テンプレートの設定」をご参照ください。
-
設定パラメーター ページで、スタック名 を入力し、テンプレートパラメーターの設定 を設定します。
説明必要なパラメーターはテンプレートによって異なります。プロンプトに従ってパラメーター値を入力してください。
-
[スタックの構成] セクションで、[RAM ロール] を「ステップ 1: スタックロールの作成」で作成したロールの名前に設定します。
その他のパラメーターの設定方法の詳細については、「スタックの作成」をご参照ください。
-
[Compliance Precheck] ページで、コンプライアンスチェックを完了し、Next をクリックします。
説明コンプライアンス事前チェック機能は、特定のリソースでのみ利用できます。詳細については、「コンプライアンス事前チェック」をご参照ください。
-
[Detection Rules] セクションで、検出ルールを追加してください。
ROS テンプレートで定義されたクラウド リソースに基づいて検出ルールを選択してください。
-
[Start Check] をクリックします。
リソースが [Non-compliant] であることが判明した場合は、[Remediation Plan] をクリックし、[Remediation Plan] に基づいてクラウド リソースの設定または ROS テンプレートの内容を修正して、リソースのコンプライアンスを確保できます。
-
-
チェックと確認 ページで、作成 をクリックします。
スタックが作成されると、ステータス 列に 作成成功 と表示されます。