통합 이해
통합 이해
온보딩 절차를 완료한 뒤에는 IAM 임시 위임으로 통합을 구축할 수 있어요. 완전한 통합은 일반적으로 세 가지 주요 작업 범주를 포함해요.
출처: 문서
본문
1. 사용자 경험 및 워크플로 설계
파트너 애플리케이션에 고객을 임시 위임 워크플로로 안내하는 프런트엔드 경험을 구축하세요. 파트너 애플리케이션은 다음을 해야 해요.
- 고객이 임시 액세스를 부여할 수 있는 명확한 온보딩 또는 구성 흐름을 제시합니다. "Deploy with IAM temporary delegation" 같은 명확한 라벨로 이 작업을 표시합니다.
CreateDelegationRequestAPI가 반환하는 콘솔 링크를 사용해 고객을 AWS Management Console로 리디렉션해 위임 요청을 검토·승인하게 합니다.- 어떤 권한이 요청되는지, 왜 요청되는지에 대한 적절한 메시지를 제공합니다. 고객은 위임 요청 세부 정보 페이지에서 이 메시지를 볼 수 있습니다.
- 고객이 AWS에서 승인을 완료한 뒤 여러분의 애플리케이션으로 돌아오는 것을 처리합니다.
임시 위임 요청의 모범 사례
파트너 애플리케이션에 임시 위임을 구현할 때는 다음 모범 사례를 따라 고객이 요청의 진위와 정확성을 확인할 수 있게 도와주세요.
-
요청 메시지에 사용자 식별 컨텍스트 포함 — 위임 요청 메시지에 사용자별 컨텍스트를 포함해야 합니다. 이 정보는 사용자가 기존 파트너 워크플로에서 요청을 식별하고 정당한 요청을 구별하는 데 도움이 됩니다. 요청 메시지에 제안되는 정보:
- 서비스에서의 고객 계정 식별자 또는 사용자 이름
- 작업 공간 이름, 구독 ID 또는 조직 식별자
- 액세스되는 특정 리소스(클러스터 이름, 프로젝트 이름, 환경)
- 이 위임 시도에 대해 생성된 고유 트랜잭션 또는 요청 식별자
요청 메시지 예시:
Request from Partner A workspace "production-analytics" Account: [email protected] Workspace ID: 1234ABCD Cluster: ml-training-cluster-01 Request ID: 1111-2222-3333-4444 -
선택 사항: 위임 시작 시 AWS 계정 ID 포함 — 고객 계정 ID를 사용할 수 있다면 위임 요청에 포함합니다. 이 검증 단계는 고객의 의도와 위임 토큰 사이에 추가 바인딩을 만듭니다.
-
보안 검증을 위한 요청 메시지 설계 — 요청 메시지를 구조화해 고객이 액세스를 부여하기 전에 정당성을 자신 있게 검증할 수 있게 합니다. 사용자 경험 요구 사항:
- AWS로 리디렉션하기 전에 애플리케이션 인터페이스에서 요청 메시지를 눈에 띄게 표시
- 고객의 현재 작업과 직접 연결되는 명확하고 설명적인 언어 사용
- 어떤 위임 요청에도 적용될 수 있는 일반적 메시지 피하기
- 고객이 요청이 의도한 워크플로와 일치하는지 검증할 충분한 세부 정보 포함
- 위임 액세스를 받을 AWS 계정 ID 표시
- 애플리케이션이 요청할 권한을 명확히 설명
- AWS 동의 화면으로 리디렉션하기 전에 애플리케이션에 확인 안내를 포함:
⚠️ Redirecting to IAM Temporary Delegation You are about to grant [Your Service Name] temporary access to your AWS account. Before clicking "Allow" on the AWS consent screen: • Verify the request details match your current action • Confirm the AWS account ID matches your intended account • Make sure you initiated this request from [Your Service Name] -
세션 바인딩 권장 사항 — AWS IAM이 핵심 권한 부여 흐름을 처리하는 동안, 세션 무결성을 강화하기 위해 애플리케이션에서 다음 사례를 구현합니다.
- 각 위임 시도에 대해 고유하고 일회용인 요청 식별자 생성
- 위임 요청을 고객의 활성 애플리케이션 세션과 연결
- 위임 프로세스에 따라 적절한 요청 만료 구현
- 위임 콜백이 요청 시작 컨텍스트와 일치하는지 검증
- 보안 모니터링을 위해 모든 위임 요청 시작·완료 기록
이 모범 사례를 따르면 더 안전한 임시 위임 경험을 만드는 데 도움이 됩니다.
2. API 통합
IAM 임시 위임 API를 사용해 위임 요청을 보내고 관리하세요. AWS 계정이 등록된 후 다음 API에 액세스할 수 있어요.
- IAM
CreateDelegationRequest— 고객의 AWS 계정에 대한 위임 요청을 만듭니다. 이 API는 요청 검토·승인을 위해 고객을 리디렉션할 콘솔 링크를 반환합니다. - AWS STS
GetDelegatedAccessToken— 고객이 위임 요청을 승인한 후 임시 AWS 자격 증명을 검색합니다. 이 자격 증명을 사용해 고객의 계정에서 작업을 수행합니다.
통합은 요청 생성, 상태 모니터링, 승인 시 임시 자격 증명 검색을 포함해 위임 요청의 전체 수명 주기를 처리해야 해요.
3. 리소스 구성 및 오케스트레이션
임시 자격 증명을 얻은 후 고객의 AWS 계정에서 리소스를 구성하는 데 필요한 워크플로를 오케스트레이션하세요. 다음이 포함될 수 있어요.
- AWS 서비스 API를 직접 호출해 리소스 생성·구성
- AWS CloudFormation 템플릿으로 인프라 배포
- 지속적 액세스를 위한 IAM 역할 생성(권한 경계 사용 필요). 심층 방어(defense-in-depth) 조치로 무작위 생성 접미사가 있는 이름 같은 동적 역할 이름을 사용하길 권장합니다. 이렇게 하면 각 고객 계정의 역할 이름이 고유하고 예측 불가능해집니다.
오케스트레이션 로직은 멱등(idempotent)이어야 하고 실패를 우아하게 처리해야 해요. 고객이 위임 승인을 재시도하거나 수정할 수 있기 때문이에요.