The AWS SDK for Java 1.x는 2024년 7월 31일부터 유지 관리 모드로 전환되었으며 2025년 12월 31일에 end-of-support
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
개발을 AWS 리전 위해 AWS 임시 자격 증명 및 설정
를 사용하여 지원되는 서비스에 연결하려면 AWS 임시 자격 증명을 제공해야 AWS SDK for Java합니다. AWS SDKs 및 CLIs는 공급자 체인을 사용하여 시스템/사용자 환경 변수 및 로컬 AWS 구성 파일을 비롯한 다양한 위치에서 AWS 임시 자격 증명을 찾습니다.
이 주제에서는를 사용하여 로컬 애플리케이션 개발을 위한 AWS 임시 자격 증명을 설정하는 방법에 대한 기본 정보를 제공합니다 AWS SDK for Java. EC2 인스턴스 내에서 사용할 자격 증명을 설정해야 하거나 개발용으로 Eclipse IDE를 사용하고 있는 경우에는 다음 주제를 참조하십시오.
-
EC2 인스턴스를 사용하는 경우 IAM 역할을 생성한 다음 IAM 역할을 사용하여 리소스에 대한 액세스 권한 부여에 표시된 대로 EC2 인스턴스에 해당 역할에 대한 액세스 권한을 부여합니다. AWSAmazon EC2
-
를 사용하여 Eclipse 내에서 AWS 자격 증명을 설정합니다AWS Toolkit for Eclipse
. 자세한 내용은 AWS Toolkit for Eclipse 사용 설명서의 자격 AWS 증명 설정을 참조하세요.
임시 자격 증명 설정
여러 AWS SDK for Java 가지 방법으로에 대한 임시 자격 증명을 구성할 수 있지만 권장되는 접근 방식은 다음과 같습니다.
-
다음 위치에 있는 로컬 시스템의 자격 증명 프로필 파일에서 임시 AWS 자격 증명을 설정합니다.
-
Linux, macOS 또는 Unix의
~/.aws/credentials
의 경우: -
Windows에서
C:\Users\USERNAME\.aws\credentials
임시 자격 증명을 얻는 방법에 대한 지침은 이 안내서의 SDK용 임시 보안 인증을 설정합니다.을 참조하세요.
-
-
AWS_ACCESS_KEY_ID
,AWS_SECRET_ACCESS_KEY
, 및AWS_SESSION_TOKEN
환경 변수를 설정합니다.Linux, macOS 또는 Unix에서 이러한 변수를 설정하려면 를 사용합니다.
export AWS_ACCESS_KEY_ID=your_access_key_id export AWS_SECRET_ACCESS_KEY=your_secret_access_key export AWS_SESSION_TOKEN=your_session_token
Windows에서 이러한 변수를 설정하려면 을 사용합니다.
set AWS_ACCESS_KEY_ID=your_access_key_id set AWS_SECRET_ACCESS_KEY=your_secret_access_key set AWS_SESSION_TOKEN=your_session_token
-
EC2 인스턴스의 경우 IAM 역할을 지정하고 나서 해당 역할에 EC2 인스턴스 액세스 권한을 부여합니다. 작동 방식에 대한 자세한 내용은 Linux 인스턴스용 Amazon EC2 사용 설명서의에 대한 IAM 역할을 Amazon EC2 참조하세요.
이러한 방법 중 하나를 사용하여 AWS 임시 자격 증명을 설정하면 기본 자격 증명 공급자 체인을 사용하여 AWS SDK for Java 에서 임시 자격 증명을 자동으로 로드합니다. Java 애플리케이션의 AWS 자격 증명 작업에 대한 자세한 내용은 AWS 자격 증명 작업을 참조하세요.
IMDS 자격 증명 갱신
는 자격 증명 만료 시간에 관계없이 1분마다 백그라운드에서 IMDS 자격 증명 옵트인 새로 고침을 AWS SDK for Java 지원합니다. 이렇게 하면 자격 증명을 더 자주 새로 고칠 수 있으며 IMDS에 도달하지 못할 경우 인식된 AWS 가용성에 영향을 미칠 가능성이 줄어듭니다.
1. // Refresh credentials using a background thread, automatically every minute. This will log an error if IMDS is down during 2. // a refresh, but your service calls will continue using the cached credentials until the credentials are refreshed 3. // again one minute later. 4. 5. InstanceProfileCredentialsProvider credentials = 6. InstanceProfileCredentialsProvider.createAsyncRefreshingProvider(true); 7. 8. AmazonS3Client.builder() 9. .withCredentials(credentials) 10. .build(); 11. 12. // This is new: When you are done with the credentials provider, you must close it to release the background thread. 13. credentials.close();
설정 AWS 리전
를 사용하여 AWS 서비스에 액세스하는 AWS 리전 데 사용할 기본값을 설정해야 합니다 AWS SDK for Java. 네트워크 성능을 최대화하려면 본인(또는 본인의 고객)과 지리적으로 가까운 리전을 선택해야 합니다. 각 서비스의 리전 목록은 Amazon Web Services 일반 참조의 리전 및 엔드포인트를 참조하세요.
참고
리전을 선택하지 않으면 기본적으로 us-east-1이 사용됩니다.
유사한 기법을 사용하여 자격 증명을 설정하여 기본 AWS 리전을 설정할 수 있습니다.
-
다음 위치에 있는 로컬 시스템의 구성 파일에서 AWS 리전 AWS 를 설정합니다.
-
Linux, macOS 또는 Unix의 ~/.aws/config
-
Windows의 C:\Users\USERNAME\.aws\config
이 파일에는 다음 형식의 행이 포함되어야 합니다.
+
[default] region = your_aws_region
+
원하는 AWS 리전 (예: "us-east-1")을 your_aws_region으로 대체합니다.
-
-
AWS_REGION
환경 변수를 설정합니다.Linux, macOS 또는 Unix에서는
을 사용하세요.
export AWS_REGION=your_aws_region
Windows에서는
을 사용합니다.
set AWS_REGION=your_aws_region
여기서 your_aws_region은 원하는 AWS 리전 이름입니다.