자격 증명 공급자 변경 사항 - AWS SDK for Java 2.x

자격 증명 공급자 변경 사항

이 단원에서는 AWS SDK for Java의 버전 1.x와 2.x 사이의 자격 증명 공급자 클래스 및 메서드의 이름 변경 사항을 매핑합니다.

주요 차이점

  • 기본 자격 증명 공급자는 버전 2.x의 환경 변수보다 먼저 시스템 속성을 로드합니다. 자세한 정보는 자격 증명 사용하기를 참조하세요.

  • 생성자 메서드는 create 또는 builder 메서드로 대체됩니다.

    DefaultCredentialsProvider.create();
  • 비동기 새로 고침은 더 이상 기본적으로 설정되지 않습니다. 자격 증명 공급자의 builder를 사용해 지정해야 합니다.

    ContainerCredentialsProvider provider = ContainerCredentialsProvider.builder() .asyncCredentialUpdateEnabled(true) .build();
  • ProfileCredentialsProvider.builder()를 사용하여 사용자 지정 프로필 파일의 경로를 지정할 수 있습니다.

    ProfileCredentialsProvider profile = ProfileCredentialsProvider.builder() .profileFile(ProfileFile.builder().content(Paths.get("myProfileFile.file")).build()) .build();
  • 프로필 파일 형식이 AWS CLI과 더 비슷하도록 변경되었습니다. 지침을 보려면 AWS Command Line Interface 사용 설명서AWS CLI 구성을 참조하세요.

버전 1.x와 2.x 간에 매핑된 자격 증명 공급자 변경 사항

AWSCredentialsProvider

변경 범주 1.x 2.x
패키지/클래스 이름 com.amazonaws.auth.AWSCredentialsProvider software.amazon.awssdk.auth.credentials.AwsCredentialsProvider
메서드 이름 getCredentials resolveCredentials
지원되지 않는 메서드 refresh 지원되지 않음

DefaultAWSCredentialsProviderChain

변경 범주 1.x 2.x
패키지/클래스 이름 com.amazonaws.auth.DefaultAWSCredentialsProviderChain software.amazon.awssdk.auth.credentials.DefaultCredentialsProvider
생성 new DefaultAWSCredentialsProviderChain DefaultCredentialsProvider.create
지원되지 않는 메서드 getInstance 지원되지 않음
외부 설정의 우선순위

시스템 속성보다 환경 변수 우선

환경 변수보다 시스템 속성 우선

AWSStaticCredentialsProvider

변경 범주 1.x 2.x
패키지/클래스 이름 com.amazonaws.auth.AWSStaticCredentialsProvider software.amazon.awssdk.auth.credentials.StaticCredentialsProvider
생성 new AWSStaticCredentialsProvider StaticCredentialsProvider.create

EnvironmentVariableCredentialsProvider

변경 범주 1.x 2.x
패키지/클래스 이름 com.amazonaws.auth.EnvironmentVariableCredentialsProvider software.amazon.awssdk.auth.credentials.EnvironmentVariableCredentialsProvider
생성 new EnvironmentVariableCredentialsProvider EnvironmentVariableCredentialsProvider.create
환경 변수 이름 AWS_ACCESS_KEY AWS_ACCESS_KEY_ID
AWS_SECRET_KEY AWS_SECRET_ACCESS_KEY

SystemPropertiesCredentialsProvider

변경 범주 1.x 2.x
패키지/클래스 이름 com.amazonaws.auth.SystemPropertiesCredentialsProvider software.amazon.awssdk.auth.credentials.SystemPropertyCredentialsProvider
생성 new SystemPropertiesCredentialsProvider SystemPropertiesCredentialsProvider.create
시스템 속성 이름 aws.secretKey aws.secretAccessKey

ProfileCredentialsProvider

