のアイデンティティベースのポリシーの例 AWS Service Catalog - AWS Service Catalog

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

のアイデンティティベースのポリシーの例 AWS Service Catalog

エンドユーザーのコンソールアクセス

AWSServiceCatalogEndUserFullAccess および AWSServiceCatalogEndUserReadOnlyAccess ポリシーにより、 AWS Service Catalog エンドユーザーコンソールビューへのアクセス権が付与されます。これらのポリシーのいずれかを持つユーザーが AWS Service Catalog で を選択すると AWS Management Console、エンドユーザーコンソールビューに、起動するアクセス許可を持つ製品が表示されます。

エンドユーザーがアクセス権を付与 AWS Service Catalog する製品を正常に起動できるようにするには、製品の AWS CloudFormation テンプレート内の基盤となる各 AWS リソースの使用を許可する追加の IAM アクセス許可をエンドユーザーに提供する必要があります。例えば、製品テンプレートに Amazon Relational Database Service (Amazon RDS) が含まれる場合、製品を起動する Amazon RDS アクセス許可をユーザーに付与する必要があります。

エンドユーザーが AWS リソースへの最小アクセス許可を適用しながら製品を起動できるようにする方法については、「」を参照してくださいAWS Service Catalog 制約の使用

AWSServiceCatalogEndUserReadOnlyAccess ポリシーを適用すると、ユーザーはエンドユーザーコンソールにアクセスできますが、製品を起動し、プロビジョニング済み製品を管理するために必要なアクセス権限は与えられません。これらのアクセス許可は、IAM を使用してエンドユーザーに直接付与できますが、エンドユーザーが AWS リソースに対して持つアクセスを制限する場合は、ポリシーを起動ロールにアタッチする必要があります。次に、 AWS Service Catalog を使用して、製品の起動制約に起動ロールを適用します。起動ロールの適用、起動ロールの制限、サンプルの起動ロールの詳細については、「AWS Service Catalog 起動の制限」を参照してください。

注記

AWS Service Catalog 管理者に IAM アクセス許可をユーザーに付与すると、代わりに管理者コンソールビューが表示されます。エンドユーザーが管理者コンソールビューにアクセス可能にする場合を除き、これらのアクセス権限をエンドユーザーに付与しないでください。

エンドユーザー向け製品アクセス

エンドユーザーがアクセスを許可する製品を使用する前に、製品の AWS CloudFormation テンプレート内の基盤となる各 AWS リソースの使用を許可する追加の IAM アクセス許可を提供する必要があります。例えば、製品テンプレートに Amazon Relational Database Service (Amazon RDS) が含まれる場合、製品を起動する Amazon RDS アクセス許可をユーザーに付与する必要があります。

AWSServiceCatalogEndUserReadOnlyAccess ポリシーを適用すると、ユーザーはエンドユーザーコンソールビューにアクセスできますが、製品を起動し、プロビジョニング済み製品を管理するために必要なアクセス権限は与えられません。これらのアクセス許可は IAM のエンドユーザーに直接付与できますが、エンドユーザーが AWS リソースに対して持つアクセスを制限する場合は、ポリシーを起動ロールにアタッチする必要があります。次に、 AWS Service Catalog を使用して、製品の起動制約に起動ロールを適用します。起動ロールの適用、起動ロールの制限、サンプルの起動ロールの詳細については、「AWS Service Catalog 起動の制限」を参照してください。

プロビジョニング済み製品を管理するためのポリシーの例

カスタムポリシーを作成して所属組織のセキュリティ要件を満たすことができます。以下では、ユーザーレベル、ロールレベル、アカウントレベルをサポートするアクションごとにアクセスレベルをカスタマイズする方法の例を示します。各自のロールまたは各自がログインしているアカウントで作成したプロビジョニング済み製品を表示、更新、終了、管理するためのアクセス権を付与できます。ユーザー自身が作成したもののみを操作することも、他のユーザーが作成したものも含めて操作することもできます。このアクセス権は階層状に順次適用されます。アカウントレベルのアクセスを付与すると、ロールレベルとユーザーレベルのアクセスも付与されます。ロールレベルのアクセスを付与すると、ユーザーレベルのアクセスも付与されますが、アカウントレベルのアクセスは付与されません。これらのアクセス権は、Condition ブロックを accountLevelroleLevel、または userLevel として使用して、ポリシー JSON で指定できます。

