5단계: 시작 역할 생성 - AWS Service Catalog

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

5단계: 시작 역할 생성

이 단계에서는 최종 사용자가 Terraform 제품을 시작할 때 Terraform 프로비저닝 엔진이 맡을 AWS Service Catalog 수 있는 권한을 지정하는 IAM 역할 (시작 역할) 을 생성합니다. HashiCorp

나중에 심플 Amazon S3 버킷 Terraform 제품에 시작 제약으로 할당하는 IAM 역할(시작 역할)에는 다음과 같은 권한이 있어야 합니다.

  • Terraform 제품의 기본 AWS 리소스에 대한 액세스 권한. 이 자습서에는 s3:CreateBucket*, s3:DeleteBucket*, s3:Get*, s3:List*s3:PutBucketTagging Amazon S3 작업에 대한 액세스가 포함됩니다.

  • AWS Service Catalog 소유의 Amazon S3 버킷에 있는 Amazon S3 템플릿에 대한 읽기 액세스

  • CreateGroup, ListGroupResources, DeleteGroupTag 리소스 그룹 작업에 대한 액세스 이러한 작업을 통해 AWS Service Catalog는 리소스 그룹과 태그를 관리할 수 있습니다.

AWS Service Catalog 관리자 계정에 시작 역할을 만들려면
  1. AWS Service Catalog 관리자 계정에 로그인한 상태에서 IAM 사용 설명서JSON 탭에서 새 정책 생성에 대한 지침을 따르세요.

  2. 심플 Amazon S3 버킷 Terraform 제품에 대한 정책을 생성합니다. 이 정책은 시작 역할을 생성하기 전에 생성해야 하며, 다음과 같은 권한으로 구성됩니다.

    • s3— Amazon S3 제품을 나열하고, 읽고, 쓰고, 프로비저닝하고, 태그를 지정할 수 있는 모든 권한을 AWS Service Catalog에 허용합니다.

    • s3— AWS Service Catalog가 소유한 Amazon S3 버킷에 액세스할 수 있도록 허용합니다. 제품을 배포하려면 AWS Service Catalog는 프로비저닝 아티팩트에 대한 액세스 권한이 필요합니다.

    • resourcegroups— AWS Service Catalog가 AWS Resource Groups을 생성하고, 나열하고, 삭제하고 태그를 지정할 수 있도록 허용합니다.

    • tag— AWS Service Catalog 태그 지정 권한을 허용합니다.

    참고

    배포하려는 기본 리소스에 따라 예제 JSON 정책을 수정해야 할 수 있습니다.

    다음 JSON 정책 문서를 붙여 넣습니다.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "s3:GetObject", "Resource": "*", "Condition": { "StringEquals": { "s3:ExistingObjectTag/servicecatalog:provisioning": "true" } } }, { "Action": [ "s3:CreateBucket*", "s3:DeleteBucket*", "s3:Get*", "s3:List*", "s3:PutBucketTagging" ], "Resource": "arn:aws:s3:::*", "Effect": "Allow" }, { "Action": [ "resource-groups:CreateGroup", "resource-groups:ListGroupResources", "resource-groups:DeleteGroup", "resource-groups:Tag" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "tag:GetResources", "tag:GetTagKeys", "tag:GetTagValues", "tag:TagResources", "tag:UntagResources" ], "Resource": "*", "Effect": "Allow" } ] }
    1. 다음, 태그를 선택합니다.

    2. 다음, 검토를 선택합니다.

    3. 정책 검토 페이지에서 이름 S3ResourceCreationAndArtifactAccessPolicy을 입력합니다.

    4. 정책 생성을 선택합니다.

  3. 탐색 창에서 역할을 선택한 후 역할 생성을 선택합니다.

  4. 신뢰할 수 있는 엔터티 선택에서 사용자 지정 신뢰 정책을 선택한 후 다음 JSON 정책을 입력합니다.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "GivePermissionsToServiceCatalog", "Effect": "Allow", "Principal": { "Service": "servicecatalog.amazonaws.com" }, "Action": "sts:AssumeRole" }, { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::account_id:root" }, "Action": "sts:AssumeRole", "Condition": { "StringLike": { "aws:PrincipalArn": [ "arn:aws:iam::accounti_id:role/TerraformEngine/TerraformExecutionRole*", "arn:aws:iam::accounti_id:role/TerraformEngine/ServiceCatalogExternalParameterParserRole*", "arn:aws:iam::accounti_id:role/TerraformEngine/ServiceCatalogTerraformOSParameterParserRole*" ] } } } ] }
  5. 다음을 선택합니다.

  6. 정책 목록에서 만든 S3ResourceCreationAndArtifactAccessPolicy을 선택합니다.

  7. 다음을 선택합니다.

  8. 역할 이름SCLaunch-S3product를 입력합니다.

    중요

    반드시 시작 역할 이름이 “SCLaunch”로 시작해야 하고 그 뒤에 원하는 역할 이름이 와야 합니다.

  9. Create role(역할 생성)을 선택합니다.

    중요

    AWS Service Catalog 관리자 계정에서 시작 역할을 생성한 후에는 AWS Service Catalog 최종 사용자 계정에도 동일한 시작 역할을 생성해야 합니다. 최종 사용자 계정의 역할은 이름이 같아야 하며 관리자 계정의 역할과 동일한 정책을 포함해야 합니다.

AWS Service Catalog 최종 사용자 계정에서 시작 역할을 만들려면
  1. 최종 사용자 계정에 관리자로 로그인한 다음 IAM 사용 설명서JSON 탭에서 정책 생성에 대한 지침을 따르세요.

  2. 위의 AWS Service Catalog 관리자 계정에 시작 역할을 만들려면에서 2~10단계를 반복합니다.

참고

AWS Service Catalog 최종 사용자 계정에서 시작 역할을 만들 때는 사용자 지정 신뢰 정책에서 동일한 관리자 AccountId를 사용해야 합니다.

이제 관리자와 최종 사용자 계정 모두에서 시작 역할을 만들었으므로 제품에 시작 제약을 추가할 수 있습니다.