

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 登入資料提供者變更
<a name="migration-client-credentials"></a>

本節提供 1.x 和 2.x 版之間登入資料提供者類別和方法名稱變更的映射 適用於 Java 的 AWS SDK。

## 顯著差異
<a name="client-credentials"></a>
+ 預設登入資料提供者會在 2.x 版中先載入系統屬性，再載入環境變數。如需詳細資訊，請參閱[使用登入](credentials.md)資料。
+ 建構函數方法被 `create` 或 `builder` 方法取代。  
**Example**  

  ```
  DefaultCredentialsProvider.create();
  ```
+ 預設值已不再是非同步重新整理。您必須以登入資料提供者的 `builder` 指定非同步重新整理。  
**Example**  

  ```
  ContainerCredentialsProvider provider = ContainerCredentialsProvider.builder()
          		.asyncCredentialUpdateEnabled(true)
          		.build();
  ```
+ 您可以使用 `ProfileCredentialsProvider.builder()` 指定自訂設定檔的路徑。  
**Example**  

  ```
  ProfileCredentialsProvider profile = ProfileCredentialsProvider.builder()
          		.profileFile(ProfileFile.builder().content(Paths.get("myProfileFile.file")).build())
          		.build();
  ```
+ 設定檔格式已變更，以更符合 AWS CLI。如需詳細資訊，請參閱*AWS Command Line Interface 《 使用者指南*》中的[設定 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html)。

## 對應至 1.x 和 2.x 版之間的登入資料提供者變更
<a name="credentials-changes-mapping"></a>

### `AWSCredentialsProvider`
<a name="credentials-provider-changes-AWSCredentialsProvider"></a>


| 變更類別 | 1.x | 2.x | 
| --- | --- | --- | 
| 套件/類別名稱 | com.amazonaws.auth.AWSCredentialsProvider | software.amazon.awssdk.auth.credentials.AwsCredentialsProvider | 
| 方法名稱 | getCredentials | resolveCredentials | 
| 不支援的方法 | refresh | 不支援 | 

### `DefaultAWSCredentialsProviderChain`
<a name="credentials-provider-changes-DefaultAWSCredentialsProviderChain"></a>


| 變更類別 | 1.x | 2.x | 
| --- | --- | --- | 
| 套件/類別名稱 | com.amazonaws.auth.DefaultAWSCredentialsProviderChain | software.amazon.awssdk.auth.credentials.DefaultCredentialsProvider | 
| 建立 | new DefaultAWSCredentialsProviderChain | DefaultCredentialsProvider.create | 
| 不支援的方法 | getInstance | 不支援 | 
| 外部設定的優先順序 |  系統屬性之前的環境變數  |  環境變數之前的系統屬性  | 

### `AWSStaticCredentialsProvider`
<a name="credentials-provider-changes-AWSStaticCredentialsProvider"></a>


| 變更類別 | 1.x | 2.x | 
| --- | --- | --- | 
| 套件/類別名稱 | com.amazonaws.auth.AWSStaticCredentialsProvider | software.amazon.awssdk.auth.credentials.StaticCredentialsProvider | 
| 建立 | new AWSStaticCredentialsProvider | StaticCredentialsProvider.create | 

### `EnvironmentVariableCredentialsProvider`
<a name="credentials-provider-changes-EnvironmentVariableCredentialsProvider"></a>


| 變更類別 | 1.x | 2.x | 
| --- | --- | --- | 
| 套件/類別名稱 | com.amazonaws.auth.EnvironmentVariableCredentialsProvider | software.amazon.awssdk.auth.credentials.EnvironmentVariableCredentialsProvider | 
| 建立 | new EnvironmentVariableCredentialsProvider | EnvironmentVariableCredentialsProvider.create | 
| 環境變數名稱 | AWS\$1ACCESS\$1KEY | AWS\$1ACCESS\$1KEY\$1ID | 
|  | AWS\$1SECRET\$1KEY | AWS\$1SECRET\$1ACCESS\$1KEY | 

### `SystemPropertiesCredentialsProvider`
<a name="credentials-provider-changes-SystemPropertiesCredentialsProvider"></a>


| 變更類別 | 1.x | 2.x | 
| --- | --- | --- | 
| 套件/類別名稱 | com.amazonaws.auth.SystemPropertiesCredentialsProvider | software.amazon.awssdk.auth.credentials.SystemPropertyCredentialsProvider | 
| 建立 | new SystemPropertiesCredentialsProvider | SystemPropertiesCredentialsProvider.create | 
| 系統屬性名稱 | aws.secretKey | aws.secretAccessKey | 