これらの例は、 AWS Service Catalog API 書き込みオペレーションのアクセスレベル、 UpdateProvisionedProductおよび TerminateProvisionedProduct、読み取りオペレーションDescribeRecord、、ScanProvisionedProductsおよび にも適用されますListRecordHistoryScanProvisionedProducts および ListRecordHistory API オペレーションは AccessLevelFilterKey という入力を使用し、このキーの値は上で説明した Condition ブロックレベルに対応します (accountLevel は「アカウント」の AccessLevelFilterKey 値、roleLevel は「ロール」、userLevel は「ユーザー」に相当します)。詳細については、「Service Catalog デベロッパーガイド」を参照してください。

プロビジョニング済み製品に対する完全な管理アクセス

次のポリシーでは、アカウントレベルで、カタログ内のプロビジョニング済み製品およびレコードに対する読み取りと書き込みのフルアクセスを許可します。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "servicecatalog:*" ], "Resource":"*", "Condition": { "StringEquals": { "servicecatalog:accountLevel": "self" } } } ] }

このポリシーは、次のポリシーと機能的に同じものです。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "servicecatalog:*" ], "Resource":"*" } ] }

のポリシーでConditionブロックを指定しない場合 AWS Service Catalog 、"servicecatalog:accountLevel"アクセスの指定と同じものとして扱われます。accountLevel のアクセスには、roleLeveluserLevel のアクセスが含まれることに注意してください。

プロビジョニング済み製品へのエンドユーザーアクセス

次のポリシーでは、読み取りと書き込みのオペレーションへのアクセスを、現在のユーザーが作成したプロビジョニング済み製品または関連するレコードにのみ制限します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "servicecatalog:DescribeProduct", "servicecatalog:DescribeProductView", "servicecatalog:DescribeProvisioningParameters", "servicecatalog:DescribeRecord", "servicecatalog:ListLaunchPaths", "servicecatalog:ListRecordHistory", "servicecatalog:ProvisionProduct", "servicecatalog:ScanProvisionedProducts", "servicecatalog:SearchProducts", "servicecatalog:TerminateProvisionedProduct", "servicecatalog:UpdateProvisionedProduct" ], "Resource": "*", "Condition": { "StringEquals": { "servicecatalog:userLevel": "self" } } } ] }

プロビジョニング済み製品に対する部分的な管理アクセス

次の 2 つのポリシーでは、両方が同じユーザーに適用された場合、読み取り専用のフルアクセスと書き込みの制限付きアクセスを提供することで、一種の「部分的な管理アクセス」を許可します。つまり、ユーザーはカタログのアカウント内にあるプロビジョニング済み製品または関連するレコードを表示することはできますが、そのユーザーが所有しないプロビジョニング済み製品やレコードに対しては一切の操作を実行できません。

最初のポリシーでは、ユーザーに許可されるアクセスは、現在のユーザーが作成したプロビジョニング済み製品に対する書き込みオペレーションのみとなり、他のユーザーが作成したプロビジョニング済み製品は対象外になります。2 番目のポリシーでは、すべて (ユーザー、ロール、またはアカウント) が作成したプロビジョニング済み製品に対する読み込みオペレーションへのフルアクセスを追加します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "servicecatalog:DescribeProduct", "servicecatalog:DescribeProductView", "servicecatalog:DescribeProvisioningParameters", "servicecatalog:ListLaunchPaths", "servicecatalog:ProvisionProduct", "servicecatalog:SearchProducts", "servicecatalog:TerminateProvisionedProduct", "servicecatalog:UpdateProvisionedProduct" ], "Resource": "*", "Condition": { "StringEquals": { "servicecatalog:userLevel": "self" } } } ] }
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "servicecatalog:DescribeRecord", "servicecatalog:ListRecordHistory", "servicecatalog:ScanProvisionedProducts" ], "Resource": "*", "Condition": { "StringEquals": { "servicecatalog:accountLevel": "self" } } } ] }