본문 바로가기
AWS

[AWS Marketplace] resolveCustomer API 관련 기록

by HH_g 2024. 12. 29.
배경:
메가존클라우드를 통해 마켓플레이스 등록하면서 발생했던 예상치 못한 상황들을 기록합니다.
전에는 직접 seller로 제품을 AWS 마켓플레이스에 등록했었는데, 이번에는 메가존클라우드를 통해서 제품을 등록하게 됨
이럴 경우 기존과 동일하게 람다를 세팅하면 ResolveCustomer API 를 사용할 수 없습니다.

 

 

ResolveCustomer API 는 마켓플레이스에서 등록한 제품에 사용자가 접근했을때 aws 측에서 제공하는 regToken 을 통해 사용자의 정보(제품명, awsid 등) 을 알아내기 위해 사용하는데, seller account 만 사용이 가능합니다.

 

 

 

seller account 가 아닌 계정에서 해당 API를 콜하면

ERROR Error resolving customer: AccessDeniedException: User is not authorized to call ResolveCustomer for this product.

 

에러가 발생합니다..

 

seller 계정이 아닌 계정에서 해당 API 를 사용하려면 몇가지 권한 설정을 해줘야 합니다.

seller 계정의 권한을 위임할 계정을 A 라고 가정하겠습니다.

 

1. seller 계정에서 A 에 위임한 role 정보 제공

seller 계정에서 생성한 role 의 신뢰정책

 

2. A 계정에서 ResolveCustomer API 를 사용할 때 제공받은 RoleArn, ExternalID 사용하여 임시 자격 증명 설정(assumerole)

const command = new AssumeRoleCommand({
RoleArn: "arn:aws:iam::{Seller account AWS ID}:role/{Seller account 에서 제공한 Role}",
RoleSessionName: "AssumeRoleSession1",
ExternalId: "{seller account 에서 설정한 externalId",

 

 

 

 

 

 

 

'AWS' 카테고리의 다른 글

[DB] EBS Deep dive  (2) 2024.10.03
[EKS] PVC 로 EBS 동적 프로비저닝하기  (0) 2024.09.29
[AWS] SSM, KSM  (1) 2024.09.29
[EKS] Python 코드로 EKS 클러스터 접근하기  (0) 2024.09.29
[AWS] Assume role  (0) 2024.09.29