

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

# AWS Secrets Manager アクセストークン認証の設定
<a name="channel-assembly-access-configuration-access-configuring"></a>

 AWS Secrets Manager アクセストークン認証を使用する場合は、次の手順を実行します。

1. [AWS Key Management Service カスタマーマネージドキーを作成する](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html)。

1. [AWS Secrets Manager シークレットを作成する](https://docs.aws.amazon.com/secretsmanager/latest/userguide/managing-secrets.html)。シークレットには、暗号化されたシークレット値として Secrets Manager に保存されているアクセストークンが含まれています。MediaTailor は、 AWS KMS カスタマーマネージドキーを使用してシークレット値を復号します。

1. Secrets Manager アクセストークン認証を使用するように AWS Elemental MediaTailor ソースの場所を設定します。

以下のセクションは、 AWS Secrets Manager アクセストークン認証の設定方法に関するステップバイステップガイダンスです。

**Topics**
+ [ステップ 1: AWS KMS 対称カスタマーマネージドキーを作成する](#channel-assembly-access-configuration-access-token-how-to-create-kms)
+ [ステップ 2: AWS Secrets Manager シークレットを作成する](#channel-assembly-access-configuration-access-token-how-to-create-secret)
+ [ステップ 3: アクセストークン認証で MediaTailor のソースロケーションを設定する](#channel-assembly-access-configuration-access-token-how-to-enable-access-token-auth)

## ステップ 1: AWS KMS 対称カスタマーマネージドキーを作成する
<a name="channel-assembly-access-configuration-access-token-how-to-create-kms"></a>

を使用して AWS Secrets Manager 、シークレットに`SecretString`保存された の形式でアクセストークンを保存します。`SecretString` は、ユーザーが作成、所有、および管理する *AWS KMS 対称カスタマーマネージドキー*を使用することで暗号化されます。MediaTailor は、対称カスタマーマネージドキーを使用して、権限のあるシークレットへのアクセスを容易にし、シークレット値を暗号化および復号化します。

カスタマーマネージドキーを使用することで、以下のようなタスクを実行できます。
+ キーポリシーの策定と維持
+ IAM ポリシーとグラントの策定と維持
+ キーポリシーの有効化と無効化
+ 暗号化キーマテリアルのローテーション
+ タグの追加

  Secrets Manager が AWS KMS を使用してシークレットを保護する方法については、「 *AWS Key Management Service デベロッパーガイド*」の[「 AWS Secrets Manager が AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/services-secrets-manager.html) を使用する方法」トピックを参照してください。

  カスタマーマネージドキーの詳細については、*AWS Key Management Service デベロッパーガイド*の「[カスタマーマネージドキー](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk)」を参照してください。

**注記**  
AWS KMS カスタマーマネージドキーの使用には 料金が適用されます。料金の詳細については、[AWS Key Management Service 「 料金](https://aws.amazon.com/kms/pricing/)表」ページを参照してください。

対称カスタマーマネージドキーは、 を使用する AWS マネジメントコンソール か AWS KMS APIs AWS KMS を使用してプログラムで作成できます。

### 対称カスタマーマネージドキーを作成する
<a name="channel-assembly-access-configuration-access-token-create-symmetric-key"></a>

*AWS Key Management Service デベロッパーガイド*にある[対称カスタマーマネージドキーの作成](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk)ステップを実行します。

キーの Amazon リソースネーム (ARN) を書き留めておきます。これは[ステップ 2: AWS Secrets Manager シークレットを作成する](#channel-assembly-access-configuration-access-token-how-to-create-secret) で必要になります。

### 暗号化コンテキスト
<a name="channel-assembly-access-configuration-access-token-encryption-context"></a>

*暗号化コンテキスト*は、データに関する追加のコンテキスト情報が含まれたキーバリューペアのオプションのセットです。

Secrets Manager は、`SecretString` を暗号化および復号化するときに[暗号化コンテキスト](https://docs.aws.amazon.com/kms/latest/developerguide/services-secrets-manager.html#asm-encryption-context)を含めます。暗号化コンテキストにはシークレット ARN が含まれており、これは暗号化をその特定のシークレットに制限します。追加のセキュリティ対策として、MediaTailor はユーザーに代わって AWS KMS 権限を作成します。MediaTailor は、Secrets Manager 暗号化コンテキストに含まれるシークレット ARN `SecretString`に関連付けられた のみを*復号*できるようにする [GrantConstraints](https://docs.aws.amazon.com/kms/latest/APIReference/API_GrantConstraints.html) オペレーションを適用します。

Secrets Manager が暗号化コンテキストを使用する方法については、「 *AWS Key Management Service デベロッパーガイド*」の[「暗号化コンテキスト](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context)」トピックを参照してください。

### キーポリシーの設定
<a name="channel-assembly-access-configuration-access-token-key-policy"></a>

キーポリシーは、カスタマーマネージドキーへのアクセスを制御します。すべてのカスタマーマネージドキーには、キーポリシーが 1 つ必要になります。このポリシーには、そのキーを使用できるユーザーとその使用方法を規定するステートメントが含まれています。カスタマーマネージドキーを作成するときは、デフォルトのキーポリシーを使用できます。詳細については、*AWS Key Management Service デベロッパーガイド*の「[AWS KMSの認証とアクセスコントロール](https://docs.aws.amazon.com/kms/latest/developerguide/control-access.html)」を参照してください。

MediaTailor ソースロケーションリソースでカスタマーマネージドキーを使用するには、[CreateSourceLocation](https://docs.aws.amazon.com/mediatailor/latest/apireference/API_CreateSourceLocation.html) または [UpdateSourceLocation](https://docs.aws.amazon.com/mediatailor/latest/apireference/API_UpdateSourceLocation.html) を呼び出す IAM プリンシパルに、次の API オペレーションを使用するアクセス許可を付与する必要があります。
+ `kms:CreateGrant` - カスタマーマネージドキーにグラントを追加します。MediaTailor はカスタマーマネージドキーに対するグラントを作成します。これは、アクセストークン認証が設定されたソースロケーションの作成と更新に MediaTailor がこのキーを使用することを可能にします。[での Grants の使用の詳細については AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html)、「 *AWS Key Management Service デベロッパーガイド」を参照してください。*

  これは、MediaTailor が以下を実行できるようにします。
  + [GetSecretValue](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_GetSecretValue.html) `Decrypt`を呼び出すときに Secrets Manager シークレットを正常に取得できるように、 を呼び出します。
  + ソースロケーションが削除された、またはシークレットへのアクセス権が取り消されたときにグラントを廃止するために `RetireGrant` を呼び出す。

以下は、MediaTailor に追加できるポリシーステートメントの例です。

```
{
        "Sid": "Enable MediaTailor Channel Assembly access token usage for the MediaTailorManagement IAM role",
        "Effect": "Allow",
        "Principal": {
        "AWS": "arn:aws:iam::account number:role/MediaTailorManagement"
    },
     "Action": "kms:CreateGrant",
     "Resource": "*",
     "Condition": {
         "StringEquals": {
             "kms:ViaService": "mediatailor.region.amazonaws.com"
        }
    }
}
```

ポリシーでのアクセス許可の指定とキーアクセスのトラブルシューティングの詳細については、「 *AWS Key Management Service デベロッパーガイド*」の「 [のグラン AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html)ト」を参照してください。

## ステップ 2: AWS Secrets Manager シークレットを作成する
<a name="channel-assembly-access-configuration-access-token-how-to-create-secret"></a>

Secrets Manager を使用して、 AWS KMS カスタマーマネージドキーで暗号化`SecretString`された の形式でアクセストークンを保存します。MediaTailor は、`SecretString` の復号化にこのキーを使用します。Secrets Manager が AWS KMS を使用してシークレットを保護する方法については、「 *AWS Key Management Service デベロッパーガイド*」の[「 AWS Secrets Manager が AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/services-secrets-manager.html) を使用する方法」トピックを参照してください。

をソースロケーションオリジン AWS Elemental MediaPackage として使用し、MediaTailor Secrets Manager アクセストークン認証を使用する場合は、「」の手順に従います[CDN 認可を使用する MediaPackage エンドポイントとの統合](channel-assembly-access-configuration-access-token-integrating-emp-cdn-auth.md)。

Secrets Manager API を使用して、 AWS マネジメントコンソール またはプログラムで Secrets Manager シークレットを作成できます APIs 。

### シークレットを作成する
<a name="channel-assembly-access-configuration-access-token-create-secret"></a>

*AWS Secrets Manager 「 ユーザーガイド*」の[「 でシークレットを作成および管理する AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/managing-secrets.html)」の手順に従います。

シークレットを作成するときは、以下の考慮事項に留意してください。
+ [KmsKeyId](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_ReplicaRegionType.html#SecretsManager-Type-ReplicaRegionType-KmsKeyId) は、ステップ 1 で作成したカスタマーマネージドキーのキー [ARN](https://docs.aws.amazon.com/kms/latest/developerguide/find-cmk-id-arn.html) である必要があります。
+ [SecretString](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_CreateSecret.html#SecretsManager-CreateSecret-request-SecretString) を指定する必要があります。`SecretString` は、アクセストークンが含まれる、キーと値が含まれた有効な JSON オブジェクトである必要があります。例えば、\$1"MyAccessTokenIdentifier":"112233445566"\$1 などです。値の長さは 8～128 文字にしてください。

  アクセストークン認証を使用してソースロケーションを設定するときは、`SecretString` キーを指定します。MediaTailor は、`SecretString` に保存されているアクセストークンの検索と取得にこのキーを使用します。

  シークレット ARN と `SecretString` キーを書き留めておきます。これらは、アクセストークン認証を使用するようにソースロケーションを設定するときに使用します。

### リソースベースのシークレットポリシーのアタッチ
<a name="channel-assembly-access-configuration-access-token-secret-policy"></a>

MediaTailor がシークレット値にアクセスできるようにするには、シークレットにリソースベースのポリシーをアタッチする必要があります。詳細については、[「 ユーザーガイド」の「Secrets Manager シークレットにアクセス許可ポリシーを](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_resource-policies.html)アタッチする」を参照してください。 *AWS Secrets Manager *

以下は、MediaTailor に追加できるポリシーステートメントの例です。

------
#### [ JSON ]

****  

```
{

    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "mediatailor.amazonaws.com" 
            },
            "Action": "secretsmanager:GetSecretValue",
            "Resource": "arn:aws:secretsmanager:us-east-1:111122223333:secret:secret-name" 
        } 
    ] 

}
```

------

## ステップ 3: アクセストークン認証で MediaTailor のソースロケーションを設定する
<a name="channel-assembly-access-configuration-access-token-how-to-enable-access-token-auth"></a>

Secrets Manager アクセストークン認証は、 を使用する AWS マネジメントコンソール かMediaTailor APIs を使用してプログラムで設定できます。

**Secrets Manager アクセストークン認証でソースロケーションを設定する**

「 *AWS Elemental MediaTailor ユーザーガイド*」の[Access configuration](channel-assembly-creating-source-locations.md#access-configuration-console)「」の手順に従います。