CredentialsProviderChain
1 AWS SDK 기본 자격 증명 제공자 체인 (Java 예시)
- AWS SDK 기본 자격 증명 제공자 체인은 AWS 서비스와 통합된 애플리케이션을 개발할 때 자격 증명을 찾는 순서를 정의합니다.
- Java SDK는 이러한 자격 증명을 특정 순서에 따라 검색하여 사용합니다.
2 Java SDK 자격 증명 검색 순서
2.1 Java 시스템 속성
- Java 시스템 속성: Java SDK는 먼저 시스템 속성에서 자격 증명을 찾습니다.
- 속성 이름:
aws.accessKeyId와aws.secretKey
- 속성 이름:
설정 예시
System.setProperty("aws.accessKeyId", "YOUR_ACCESS_KEY_ID");
System.setProperty("aws.secretKey", "YOUR_SECRET_ACCESS_KEY");
2.2 환경 변수
- 환경 변수: 시스템 속성에 자격 증명이 없으면 SDK는 환경 변수를 확인합니다.
- 환경 변수 이름:
AWS_ACCESS_KEY_ID와AWS_SECRET_ACCESS_KEY
export AWS_ACCESS_KEY_ID=YOUR_ACCESS_KEY_ID
export AWS_SECRET_ACCESS_KEY=YOUR_SECRET_ACCESS_KEY
2.3 기본 자격 증명 파일
- 기본 자격 증명 파일: 환경 변수에도 자격 증명이 없으면 SDK는 공유 자격 증명 파일을 확인합니다.
- 파일 경로:
~/.aws/credentials
파일 내용 예시
[default]
aws_access_key_id = YOUR_ACCESS_KEY_ID
aws_secret_access_key = YOUR_SECRET_ACCESS_KEY
[profile_name]
aws_access_key_id = YOUR_PROFILE_ACCESS_KEY_ID
aws_secret_access_key = YOUR_PROFILE_SECRET_ACCESS_KEY
2.4 Amazon ECS 컨테이너 자격 증명
- Amazon ECS 컨테이너 자격 증명: 기본 자격 증명 파일에도 자격 증명이 없으면 SDK는 ECS 컨테이너 내의 자격 증명을 확인합니다.
- ECS 컨테이너 내에서 실행되는 애플리케이션의 경우, 컨테이너 메타데이터 엔드포인트에서 자격 증명을 가져옵니다.