

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

# で証明書ベースのアクセスコントロールを使用するための主要な概念 AWS
<a name="concepts"></a>

の証明書ベースのアクセスコントロールでは、相互に依存する認証と認可の概念を理解 AWS する必要があります。例えば、最小特権の原則は、証明書ベースの認証によって付与されるアクセス許可の範囲を決定します。これは ( AWS Identity and Access Management IAM) ロールとポリシー設計に直接影響します。証明書ベースの認証自体は、設定された信頼アンカーに対する X.509 証明書の検証に依存します。これにより、証明書の検証のための暗号化信頼チェーンが定義されます。このプロセスを通じて生成される一時的なセキュリティ認証情報には、セッション管理と認証情報ローテーション戦略に影響を与える特定のライフサイクル特性があります。さらに、 AWS Identity and Access Management Roles Anywhere は、IAM ロールポリシーとプロファイル設定の両方がアクセスを許可する必要があるデュアルレイヤーアクセス許可モデルを実装します。これらの概念がどのように相互作用するかを理解していないと、実装によって、証明書検証チェーンで認証の失敗、過剰なアクセス、またはセキュリティギャップが発生する可能性があります。これらの概念は、証明書ベースの AWS アクセス管理システムで信頼関係、アクセス許可の境界、認証情報のライフサイクルを正しく設定するために必要な技術的基盤を形成します。

