

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AWS SDK for Ruby 認証情報プロバイダーの使用
<a name="credential-providers"></a>

へのすべてのリクエストは、 によって発行された認証情報を使用して暗号的に署名 AWS する必要があります AWS。実行時、SDK は複数の場所を確認して認証情報の設定値を取得します。

を使用した認証は AWS 、コードベース外で処理できます。多くの認証方法は、認証情報プロバイダーチェーンを使用して、SDK によって自動的に検出、使用、更新されます。

プロジェクトの AWS 認証を開始するためのガイド付きオプションについては、 SDK およびツールリファレンスガイドの[「認証とアクセス](https://docs.aws.amazon.com/sdkref/latest/guide/access.html)」を参照してください。 *AWS SDKs *

## 認証情報プロバイダーチェーン
<a name="credchain"></a>

すべての SDK には、 AWS のサービスに対するリクエストに使用する有効な認証情報を取得するためにチェックする一連の場所 (またはソース) があります。有効な認証情報が見つかると、検索は停止されます。この体系的な検索は、デフォルトの認証情報プロバイダーチェーンと呼ばれます。

**注記**  
新しいユーザーが開始するための推奨アプローチに従った場合は、 中にコンソール認証情報を使用したログインを使用して認証しました[AWS SDK for Ruby AWS を使用した での認証](credentials.md)。その他の認証方法もさまざまな状況で役に立ちます。セキュリティリスクを避けるため、常に短期の認証情報を使用することをお勧めします。その他の認証方法については、『*AWS SDK とツールのリファレンスガイド*』の「[認証とアクセス](https://docs.aws.amazon.com/sdkref/latest/guide/access.html)」を参照してください。

チェーンのステップごとに、値を設定するさまざまな方法があります。コード内で直接値を設定することが常に優先され、次に環境変数として を設定し、共有ファイルで を設定します AWS `config`。

*AWS SDKsおよびツールリファレンスガイドには、*すべての SDK および で使用される AWS SDKs 設定に関する情報が記載されています AWS CLI。共有 AWS `config`ファイルを使用して SDK を設定する方法の詳細については、[「共有設定ファイルと認証情報ファイル](https://docs.aws.amazon.com/sdkref/latest/guide/file-format.html)」を参照してください。環境変数を設定して SDK を設定する方法の詳細については、「[環境変数のサポート](https://docs.aws.amazon.com/sdkref/latest/guide/environment-variables.html)」を参照してください。

で認証するために AWS、 AWS SDK for Ruby は認証情報プロバイダーを次の表に示す順序でチェックします。


| 認証情報プロバイダー (優先順位順) | *AWS SDKsとツールのリファレンスガイド* | *AWS SDK for Ruby API リファレンス* | 
| --- | --- | --- | 
| AWS アクセスキー (一時的および長期的な認証情報) | [AWS アクセスキー](https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html) | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Credentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Credentials.html)[https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SharedCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SharedCredentials.html) | 
|  AWS Security Token Service (AWS STS) からのウェブ ID トークン  | [ロール認証情報プロバイダーを引き受けます](https://docs.aws.amazon.com/sdkref/latest/guide/feature-assume-role-credentials.html)`role_arn`、`role_session_name`、および`web_identity_token_file`の使用 | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AssumeRoleWebIdentityCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AssumeRoleWebIdentityCredentials.html)  | 
| AWS IAM アイデンティティセンター。 このガイドでは、[AWS SDK for Ruby AWS を使用した での認証](credentials.md) を参照してください。 | [IAM Identity Center 認証情報プロバイダー](https://docs.aws.amazon.com/sdkref/latest/guide/feature-sso-credentials.html) | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SSOCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SSOCredentials.html) | 
| 信頼されたエンティティプロバイダー (AWS\$1ROLE\$1ARN など) このガイドでは、「[AWS STS アクセストークンの作成](#aws-ruby-sdk-credentials-access-token)」を参照してください。 | [ロール認証情報プロバイダーを引き受けます](https://docs.aws.amazon.com/sdkref/latest/guide/feature-assume-role-credentials.html)`role_arn` および `role_session_name` を使用する | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AssumeRoleCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AssumeRoleCredentials.html) | 
| ログイン認証情報プロバイダー | [ログイン認証情報プロバイダー](https://docs.aws.amazon.com/sdkref/latest/guide/feature-login-credentials.html) | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/LoginCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/LoginCredentials.html) | 
| プロセス認証情報プロバイダー | [プロセス認証情報プロバイダー](https://docs.aws.amazon.com/sdkref/latest/guide/feature-process-credentials.html) | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ProcessCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ProcessCredentials.html) | 
| Amazon Elastic Container Service (Amazon ECS) の認証情報。 | [コンテナ認証情報プロバイダー](https://docs.aws.amazon.com/sdkref/latest/guide/feature-container-credentials.html) | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ECSCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ECSCredentials.html) | 
| Amazon Elastic Compute Cloud (Amazon EC2) インスタンスプロファイル認証情報 (IMDS 認証情報プロバイダー) | [IMDS 認証情報プロバイダー](https://docs.aws.amazon.com/sdkref/latest/guide/feature-imds-credentials.html) | [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/InstanceProfileCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/InstanceProfileCredentials.html) | 

 AWS SDK for Ruby 環境変数`AWS_SDK_CONFIG_OPT_OUT`が設定されている場合、共有 AWS `config`ファイルは、通常は で` ~/.aws/config`、認証情報について解析されません。

## AWS STS アクセストークンの作成
<a name="aws-ruby-sdk-credentials-access-token"></a>

ロールを引き受けるには、通常はアクセスできない AWS リソースにアクセスするために使用できる一時的なセキュリティ認証情報のセットを使用します。これらの一時的な認証情報は、アクセスキー ID、シークレットアクセスキー、およびセキュリティトークンで構成されています。[https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AssumeRoleCredentials.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AssumeRoleCredentials.html) メソッドを使用して AWS Security Token Service (AWS STS) アクセストークンを作成できます。

次の例では、`linked::account::arn` が引き受けるロールの Amazon リソースネーム (ARN) で、`session-name` が引き受けたロールセッションの識別子である場合、アクセストークンを使用して Amazon S3 クライアントオブジェクトを作成します。

```
role_credentials = Aws::AssumeRoleCredentials.new(
  client: Aws::STS::Client.new,
  role_arn: "linked::account::arn",
  role_session_name: "session-name"
)

s3 = Aws::S3::Client.new(credentials: role_credentials)
```

`role_arn` または の設定、または共有ファイルを使用した設定の詳細については`role_session_name`、「 SDK およびツールリファレンスガイド」の AWS `config`[「ロール認証情報プロバイダーを引き受ける](https://docs.aws.amazon.com/sdkref/latest/guide/feature-assume-role-credentials.html)」を参照してください。 *AWS SDKs * 