변경 범주 1.x 2.x
패키지/클래스 이름 com.amazonaws.auth.profile.ProfileCredentialsProvider software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider
생성 new ProfileCredentialsProvider ProfileCredentialsProvider.create
사용자 지정 프로필의 위치
  • AWS_CREDENTIAL_PROFILES_FILE 환경 변수

  • new ProfileCredentialsProvider

  • AWS_SHARED_CREDENTIALS_FILE 환경 변수

  • ProfileCredentialsProvider.builder

ContainerCredentialsProvider

변경 범주 1.x 2.x
패키지/클래스 이름 com.amazonaws.auth.ContainerCredentialsProvider software.amazon.awssdk.auth.credentials.ContainerCredentialsProvider
생성 new ContainerCredentialsProvider ContainerCredentialsProvider.create
비동기식 새로 고침 지정 지원되지 않음 기본 동작

InstanceProfileCredentialsProvider

변경 범주 1.x 2.x
패키지/클래스 이름 com.amazonaws.auth.InstanceProfileCredentialsProvider software.amazon.awssdk.auth.credentials.InstanceProfileCredentialsProvider
생성 new InstanceProfileCredentialsProvider InstanceProfileCredentialsProvider.create
비동기식 새로 고침 지정 new InstanceProfileCredentialsProvider(true)

InstanceProfileCredentialProvider.builder().asyncCredentialUpdateEnabled(true).build()

시스템 속성 이름 com.amazonaws.sdk.disableEc2Metadata aws.disableEc2Metadata
com.amazonaws.sdk.ec2MetadataServiceEndpointOverride aws.ec2MetadataServiceEndpoint

STSAssumeRoleSessionCredentialsProvider

변경 범주 1.x 2.x
패키지/클래스 이름 com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider software.amazon.awssdk.services.sts.auth.StsAssumeRoleCredentialsProvider
생성
  • new STSAssumeRoleSessionCredentialsProvider

  • new STSAssumeRoleSessionCredentialsProvider.Builder

StsAssumeRoleCredentialsProvider.builder
비동기식 새로 고침 기본 동작 기본 동작
구성 new STSAssumeRoleSessionCredentialsProvider.Builder StsClientAssumeRoleRequest 요청 구성

STSSessionCredentialsProvider

변경 범주 1.x 2.x
패키지/클래스 이름 com.amazonaws.auth.STSSessionCredentialsProvider software.amazon.awssdk.services.sts.auth.StsGetSessionTokenCredentialsProvider
생성

new STSSessionCredentialsProvider

StsGetSessionTokenCredentialsProvider.builder
비동기식 새로 고침 기본 동작 StsGetSessionTokenCredentialsProvider.builder
구성 생성자 파라미터 빌더에서 StsClientGetSessionTokenRequest 요청 구성

WebIdentityFederationSessionCredentialsProvider

변경 범주 1.x 2.x
패키지/클래스 이름 com.amazonaws.auth.WebIdentityFederationSessionCredentialsProvider software.amazon.awssdk.services.sts.auth.StsAssumeRoleWithWebIdentityCredentialsProvider
생성

new WebIdentityFederationSessionCredentialsProvider

StsAssumeRoleWithWebIdentityCredentialsProvider.builder
비동기식 새로 고침 기본 동작 StsAssumeRoleWithWebIdentityCredentialsProvider.builder
구성 생성자 파라미터 빌더에서 StsClientAssumeRoleWithWebIdentityRequest 요청 구성

클래스 교체됨

1.x 클래스 2.x 대체 클래스
com.amazonaws.auth.EC2ContainerCredentialsProviderWrapper software.amazon.awssdk.auth.credentials.ContainerCredentialsProvidersoftware.amazon.awssdk.auth.credentials.InstanceProfileCredentialsProvider
com.amazonaws.services.s3.S3CredentialsProviderChain software.amazon.awssdk.auth.credentials.DefaultCredentialsProvidersoftware.amazon.awssdk.auth.credentials.AnonymousCredentialsProvider

클래스 제거됨

1.x 클래스
com.amazonaws.auth.ClasspathPropertiesFileCredentialsProvider
com.amazonaws.auth.PropertiesFileCredentialsProvider