**Topics**
+ [最小特権](#concepts-least-privilege)
+ [証明書ベースの認証](#concepts-certificate-based-authentication)
+ [トラストアンカーとトラストモデル](#concepts-trust-models)
+ [一時的な認証情報](#concepts-temp-sec-creds)
+ [IAM でのデュアルレイヤーアクセス許可](#concepts-dual-layers-permissions)
+ [AWS 認証情報ヘルパー](#concepts-credential-helper)

## 最小特権
<a name="concepts-least-privilege"></a>

* 最小特権*の原則は、ユーザー、プログラム、またはシステムがタスクを実行するために必要な最小限のレベルのアクセス (または*アクセス許可*) を付与することをアドバイスするセキュリティ概念です。指針となる哲学はシンプルです。エンティティが持つアクセス許可が少ないほど、悪意のある、または偶発的な損害のリスクが低くなります。

この原則は AWS特に関連しています。 AWS は、仮想マシンからストレージリソースまで、幅広いリソースとサービスを提供しています。 AWS インフラストラクチャを構築および管理する際に、最小特権の原則を適用すると、各エンティティ (ユーザー、サービス、またはアプリケーション) に、正しく機能するために必要なアクセス許可のみがあり、それ以上のアクセス許可はありません。

に最小特権を実装 AWS すると、次の利点があります。
+ **セキュリティ** – アクセスを制限することで、セキュリティ違反の潜在的な影響を軽減できます。ユーザーまたはサービスに最小限のアクセス許可がある場合、損害の範囲は大幅に減少します。
+ **コンプライアンス** – 多くの規制フレームワークでは、厳格なアクセスコントロールが必要です。最小特権の原則に従うことで、これらのコンプライアンス要件を満たすことができます。
+ **運用の簡素化** – アクセス許可の管理は複雑になる可能性があります。最小権限を適用すると、設定をできるだけシンプルに管理できます。

## 証明書ベースの認証
<a name="concepts-certificate-based-authentication"></a>

証明書ベースの認証では、デジタル証明書を使用してデバイス、サービス、またはアプリケーションの ID を検証します。X.509 証明書には、エンティティを識別し、信頼できる認証機関によって署名される属性が含まれています。この認証方法により、静的認証情報が不要になり、信頼を確立するための暗号的に安全な方法が提供されます。

ID ベースの認証は IAM [ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)または[ユーザー](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)に直接関連付けられている認証情報に依存しますが、証明書ベースの認証は X.509 証明書を使用して ID を確立します。証明書ベースの認証は、より強力なセキュリティ体制、認証情報の自動ローテーション、きめ細かなアクセスコントロールに使用できる属性をエンコードする機能を提供することで、ハイブリッド環境での利点を提供します。

## トラストアンカーとトラストモデル
<a name="concepts-trust-models"></a>

 IAM Roles Anywhere と認証機関 (CA) との間に信頼を確立するには、*トラストアンカー*を作成します。トラストアンカーは、 [AWS Private CA](https://docs.aws.amazon.com/acm-pca/latest/userguide/PcaWelcome.html)または外部 CA ソースへの参照です。以外のワークロードは、一時的な AWS 認証情報と引き換えに信頼された CA によって発行された証明書を使用して、信頼アンカーで AWS 認証されます。1 つの に複数のトラストアンカーを含めることができます AWS アカウント。詳細については、[IAM Roles Anywhere 「信頼モデル](https://docs.aws.amazon.com/rolesanywhere/latest/userguide/trust-model.html)」を参照してください。*信頼モデルは*、証明書の検証方法と、認証を成功させるために必要な証明書属性を定義します。

## 一時的な認証情報
<a name="concepts-temp-sec-creds"></a>

*一時的なセキュリティ認証情報*は、通常数分から数時間続く AWS リソースへの時間制限付きアクセスを提供します。長期アクセスキーとは異なり、これらの認証情報は自動的に期限切れになります。これにより、認証情報が侵害されるリスクが大幅に軽減され、分散システム全体のアクセス管理が簡素化されます。一時的な認証情報の詳細については、[IAM ドキュメントの「IAM ロールで一時的な認証情報を使用してベストプラクティスにアクセスする必要があるワークロード AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-workloads-use-roles)」を参照してください。

## IAM でのデュアルレイヤーアクセス許可
<a name="concepts-dual-layers-permissions"></a>

IAM Roles Anywhere は、IAM ロールとプロファイルの組み合わせを通じて 2 層アクセス許可モデルを実装します。*プロファイル*では、セッション用に作成されたアクセス許可を制限する IAM セッションポリシーを定義できます。プロファイルには多数の IAM ロールを含めることができますが、セッションポリシーは 1 つだけです。二層アクセス許可モデルは、アクセスが付与される前に両方のレイヤーでアクセス許可を明示的に許可する必要があるため、セキュリティを強化します。2 つのレイヤーは次のとおりです。
+ *IAM ロールレイヤー*は以下を定義します。
  + ロールを引き受けることができるエンティティを決定する信頼ポリシー
  + ロールがアクセスできる AWS リソースと実行できるアクションを指定するアクセス許可ポリシー
  + 特定の条件に基づいてアクセスをさらに制限できる条件要素
+ *IAM Roles Anywhere プロファイルレイヤー*は以下を実行します。
  + を通じて引き受けることができる IAM ロールを定義します。 IAM Roles Anywhere
  + ロールの引き受けに関する追加のコントロールを提供します
  + IAM ロール自体が広範なアクセスを許可している場合でも、アクセス許可フィルターとして機能する

例えば、IAM ロールが Amazon Simple Storage Service (Amazon S3) と Amazon DynamoDB へのアクセスを許可し、プロファイルが Amazon S3 アクセスのみを許可する場合、アプリケーションは Amazon S3 リソースにのみアクセスできます。このデュアルレイヤーアプローチは、両方のレイヤーで明示的なアクセス許可を要求することで、最小特権の原則を適用します。

## AWS 認証情報ヘルパー
<a name="concepts-credential-helper"></a>

認証情報[ヘルパー](https://github.com/aws/rolesanywhere-credential-helper) (GitHub) を使用して IAM Roles Anywhere、アプリケーションが AWS Command Line Interface AWS リソースにアクセスできるようにするときに使用するアンカー、プロファイル、ロールを信頼する (AWS CLI) を通じて を定義します。 AWS 認証情報ヘルパーツールを使用する呼び出しの例を次に示します。

```
./aws_signing_helper credential-process 
   \--certificate <Path to certificate>
   \--private-key <Path to private key> 
   \--trust-anchor-arn <Trust anchor ARN> 
   \--profile-arn <Profile 1 ARN>
   \--role-arn <Role 1 ARN>
```

このツールは、 の言語 SDK で使用できる`credential_process`機能と互換性があります。 SDKs AWS SDK で使用すると、これらの認証情報は有効期限が切れる前に自動的に更新されるため、認証情報の更新に追加の実装は必要ありません。認証情報ヘルパーは、証明書を使用して署名を作成し、エンドポイントを呼び出してセッション認証情報を取得するプロセスを管理します。次に、一時的なセキュリティ認証情報を標準の JSON 形式で呼び出しプロセスに返します。

詳細については、「一時的な[セキュリティ認証情報の取得 IAM Roles Anywhere](https://docs.aws.amazon.com/rolesanywhere/latest/userguide/credential-helper.html)」を参照してください。