AWS Marketplace API 참조가 재구성되었습니다. 지원되는 API 작업에 대한 자세한 내용은 AWS Marketplace API 참조를 참조하세요.
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS Marketplace카탈로그 API에 대한 액세스 제어
AWS Marketplace Catalog API를 사용하여 에서 판매자 제품을AWS Marketplace 관리하거나 프라이빗 마켓플레이스에서 경험을 관리할 수 있습니다. 그러나 먼저 사용자 또는 역할이 호출하려는 API 기능에 액세스할 수 있는지 확인합니다.
AWS Identity and Access Management(IAM)를 사용하여 사용자 및 역할을 생성하고 최종 사용자에게 제한된 권한을 부여하는 정책을 할당합니다. 정책은 사용자 또는 역할이를 통해 리소스에 대해 수행할 수 있는 작업을 정의합니다AWS Marketplace Catalog API.
예를 들어 엔지니어링, 마케팅 및 요금과 같은 역할을 정의할 수 있습니다. 그런 다음 조직의 사용자를 엔지니어링 역할에 추가할 수 있습니다. 해당 역할에서 새 버전의 판매자 제품을 게시하기 위한 변경 요청을 시작할 수 있는 권한이 부여될 수 있습니다. 그러나 엔지니어링 역할은 사용자가 모든 변경 세트를 나열하도록 허용하지 않습니다.
참고
제품을 판매하려면 AWS Marketplace를 판매자 계정으로 설정해야 AWS 계정합니다. AWS Marketplace판매자가 되는 방법에 대한 자세한 내용은 AWS Marketplace판매자 안내서의 판매자로 시작하기를 참조하세요.
AWS관리형 정책을 사용하거나 자체 IAM 정책을 생성하여 AWS관리형 정책에서 사용할 수 있는 것보다 더 세부적으로 제어할 수 있습니다. 이러한 접근 방식에 대한 자세한 내용은 다음 주제를 참조하세요.
주제
AWS관리형 정책을 사용하여 작업 허용
에서 관리하는 정책을 사용하여 사용자 또는 역할에 권한을 AWS부여할 수 있습니다.
판매하는 제품을 사용하려면 다른 권한 AWS Marketplace Catalog API외에도에 대한 전체 액세스 권한이 있는 AWSMarketplaceSellerFullAccess IAM 관리형 정책을 사용할 AWS Marketplace수 있습니다. AWSMarketplaceSellerProductsReadOnly 정책을 사용하여 Catalog API에 대한 읽기 전용 액세스 권한을 부여할 수 있습니다. 자세한 내용은 판매자 안내서의 판매자에 대한 액세스 제어AWS Marketplace Management Portal, AWS Marketplace판매자에 대한 정책 및 권한, AWS Marketplace판매자에 대한 AWS 관리형 정책을 참조하세요. AWS Marketplace
프라이빗 마켓플레이스를 관리하려면 계정 또는AWS 조직의 프라이빗 마켓플레이스를 생성하고 편집할 수 있는 전체 액세스 권한이 있는 AWSPrivateMarketplaceAdminFullAccess IAM 관리형 정책을 사용할 수 있습니다. 자세한 내용은 구매자 안내서의 AWS Marketplace구독에 대한 액세스 제어, 프라이빗 마켓플레이스 관리자 생성 및 AWS Marketplace구매자를 위한 AWS 관리형 정책을 참조하세요. AWS Marketplace
또는 자체 IAM 정책을 생성하여 AWS관리형 정책에서 사용할 수 있는 것보다 더 세부적으로 제어할 수 있습니다. 다음 주제를 사용하여 자체 IAM 정책을 생성합니다.
모든 리소스에 대한 작업 허용
리소스는 작업이 수행할 수 있는 객체입니다. 모든 리소스 유형을 모든 작업에서 지정할 수 있는 것은 아닙니다. 일부 리소스 유형은 특정 작업에서만 유효합니다. 자세한 내용은 서비스 승인 참조의 AWS Marketplace카탈로그에 사용되는 작업, 리소스 및 조건 키를 참조하세요.
카탈로그 API에는 두 가지 리소스 유형이 있습니다.
-
개체 - 개체는 의 판매자 제품AWS Marketplace 또는 프라이빗 마켓플레이스에서의 경험입니다.
-
ChangeSet - Catalog API를 사용하여 개체를 변경할 때마다 변경 세트가 반환됩니다. 변경 세트는 요청된 변경 사항과 상태를 설명합니다. 상태가
PREPARING상태인 경우 변경 세트를 취소할 수 있습니다.
사용자 또는 역할에의 모든 엔터티를 변경할 수 있는 권한을 허용하려면 다음 IAM 정책을 추가할 AWS 계정수 있습니다. 이 정책을 사용하면 사용자 또는 역할이 모든 리소스()에서 StartChangeSet 작업을 사용할 수 있습니다"*".
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:StartChangeSet" ], "Resource": "*" } ] }
카탈로그 API에 사용할 수 있는 모든 작업에 대한 자세한 내용은 서비스 권한 부여 참조의 AWS Marketplace카탈로그에 사용되는 작업, 리소스 및 조건 키를 참조하세요.
특정 리소스에 대한 작업 허용
참고
StartChangeSet 작업에 대한 리소스 수준 권한 및 조건 컨텍스트 키는 카탈로그 API와 함께 사용되는 경우에만 지원됩니다. 와 함께 사용할 때는 지원되지 않습니다AWS Marketplace Management Portal
모든 리소스에 대한 변경을 허용하는 대신 리소스 수준 권한을 사용하여 특정 리소스에 대한 변경을 허용할 수 있습니다.
예를 들어 모든 판매자 제품 AWS 계정대신의 특정 판매자 제품에 대한 변경을 허용할 수 있습니다. 이렇게 하려면 IAM 정책의에서 판매자 제품의 Amazon 리소스 이름(ARN)Resource을 지정합니다.
참고
새 변경 세트를 생성하는 작업을 통해 세분화된 리소스 수준 권한을 지정하려면 리소스 목록에 ChangeSet ARN도 포함해야 합니다. ChangeSet ARN에는 그림과 같이 생성된 새 변경 세트 ID와 일치하도록 와일드카드(/*)가 포함되어야 합니다.
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:StartChangeSet" ], "Resource": [ "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example1-abcd-1234-5ef6-7890abcdef12", "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/*" ] } ] }
또 다른 예로, 모든 경험 대신 프라이빗 마켓플레이스의 특정 경험에 대한 변경을 허용할 수 있습니다. 이렇게 하려면 IAM 정책의에서 경험Resource의 ARN을 지정합니다.
참고
새 변경 세트를 생성하는 작업을 통해 세분화된 리소스 수준 권한을 지정하려면 리소스 목록에 ChangeSet ARN도 포함해야 합니다. ChangeSet ARN에는 그림과 같이 생성된 새 변경 세트 ID와 일치하도록 와일드카드(/*)가 포함되어야 합니다.
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:StartChangeSet" ], "Resource": [ "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/Experience/exp-example12345", "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/*" ] } ] }
특정 ChangeType 조건 키를 사용하여 작업 허용
참고
StartChangeSet 작업에 대한 리소스 수준 권한 및 조건 컨텍스트 키는 카탈로그 API와 함께 사용되는 경우에만 지원됩니다. 와 함께 사용할 때는 지원되지 않습니다AWS Marketplace Management Portal
카탈로그 API 작업StartChangeSet에는 여러 가지 변경 유형이 있습니다. 특정 변경 유형에 대한 액세스만 허용할 수 있습니다.
예를 들어 제품 제목과 같은 판매자 제품의 메타데이터에 대한 변경만 허용하고 새 제품 버전 추가는 허용하지 않을 수 있습니다. 이 예제에서 변경 유형을 UpdateInformation 사용하면 제목을 포함하여 판매자 제품의 메타데이터를 변경할 수 있습니다. 다양한 변경 유형에 대한 자세한 내용은 AWS Marketplace Catalog API 참조의 판매자 제품 작업 및 프라이빗 마켓플레이스 작업을 참조하세요.
작업을 하나 이상의 변경 유형으로 제한하려면 조건 키ChangeType에를 지정합니다. 다음 예제 IAM 정책에서 조건 연산자는가와 ChangeType 일치하는 경우에만 작업이 허용되도록 StringEquals 지정합니다UpdateInformation. 조건 키에 대한 자세한 내용은 AWS Identity and Access Management 사용 설명서의 조건 연산자를 참조하세요.
참고
새 변경 세트를 생성하는 작업을 통해 세분화된 리소스 수준 권한을 지정하려면 리소스 목록에 ChangeSet ARN도 포함해야 합니다. ChangeSet ARN에는 그림과 같이 생성된 새 변경 세트 ID와 일치하도록 와일드카드(/*)가 포함되어야 합니다.
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:StartChangeSet" ], "Resource": [ "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example1-abcd-1234-5ef6-7890abcdef12", "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/*" ], "Condition": { "StringEquals": { "catalog:ChangeType": "UpdateInformation" } } } ] }
특정 aws:ResourceTag 조건 키를 사용하여 작업 허용
참고
StartChangeSet 작업에 대한 리소스 수준 권한 및 조건 컨텍스트 키는 카탈로그 API와 함께 사용되는 경우에만 지원됩니다. 와 함께 사용할 때는 지원되지 않습니다AWS Marketplace Management Portal
정책을 계속 업데이트하고 엔터티 ARNs. 리소스 태그 지정을 사용하여이 작업을 수행할 수 있습니다. 리소스에 태그를 추가하면 태그를 기반으로 해당 리소스에 대한 액세스를 제어할 수 있습니다. 예를 들어 각 판매자 제품에 대해 개별 ARNs을 지정하지 않고 판매자 제품 그룹을 설명하는 것을 허용할 수 있습니다.
예를 들어 다음 IAM 정책은 태그 키가 product-team 이고 태그 값이 인 모든 엔터티 리소스("*")에 대한 DescribeEntity 작업을 허용합니다team-xyz.
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:DescribeEntity" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/product-team": "team-xyz" } } } ] }
특정 태그로 생성된 변경 세트를 설명하고 취소하도록 허용할 수도 있습니다.
예를 들어 다음 IAM 정책은 태그 키가 DescribeChangeSet 이고 태그 값이 인 변경 세트 리소스("*")에 대해 product-team 및 CancelChangeSet 작업을 허용합니다team-xyz.
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:DescribeChangeSet", "aws-marketplace:CancelChangeSet" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/product-team": "team-xyz" } } } ] }
또한 엔터티에 특정 태그가 있는 경우에만 엔터티에 대한 시작 변경 세트를 허용할 수 있습니다. 예를 들어 특정 태그가 있는 판매자 제품에 대한 변경을 허용할 수 있습니다.
예를 들어 다음 IAM 정책은 태그 키가 product-team 이고 태그 값이 인 모든 엔터티 리소스("*")에 대해 StartChangeSet 작업을 허용합니다team-xyz. 또한 변경 세트를 생성할 때 동일한 태그 키와 값으로 태그가 지정되도록 TagResource 작업이 필요합니다.
참고
StartChangeSet 작업을 허용하는 정책에 특정 태그와 일치하는 조건이 포함된 경우 동일한 정책에도 TagResource 작업이 포함되어야 합니다. 이는 정책 조건이 개체의 태그와 변경 요청으로 인해 새로 생성된 변경 세트의 태그 모두와 일치해야 하기 때문입니다. 따라서 사용자 또는 역할에 새로 생성된 변경 세트에 태그를 지정할 수 있는 권한도 있어야 합니다. 변경 세트를 시작하고 변경 세트에 태그를 지정하는 예제는 섹션을 참조하세요예: 개체에 태그 추가 및 생성 중 세트 변경.
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:StartChangeSet", "aws-marketplace:TagResource" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/product-team": "team-xyz" } } } ] }
사용자 지정 IAM 역할 생성
재판매 권한 부여 ChangeType 또는 CPPO ChangeType을 사용하려는 고객은 사용자 지정AWS Identity and Access Management(IAM) 역할을 생성해야 합니다. 이는 재판매 권한 부여 제품 수명 주기의 생성을 지원합니다.
사용자 지정 IAM 역할을 생성하려면
-
IAM 콘솔(https://console.aws.amazon.com/iam/
)에 로그인합니다. -
액세스 관리(Access management)에서 정책(Policies)을 선택합니다.
-
정책 생성을 선택합니다.
-
1단계: 권한 지정의 경우
-
정책 편집기에서 JSON 버튼을 선택한 다음 다음 정책을 추가합니다.
-
다음을 선택합니다.
-
-
2단계: 검토 및 생성의 경우
-
정책 세부 정보에 정책 이름
FullResaleAuthorizationAccess아래에를 입력하고 선택적 설명을 입력합니다. -
이 정책에 정의된 권한을 검토하세요.
-
태그 추가에서 태그를 추가합니다(선택 사항).
-
정책 생성을 선택합니다.
FullResaleAuthorizationAccess 정책을 생성했습니다.
-
-
액세스 관리에서 역할을 선택합니다.
-
역할 생성을 선택합니다.
-
1단계: 신뢰할 수 있는 엔터티 선택의 경우
-
신뢰할 수 있는 엔터티 유형(Trusted entity type)에서 사용자 지정 정책(Custom trust policy)을 선택합니다.
-
다음 사용자 지정 신뢰 정책을 복사하여 JSON 편집기에 붙여넣습니다.
-
다음을 선택합니다.
-
-
2단계: 권한 추가의 경우
-
검색줄에
FullResaleAuthorizationAccess를 입력합니다. -
FullResaleAuthorizationAccess 권한 정책을 선택한 후 다음을 선택합니다.
-
-
3단계: 이름 지정, 검토 및 생성의 경우
-
역할 세부 정보에 역할 이름으로
FullResaleAuthorizationAccess를 입력하고 선택적 설명을 입력합니다. -
1단계: 신뢰할 수 있는 엔터티 선택에서 선택한 정책 이름이 역할에 연결되어 있는지 확인합니다.
-
2단계: 권한 추가에서 정책 이름을 검토합니다.
-
3단계: 태그 추가에서 태그를 추가합니다(선택 사항).
-
역할 생성을 선택합니다.
FullResaleAuthorizationAccess 역할을 생성했습니다.
리소스의 태그 관리
기존 엔터티 또는 변경 세트에서 태그를 추가, 나열 및 제거할 수 있습니다.
리소스에 태그 추가
개체에 태그를 추가하거나 세트를 변경하려면 TagResource API 작업을 사용합니다.
요청
POST /TagResource HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ResourceArn": "string", "Tags": [ { "Key": "string", "Value": "string" } ... ] }
요청 파라미터에는 다음이 포함됩니다.
-
카탈로그(문자열) - (필수) 이어야 합니다
AWSMarketplace. -
ResourceArn(문자열) - 변경 세트 또는 엔터티의 (필수) ARN입니다. 변경 세트는 Catalog API를 사용하여 수행한 변경 사항을 설명합니다. 엔터티는 의 판매자 제품AWS Marketplace이거나 프라이빗 마켓플레이스에서의 경험일 수 있습니다.
-
태그(객체 배열) - (필수) 각 태그 키와 값을 지정하는 객체 목록입니다. 허용되는 객체 수: 1~50개.
-
키(문자열) - (필수) 태그의 이름입니다.
-
정규식 패턴 -
^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$ -
문자 길이 - 1~128
-
-
값(문자열) - (필수) 태그의 값입니다.
-
정규식 패턴 -
^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$ -
문자 길이 - 0~256
-
-
응답
{}
리소스에서 태그 제거
개체 또는 변경 세트에서 태그 또는 태그 목록을 제거하려면 UntagResource API 작업을 사용합니다.
요청
POST /UntagResource HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ResourceArn": "string", "TagKeys": [ "string" ... ] }
요청 파라미터에는 다음이 포함됩니다.
-
카탈로그(문자열) - (필수) 이어야 합니다
AWSMarketplace. -
ResourceArn(문자열) - 변경 세트 또는 엔터티의 (필수) ARN입니다. 변경 세트는 Catalog API를 사용하여 수행한 변경 사항을 설명합니다. 엔터티는 의 판매자 제품AWS Marketplace이거나 프라이빗 마켓플레이스에서의 경험일 수 있습니다.
-
태그(객체 배열) - (필수) 제거할 태그의 키 이름 목록입니다. 허용되는 문자열 수: 0~256.
응답
{}
리소스의 모든 태그 나열
변경 세트 또는 개체에 추가되었지만 아직 제거되지 않은 모든 태그를 나열하려면 ListTagsForResource API 작업을 사용합니다.
요청
POST /ListTagsForResource HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ResourceArn": "string" }
요청 파라미터에는 다음이 포함됩니다.
-
카탈로그(문자열) - (필수) 이어야 합니다
AWSMarketplace. -
ResourceArn(문자열) - 변경 세트 또는 개체의 (필수) ARN입니다. 변경 세트는 Catalog API를 사용하여 수행한 변경 사항을 설명합니다. 엔터티는 의 판매자 제품AWS Marketplace이거나 프라이빗 마켓플레이스에서의 경험일 수 있습니다.
응답
{ "ResourceArn": "string", "Tags": [ { "Key": "string", "Value": "string" } ... ] }
리소스 변경 요청 시 태그 관리
개체 또는 변경 세트가 생성될 때 태그를 추가할 수 있습니다.
예: 변경 세트를 생성할 때 변경 세트에 태그 추가
다음은 판매자 제품의 제품 메타데이터를 업데이트하는 StartChangeSet 요청의 예입니다. 이 요청은 ChangeSetTags 속성에 태그를 포함하여이 요청으로 생성된 변경 세트에 태그를 추가합니다.
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType":"UpdateInformation", "Entity": { "Identifier":"example1-abcd-1234-5ef6-7890abcdef12", "Type":"AmiProduct@1.0" }, "Details": "{\"ProductTitle\":\"My updated title\"}" } ], "ChangeSetTags": [ { "Key": "product-team", "Value": "team-xyz" } ] }
판매자 제품 관리에 대한 자세한 내용은 AWS Marketplace Catalog API 참조의 판매자 제품 작업을 참조하세요.
예: 개체에 태그 추가 및 생성 중 세트 변경
다음은 프라이빗 마켓플레이스 경험 엔터티를 생성하는 StartChangeSet 요청의 예입니다. 요청은 EntityTags 및 ChangeSetTags 속성에 태그를 포함하여이 요청으로 생성된 개체 리소스와 변경 세트 리소스 모두에 태그를 추가합니다. 이러한 태그를 사용하면 사용자 또는 역할의 권한 정책을 지정하여이 요청이 생성하는 변경 세트의 설명 또는 취소만 허용하거나이 요청이 생성하는 엔터티에 대한 추가 변경 세트의 생성만 허용할 수 있습니다. 자세한 내용은 태그를 통해서만 엔터티를 생성하고 세트를 변경할 수 있는 권한 부여 단원을 참조하십시오.
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "CreateExperience", "Entity": { "Type": "Experience@1.0" }, "Details": "{\"Name\": \"ExamplePrivateMarketplace\"}", "EntityTags": [ { "Key": "product-team", "Value": "team-xyz" } ] } ], "ChangeSetTags": [ { "Key": "product-team", "Value": "team-xyz" } ] }
프라이빗 마켓플레이스 관리에 대한 자세한 내용은 AWS Marketplace Catalog API참조의 프라이빗 마켓플레이스 작업을 참조하세요.
리소스의 태그를 관리할 수 있는 권한 부여
사용자 또는 역할이 모든 엔터티 또는 변경 세트에 태그를 추가, 제거 및 나열하도록 허용하려면 다음 IAM 정책이 필요합니다.
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:TagResource", "aws-marketplace:UntagResource", "aws-marketplace:ListTagsForResource" ], "Resource": "*" } ] }
리소스에 특정 태그가 있는 경우에만 리소스의 태그를 관리할 수 있는 권한 부여
사용자 또는 역할이 개체에 태그를 추가, 제거 및 나열하거나 특정 태그가 있는 세트를 변경하도록 허용할 수 있습니다. 다음 IAM 정책은 태그 키가 product-team 이고 태그 값이 인 모든 엔터티 리소스("*")에서 이러한 작업을 허용합니다team-xyz.
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:TagResource", "aws-marketplace:UntagResource", "aws-marketplace:ListTagsForResource" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/product-team": "team-xyz" } } } ] }
태그를 통해서만 엔터티를 생성하고 세트를 변경할 수 있는 권한 부여
참고
StartChangeSet 작업에 대한 리소스 수준 권한 및 조건 컨텍스트 키는 카탈로그 API와 함께 사용되는 경우에만 지원됩니다. 와 함께 사용할 때는 지원되지 않습니다AWS Marketplace Management Portal
개체 또는 변경 세트가 생성될 때 태그 지정을 적용할 수 있습니다. 태그 키 일치 product-team 및 태그 값 일치를 지정하는 조건과 함께 StartChangeSet 및 TagResource 작업을 허용하려면 다음 정책을 추가합니다team-xyz. 이 정책 조건은 새로 생성된 개체의 태그와 생성 요청으로 인해 새로 생성된 변경 세트의 태그와 일치해야 합니다. 생성 시 개체에 태그를 지정하는 예제는 섹션을 참조하세요예: 개체에 태그 추가 및 생성 중 세트 변경.
기존 엔터티의 경우이 정책은 해당 엔터티에 대한 변경을 요청할 때 태그 지정 변경 세트도 적용합니다. 또한 기존 엔터티에이 기존 태그가 있어야 합니다. 이는 정책 조건이 기존 엔터티의 태그와 변경 요청으로 인해 새로 생성된 변경 세트와 모두 일치해야 하기 때문입니다. 변경 요청에 태그를 추가하는 예제는 섹션을 참조하세요예: 변경 세트를 생성할 때 변경 세트에 태그 추가.
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:StartChangeSet", "aws-marketplace:TagResource" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/product-team": "team-xyz" } } } ] }