IAM엔드포인트 또는 세그먼트를 내보내는 역할 - Amazon Pinpoint

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

IAM엔드포인트 또는 세그먼트를 내보내는 역할

내보내기 작업을 생성하여 엔드포인트 목록을 얻을 수 있습니다. 내보내기 작업을 생성할 경우 프로젝트 ID를 지정해야 하며, 선택에 따라 세그먼트 ID를 지정할 수 있습니다. 이렇게 하면 Amazon Pinpoint는 프로젝트 또는 세그먼트와 연결된 엔드포인트 목록을 Amazon Simple Storage Service(S3) 버킷으로 내보내게 됩니다. 결과 파일에는 채널, 주소, 옵트인/옵트아웃 상태, 생성 날짜, 엔드포인트 ID와 같은 엔드포인트 및 해당 속성의 JSON 형식 목록이 포함됩니다.

내보내기 작업을 생성하려면 Amazon Pinpoint가 Amazon S3 버킷에 쓸 수 있도록 허용하는 IAM 역할을 구성해야 합니다. 역할 구성 프로세스는 두 단계로 구성됩니다.

  1. 개체 (이 경우에는 Amazon Pinpoint) 가 특정 Amazon S3 버킷에 쓸 수 있도록 허용하는 IAM 정책을 생성합니다.

  2. 역할을 생성하고 정책을 IAM 역할에 연결합니다.

이 주제에는 이러한 두 단계를 완료하는 절차가 포함되어 있습니다. 이 절차에서는 이미 Amazon S3 버킷을 생성했고, 내보낸 세그먼트를 저장할 폴더가 그 버킷 안에 있다고 가정합니다. 버킷 생성에 대한 내용을 알아보려면 Amazon Simple Storage Service 사용 설명서버킷 생성을 참조하세요.

또한 이 절차에서는 AWS Command Line Interface (AWS CLI)를 이미 설치하여 구성했다고 가정합니다. 설정에 대한 자세한 내용은 AWS Command Line Interface 사용 설명서의 AWS CLI설치를 참조하십시오. AWS CLI

1단계: IAM 정책 생성

IAM정책은 ID 또는 리소스와 같은 엔티티에 대한 권한을 정의합니다. Amazon Pinpoint 엔드포인트를 내보내는 역할을 생성하려면 특정 Amazon S3 버킷 내의 특정 폴더로 쓰기를 허용하는 정책을 생성해야 합니다. 아래의 정책 예제는 최소 권한, 즉 단일 태스크를 수행하는 데 필요한 권한만 부여하는 보안 사례를 따릅니다.

IAM 정책을 생성하려면
  1. 텍스트 편집기에서 새로운 파일을 생성합니다. 다음 코드를 파일에 붙여넣습니다.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowUserToSeeBucketListInTheConsole", "Action": [ "s3:ListAllMyBuckets", "s3:GetBucketLocation" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::*" ] }, { "Sid": "AllowRootAndHomeListingOfBucket", "Action": [ "s3:ListBucket" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::example-bucket" ], "Condition": { "StringEquals": { "s3:delimiter": [ "/" ], "s3:prefix": [ "", "Exports/" ] } } }, { "Sid": "AllowListingOfUserFolder", "Action": [ "s3:ListBucket" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::example-bucket" ], "Condition": { "StringLike": { "s3:prefix": [ "Exports/*" ] } } }, { "Sid": "AllowAllS3ActionsInUserFolder", "Action": [ "s3:*" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::example-bucket/Exports/*" ] } ] }

    위 코드에서 다음의 모든 인스턴스를 교체하십시오.example-bucket 세그먼트 정보를 내보내려는 폴더가 들어 있는 Amazon S3 버킷의 이름을 입력합니다. 또한 모든 인스턴스를 교체하십시오.Exports 폴더 자체의 이름으로

    작업을 마치면 파일 이름을 s3policy.json(으)로 저장합니다.

  2. AWS CLI를 사용하여 s3policy.json 파일이 있는 디렉토리로 이동합니다. 그리고 다음 명령을 사용하여 정책을 생성합니다.

    aws iam create-policy --policy-name s3ExportPolicy --policy-document file://s3policy.json

    정책이 무사히 생성되면 다음과 비슷한 출력이 표시됩니다.

    { "Policy": { "CreateDate": "2018-04-11T18:44:34.805Z", "IsAttachable": true, "DefaultVersionId": "v1", "AttachmentCount": 0, "PolicyId": "ANPAJ2YJQRJCG3EXAMPLE", "UpdateDate": "2018-04-11T18:44:34.805Z", "Arn": "arn:aws:iam::123456789012:policy/s3ExportPolicy", "PolicyName": "s3ExportPolicy", "Path": "/" } }

    정책의 Amazon 리소스 이름 (ARN) 을 복사합니다 (arn:aws:iam::123456789012:policy/s3ExportPolicy위 예제 참조). 다음 섹션에서는 역할을 생성할 ARN 때 이 정보를 제공해야 합니다.

    참고

    계정에 작업을 수행할 권한이 없다는 메시지가 표시되면 새 정책 및 역할을 만들 수 있는 IAM 정책을 사용자에게 연결해야 합니다. CreatePolicy 자세한 내용은 사용 IAM설명서의 IAMID 권한 추가 및 제거를 참조하십시오.

2단계: IAM 역할 생성

IAM정책을 만들었으니 이제 역할을 만들고 정책을 추가할 수 있습니다. 각 IAM 역할에는 역할을 맡을 수 있는 엔티티를 지정하는 일련의 규칙인 신뢰 정책이 포함되어 있습니다. 이 섹션에서는 Amazon Pinpoint에 역할을 수임하도록 허용하는 신뢰 정책을 생성합니다. 다음에는 역할 자체를 생성한 다음 이전 단계에서 만든 정책을 연결합니다.

IAM 역할을 만들려면
  1. 텍스트 편집기에서 새로운 파일을 생성합니다. 다음 코드를 파일에 붙여넣습니다.

    { "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":"pinpoint.amazonaws.com" }, "Action":"sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" }, "ArnLike": { "aws:SourceArn": "arn:aws:mobiletargeting:region:accountId:apps/applicationId" } } } ] }

    파일을 trustpolicy.json(으)로 저장합니다.

  2. AWS CLI를 사용하여 trustpolicy.json 파일이 있는 디렉토리로 이동합니다. 다음 명령을 입력하여 새 역할을 생성합니다.

    aws iam create-role --role-name s3ExportRole --assume-role-policy-document file://trustpolicy.json
  3. 명령줄에서 다음 명령을 실행하여 이전 단계에서 생성한 정책을 방금 생성한 역할에 연결합니다.

    aws iam attach-role-policy --policy-arn arn:aws:iam::123456789012:policy/s3ExportPolicy --role-name s3ExportRole

    이전 명령에서 다음을 대체합니다.arn:aws:iam::123456789012:policy/s3ExportPolicy 이전 섹션에서 만든 정책을 사용합니다. ARN