AWS Elemental MediaConnect を使用した SPEKE 暗号化の設定
SPEKE 暗号化を使用する使用権限を付与する前に、次のステップを実行する必要があります。
ステップ 1. — 暗号化キーを管理する条件付きアクセス (CA) プラットフォームキープロバイダーに依頼します。このプロセスでは、Amazon API Gateway で API を作成します。この API は、AWS Elemental MediaConnect に代わってリクエストをキープロバイダーに送信します。
ステップ 2 — ステップ 1 で作成した API がキープロバイダーにリクエストを行うためのプロキシとして機能することを許可する IAM ポリシーを作成します。
ステップ 3 — IAM ロールを作成し、ステップ 2 で作成したポリシーをアタッチします。次に、AWS Elemental MediaConnect を、このロールを引き受け、ユーザーに代わって API Gateway エンドポイントにアクセスすることが許可される、信頼できるエンティティとして設定します。
ステップ 1: CA プロバイダーとのオンボーディング
AWS Elemental MediaConnect で SPEKE を使用するには、CA プラットフォームキープロバイダーが必要です。以下の AWS パートナーが、MediaConnect で SPEKE をカスタマイズするための条件付きアクセス (CA) ソリューションを提供しています。
コンテンツ作成者の場合は、CA プラットフォームのキープロバイダーに連絡して、オンボーディングプロセスの支援を受けてください。CA プラットフォームキープロバイダの助けを借りて、誰がどのコンテンツにアクセスできるかを管理できます。
オンボーディングプロセス中は、以下の点に注意してください。
-
POST
メソッドリクエストの ARN — API ゲートウェイで作成したリクエストに AWS が割り当てる Amazon リソースネーム (ARN)。 -
定数初期化ベクトル (オプション) — コンテンツを暗号化するためのキーで使用する、32 文字の文字列により表示される 128 ビット (16 バイト) の 16 進値。
-
デバイス ID — キープロバイダーで設定する各デバイスの固有識別子。各デバイスはコンテンツの異なる受信者を表します。
-
リソース ID — キープロバイダーと共に構成するコンテンツごとに作成する一意の識別子。
-
URL — Amazon API Gateway で作成した API に AWS により割り当てられた URL。
これらの値は、後で MediaConnect で 使用権限 を設定するときに必要になります。
ステップ 2: API ゲートウェイをプロキシとして動作させる IAM ポリシーを作成する
ステップ 1 では、暗号化キーを管理する CA プラットフォームキープロバイダーと協力しました。このステップでは、API ゲートウェイがユーザーに代わってリクエストを行うことを許可する IAM ポリシーを作成します。API ゲートウェイは、アカウントとキープロバイダ間の通信のプロキシとして機能します。
API ゲートウェイプロキシの IAM ポリシーを作成するには
-
IAM コンソールのナビゲーションペインから、[Policies] (ポリシー) を選択します。
-
ポリシーの作成 を選択し、JSON タブを選択します。
-
以下のフォーマットを使用するポリシーを入力します。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "execute-api:Invoke" ], "Resource": [ "arn:aws:execute-api:
us-west-2
:111122223333
:1abcdefghi
/*/POST/*" ] } ] }Resource
セクションで、サンプルの Amazon リソースネーム (ARN) を、CA プラットフォームキープロバイダーを使用して API ゲートウェイPOST
で作成したメソッドリクエストの ARN に置き換えます。 -
[Review policy] (ポリシーの確認) を選択します。
-
[Name] (名前) に
APIGateway-Proxy-Access
と入力します。 -
[Create policy] (ポリシーを作成) を選択します。
ステップ 3: 信頼できる関係を持つ IAM ロールを作成する
ステップ 2 では、API ゲートウェイがプロキシとして機能し、ユーザーに代わってリクエストを行うことを許可する APIGateway プロキシアクセス ポリシーを作成しました。このステップでは、IAM ロールを作成し、以下のアクセス許可をアタッチします。
-
APIGateway プロキシアクセス ポリシーにより、Amazon API Gateway がユーザーに代わってプロキシとして機能し、アカウントと CA プラットフォームキープロバイダとの間でリクエストを行うことができます。これは ステップ 1 で作成したポリシーです。
-
信頼関係 ポリシーにより、AWS Elemental MediaConnect がユーザーに代わってロールを引き受けることができます。このポリシーは次の手順の一部として作成します。
信頼できる関係を持つ IAM ロールを作成するには
-
IAM コンソールのナビゲーションペインで [Roles] (ロール) をクリックします。
-
[Role] (ロール) ページで、[Create role] (ロールの作成) を選択します。
-
ロールの作成 ページの 信頼されたエンティティのタイプを選択 セクションで、AWS service (AWS サービス) を選択します (デフォルト)。
-
[Choose the service that will use this role] (このロールを使用するサービスを選択) で、[EC2] を選択します。
EC2 を選択する理由は、現在、AWS Elemental MediaConnect はリストに含まれていないためです。EC2 を選択すると、ロールを作成できます。後の手順で、このロールを変更し、EC2 を MediaConnect に置き換えます。
-
[Next: Permissions] (次へ: 許可) を選択します。
-
フィルターポリシー で、顧客が管理するポリシー を選択します。
-
APIGateway プロキシアクセス の横にあるチェックボックスを選択し、次へ: タグ を選択します。
-
タグ値 (オプション) を入力し、次へ: レビューを選択します。
-
ロール名 に、
SpekeAccess
など、名前を入力します。 -
ロールの説明 では、デフォルトのテキストをこのロールの目的の説明に置き換えます。例えば、
Allows AWS Elemental MediaConnect to talk to API Gateway on my behalf.
などです。 -
[Create role] (ロールの作成) を選択します。
-
ページの上部に表示される確認メッセージで、作成したロール名を選択します。
-
信頼関係 を選択し、信頼関係の編集 を選択します。
-
ポリシードキュメント では、ポリシーを次のように変更します。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "mediaconnect.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
[Update Trust Policy] (信頼ポリシーの更新) を選択します。
-
[Summary] (概要) ページで、[Role ARN] (ロール ARN) の値をメモします。以下のような形式です:
arn:aws:iam::111122223333:role/SpekeAccess