ステップ 6: IAM ロールを割り当てる起動制約を追加する - Service Catalog

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ステップ 6: IAM ロールを割り当てる起動制約を追加する

起動制約は、エンドユーザーが製品を起動するときにがService Catalog が引き受ける IAM ロールを指定します。

このステップでは、Service Catalog が製品のAWS CloudFormationテンプレートの一部である IAM リソースをが使用できるよう、Linux Desktop 製品に起動制約を追加します。

起動の制約として製品に割り当てる IAM ロールには、次のアクセス権限が必要です。

  1. AWS CloudFormation

  2. 製品用の AWS CloudFormation テンプレートのサービス。

  3. サービスが所有する Amazon S3 バケットのAWS CloudFormationテンプレートへの読み取りアクセス権。

この起動制約により、エンドユーザーは製品を起動し、起動後にそれをプロビジョニング済み製品として管理できるようになります。詳細については、「Service Catalog 起動制約」を参照してください。

起動制約がない場合、エンドユーザーが Linux Desktop 製品を使用するには、事前に追加の IAM アクセス権限をエンドユーザーに付与する必要があります。たとえば、ServiceCatalogEndUserAccessポリシーでは、Service Catalog のエンドユーザーコンソールビューにアクセスするために必要な最低限の IAM 権限が付与されます。

起動制約を使用すると、エンドユーザーの IAM 権限を最小限に抑えるという IAM のベストプラクティスに従うことができます。詳細については、IAM ユーザーガイドの「最小特権を認める」を参照してください。

起動の制約を追加するには
  1. IAM ユーザーガイドの 「JSON」タブの「新しいポリシーを作成する」の指示に従います。

  2. 次の JSON ポリシードキュメントを貼り付けます。

    • cloudformation-Service Catalog-AWS CloudFormation スタックの作成、読み取り、更新、削除、一覧表示、タグ付けを行うためのフルアクセス権限をService Catalog に付与します。

    • ec2— Service Catalog 製品の一部である Amazon Elastic Compute Cloud (Amazon EC2) リソースを一覧表示、読み取り、書き込み、プロビジョニング、タグ付けする権限をService Catalog に許可します。AWSデプロイするリソースによっては、この権限が変更される場合があります。

    • ec2-指定した IAMAWS ロールに指定した管理ポリシーを新規作成し、指定した IAM ロールに指定した管理ポリシーをアタッチします。

    • s3-Service Catalog が所有する Amazon S3 バケットへのアクセスを許可します。製品をデプロイするには、Service Catalog がプロビジョニングアーティファクトにアクセスする必要があります。

    • servicecatalog— Service Catalog の権限で、エンドユーザーに代わってリソースの一覧表示、読み取り、書き込み、タグ付け、起動を許可します。

    • sns— Service Catalog の権限で Amazon SNS トピックの一覧表示、読み取り、書き込み、および起動制約のタグ付けを許可します。

    注記

    デプロイする基盤であるリソースによっては、JSON ポリシーのサンプルである JSON ポリシーを変更する必要が生じることがあります。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloudformation:CreateStack", "cloudformation:DeleteStack", "cloudformation:DescribeStackEvents", "cloudformation:DescribeStacks", "cloudformation:GetTemplateSummary", "cloudformation:SetStackPolicy", "cloudformation:ValidateTemplate", "cloudformation:UpdateStack", "ec2:*", "servicecatalog:*", "sns:*" ], "Resource": "*" }, { "Effect":"Allow", "Action":[ "s3:GetObject" ], "Resource":"*", "Condition":{ "StringEquals":{ "s3:ExistingObjectTag/servicecatalog:provisioning":"true" } } } ] }
  3. [次へ]、[タグ] を選択します。

  4. [次へ]、 [確認] を選択します。

  5. ポリシーの確認」ページの「名前」に、次のように入力しますlinuxDesktopPolicy

  6. [Create policy] (ポリシーの作成) を選択します。

  7. ナビゲーションペインで [ロール] を選択します。次に、[ロールの作成] を選択して、次の操作を行います。

    1. [信頼できるエンティティの選択] で [AWSサービス] を選択し、[AWS他のサービスのユースケース] で [Service Catalog] を選択します。Service Catalog のユースケースを選択し、[次へ] を選択します。

    2. linuxDesktopPolicyポリシーを検索し、チェックボックスを選択します。

    3. [Role name](ロール名) に linuxDesktopLaunchRole を入力します。

    4. [Create role] (ロールの作成) を選択します。

  8. AWS Service Catalog コンソールを開きます (https://console.aws.amazon.com/servicecatalog)。

  9. [Engineering Tools] ポートフォリオを選択します。

  10. ポートフォリオの詳細ページで、「制約」タブを選択し、「制約の作成」を選択します。

  11. [製品]で、[Linux Desktop] を選択し、[制約タイプ]で、[起動] を選択します。

  12. [IAM ロールの選択] を選択します。次に [linuxDesktopLaunchロール] を選択し、[作成] を選択します。