### `ProfileCredentialsProvider`
<a name="credentials-provider-changes-ProfileCredentialsProvider"></a>


| 變更類別 | 1.x | 2.x | 
| --- | --- | --- | 
| 套件/類別名稱 | com.amazonaws.auth.profile.ProfileCredentialsProvider | software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider | 
| 建立 | new ProfileCredentialsProvider | ProfileCredentialsProvider.create | 
| 自訂設定檔的位置 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/sdk-for-java/latest/developer-guide/migration-client-credentials.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/sdk-for-java/latest/developer-guide/migration-client-credentials.html)  | 

### `ContainerCredentialsProvider`
<a name="credentials-provider-changes-ContainerCredentialsProvider"></a>


| 變更類別 | 1.x | 2.x | 
| --- | --- | --- | 
| 套件/類別名稱 | com.amazonaws.auth.ContainerCredentialsProvider | software.amazon.awssdk.auth.credentials.ContainerCredentialsProvider | 
| 建立 | new ContainerCredentialsProvider | ContainerCredentialsProvider.create | 
| 指定非同步重新整理 | 不支援 | 預設行為 | 

### `InstanceProfileCredentialsProvider`
<a name="credentials-provider-changes-InstanceProfileCredentialsProvider"></a>


| 變更類別 | 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`
<a name="credentials-provider-changes-STSAssumeRoleSessionCredentialsProvider"></a>


| 變更類別 | 1.x | 2.x | 
| --- | --- | --- | 
| 套件/類別名稱 | com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider | software.amazon.awssdk.services.sts.auth.StsAssumeRoleCredentialsProvider | 
| 建立 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/sdk-for-java/latest/developer-guide/migration-client-credentials.html)  | StsAssumeRoleCredentialsProvider.builder | 
| 非同步重新整理 | 預設行為 | 預設行為 | 
| 組態 | new STSAssumeRoleSessionCredentialsProvider.Builder | 設定 StsClient和 AssumeRoleRequest請求 | 

### `STSSessionCredentialsProvider`
<a name="credentials-provider-changes-STSSessionCredentialsProvider"></a>


| 變更類別 | 1.x | 2.x | 
| --- | --- | --- | 
| 套件/類別名稱 | com.amazonaws.auth.STSSessionCredentialsProvider | software.amazon.awssdk.services.sts.auth.StsGetSessionTokenCredentialsProvider | 
| 建立 |  `new STSSessionCredentialsProvider`  | StsGetSessionTokenCredentialsProvider.builder | 
| 非同步重新整理 | 預設行為 | StsGetSessionTokenCredentialsProvider.builder | 
| 組態 | 建構器參數 | 在建置器中設定 StsClient和 GetSessionTokenRequest請求 | 

### `WebIdentityFederationSessionCredentialsProvider`
<a name="credentials-provider-changes-WebIdentityFederationSessionCredentialsProvider"></a>


| 變更類別 | 1.x | 2.x | 
| --- | --- | --- | 
| 套件/類別名稱 | com.amazonaws.auth.WebIdentityFederationSessionCredentialsProvider | software.amazon.awssdk.services.sts.auth.StsAssumeRoleWithWebIdentityCredentialsProvider | 
| 建立 |  `new WebIdentityFederationSessionCredentialsProvider`  | StsAssumeRoleWithWebIdentityCredentialsProvider.builder | 
| 非同步重新整理 | 預設行為 | StsAssumeRoleWithWebIdentityCredentialsProvider.builder | 
| 組態 | 建構器參數 | 在建置器中設定 StsClient和 AssumeRoleWithWebIdentityRequest請求 | 

### 已取代類別
<a name="credentials-provider-changes-Replacements"></a>


| 1.x 類別 | 2.x 替換類別 | 
| --- | --- | 
| com.amazonaws.auth.EC2ContainerCredentialsProviderWrapper | software.amazon.awssdk.auth.credentials.ContainerCredentialsProvider 和 software.amazon.awssdk.auth.credentials.InstanceProfileCredentialsProvider | 
| com.amazonaws.services.s3.S3CredentialsProviderChain | software.amazon.awssdk.auth.credentials.DefaultCredentialsProvider 和 software.amazon.awssdk.auth.credentials.AnonymousCredentialsProvider | 

### 已移除類別
<a name="credentials-provider-changes-Removed"></a>


| 1.x 類別 | 
| --- | 
| com.amazonaws.auth.ClasspathPropertiesFileCredentialsProvider | 
| com.amazonaws.auth.PropertiesFileCredentialsProvider | 