Amazon Lex V2 で IAM が機能する仕組み
IAM を使用して Amazon Lex V2 へのアクセスを管理する前に、Amazon Lex V2 で利用できる IAM の機能について学びます。
| IAM の機能 | Amazon Lex V2 サポート |
|---|---|
|
あり |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
いいえ |
|
|
なし |
|
|
あり |
|
|
いいえ |
|
|
あり |
|
|
あり |
|
|
部分的 |
大部分の IAM 機能が Amazon Lex V2 およびその他の AWS サービスでどのように機能するかのおおまかな説明については、「IAM ユーザーガイド」の「IAM と連携する AWS サービス」を参照してください。
Amazon Lex V2 のアイデンティティベースのポリシー
アイデンティティベースのポリシーのサポート: あり
アイデンティティベースポリシーは、IAM ユーザー、ユーザーグループ、ロールなど、アイデンティティにアタッチできる JSON 許可ポリシードキュメントです。これらのポリシーは、ユーザーとロールが実行できるアクション、リソース、および条件をコントロールします。アイデンティティベースポリシーの作成方法については、「IAM ユーザーガイド」の「カスタマー管理ポリシーでカスタム IAM アクセス許可を定義する」を参照してください。
IAM アイデンティティベースのポリシーでは、許可または拒否するアクションとリソース、およびアクションを許可または拒否する条件を指定できます。JSON ポリシーで使用できるすべての要素について学ぶには、「IAM ユーザーガイド」の「IAM JSON ポリシーの要素のリファレンス」を参照してください。
Amazon Lex V2 のアイデンティティベースのポリシー例
Amazon Lex V2 のアイデンティティベースポリシーの例を確認するには、「Amazon Lex V2 のアイデンティティベースのポリシー例」を参照してください。
Amazon Lex V2 内のリソースベースのポリシー
リソースベースのポリシーのサポート: あり
リソースベースのポリシーは、リソースにアタッチする JSON ポリシードキュメントです。リソースベースのポリシーには例として、IAM ロールの信頼ポリシーや Amazon S3 バケットポリシーがあげられます。リソースベースのポリシーをサポートするサービスでは、サービス管理者はポリシーを使用して特定のリソースへのアクセスを制御できます。ポリシーがアタッチされているリソースの場合、指定されたプリンシパルがそのリソースに対して実行できるアクションと条件は、ポリシーによって定義されます。リソースベースのポリシーで、プリンシパルを指定する必要があります。プリンシパルには、ユーザー、ロール、フェデレーティッドユーザー、または AWS のサービスを含めることができます。
クロスアカウントポリシーまたはクロスリージョンポリシーを使用できません。クロスアカウントまたはクロスリージョン ARN を持つリソースのポリシーを作成すると、エラーが返されます。
サービスは、ボットまたはボットエイリアスにアタッチされる、ボットポリシーとボットエイリアスポリシーと呼ばれるリソースベースのポリシーをサポートしています。これらのポリシーは、ボットまたはボットエイリアスに対してアクションを実行できるプリンシパルを定義します。
アクションは特定のリソースでのみ使用できます。例えば、UpdateBot アクションはボットリソースでのみ使用でき、UpdateBotAlias アクションは、ボットエイリアスリソースでのみ使用できます。ポリシーで指定されたリソースで使用できないアクションをポリシーで指定すると、エラーが返されます。アクションの一覧と、使用できるリソースのリストについては、次の表を参照してください。
| アクション | リソースベースのポリシーのサポート | リソース |
|---|---|---|
| BuildBotLocale | サポート | BotId |
| CreateBot | いいえ | |
| CreateBotAlias | いいえ | |
| CreateBotChannel [アクセス許可のみ] | サポート | BotId |
| CreateBotLocale | サポート | BotId |
| CreateBotVersion | サポート | BotId |
| CreateExport | サポート | BotId |
| CreateIntent | サポート | BotId |
| CreateResourcePolicy | サポート | BotId、BotAliasId |
| CreateSlot | サポート | BotId |
| CreateSlotType | サポート | BotId |
| CreateUploadUrl | いいえ | |
| DeleteBot | サポート | BotId、BotAliasId |
| DeleteBotAlias | サポート | BotAliasId |
| DeleteBotChannel [アクセス許可のみ] | サポート | BotId |
| DeleteBotLocale | サポート | BotId |
| DeleteBotVersion | サポート | BotId |
| DeleteExport | サポート | BotId |
| DeleteImport | サポート | BotId |
| DeleteIntent | サポート | BotId |
| DeleteResourcePolicy | サポート | BotId、BotAliasId |
| DeleteSession | サポート | BotAliasId |
| DeleteSlot | サポート | BotId |
| DeleteSlotType | サポート | BotId |
| DescribeBot | サポート | BotId |
| DescribeBotAlias | サポート | BotAliasId |
| DescribeBotChannel [アクセス許可のみ] | サポート | BotId |
| DescribeBotLocale | サポート | BotId |
| DescribeBotVersion | サポート | BotId |
| DescribeExport | サポート | BotId |
| DescribeImport | サポート | BotId |
| DescribeIntent | サポート | BotId |
| DescribeResourcePolicy | サポート | BotId、BotAliasId |
| DescribeSlot | サポート | BotId |
| DescribeSlotType | サポート | BotId |
| GetSession | サポート | BotAliasId |
| ListBotAliases | サポート | BotId |
| ListBotChannels [アクセス許可のみ] | サポート | BotId |
| ListBotLocales | サポート | BotId |
| ListBots | いいえ | |
| ListBotVersions | サポート | BotId |
| ListBuiltInIntents | いいえ | |
| ListBuiltIntSlotTypes | いいえ | |
| ListExports | いいえ | |
| ListImports | いいえ | |
| ListIntents | サポート | BotId |
| ListSlots | サポート | BotId |
| ListSlotTypes | サポート | BotId |
| PutSession | サポート | BotAliasId |
| RecognizeText | サポート | BotAliasId |
| RecognizeUtterance | サポート | BotAliasId |
| StartConversation | サポート | BotAliasId |
| StartImport | サポート | BotId、BotAliasId |
| TagResource | いいえ | |
| UpdateBot | サポート | BotId |
| UpdateBotAlias | サポート | BotAliasId |
| UpdateBotLocale | サポート | BotId |
| UpdateBotVersion | サポート | BotId |
| UpdateExport | サポート | BotId |
| UpdateIntent | サポート | BotId |
| UpdateResourcePolicy | サポート | BotId、BotAliasId |
| UpdateSlot | サポート | BotId |
| UpdateSlotType | サポート | BotId |
| UntagResource | いいえ |
リソースベースのポリシーをボットまたはボットエイリアスにアタッチする方法については、「Amazon Lex V2 内のリソースベースのポリシーの例」を参照してください。
Amazon Lex V2 内のリソースベースのポリシーの例
Amazon Lex V2 リソースベースのポリシーの例を表示するには、「Amazon Lex V2 内のリソースベースのポリシーの例」を参照してください。
Amazon Lex V2 のポリシーアクション
ポリシーアクションのサポート:あり
管理者は AWS JSON ポリシーを使用して、だれが何にアクセスできるかを指定できます。つまり、どのプリンシパルがどんなリソースにどんな条件でアクションを実行できるかということです。
JSON ポリシーの Action 要素にはポリシー内のアクセスを許可または拒否するために使用できるアクションが記述されます。このアクションは関連付けられたオペレーションを実行するためのアクセス許可を付与するポリシーで使用されます。
Amazon Lex V2 アクションのリストを確認するには、「サービス認可リファレンス」の「Amazon Lex V2 で定義されるアクション」を参照してください。
Amazon Lex V2 のポリシーアクションは、アクションの前にプレフィックスを使用します。
lex
単一のステートメントで複数のアクションを指定するには、アクションをカンマで区切ります。
"Action": [ "lex:action1", "lex:action2" ]
Amazon Lex V2 のアイデンティティベースポリシーの例を確認するには、「Amazon Lex V2 のアイデンティティベースのポリシー例」を参照してください。
Amazon Lex V2 のポリシーリソース
ポリシーリソースのサポート: あり
管理者は AWS JSON ポリシーを使用して、だれが何にアクセスできるかを指定できます。つまり、どのプリンシパルがどんなリソースにどんな条件でアクションを実行できるかということです。
Resource JSON ポリシー要素はアクションが適用されるオブジェクトを指定します。ベストプラクティスとして、Amazon リソースネーム (ARN) を使用してリソースを指定します。リソースレベルのアクセス許可をサポートしないアクションの場合は、ワイルドカード (*) を使用して、ステートメントがすべてのリソースに適用されることを示します。
"Resource": "*"
Amazon Lex V2 リソースのタイプとその ARN のリストを確認するには、「サービス認可リファレンス」 の「Amazon Lex V2 で定義されるリソース」を参照してください。どのアクションで各リソースの ARN を指定できるかについては、「Amazon Lex V2 で定義されるアクション」を参照してください。
Amazon Lex V2 のアイデンティティベースポリシーの例を確認するには、「Amazon Lex V2 のアイデンティティベースのポリシー例」を参照してください。
Amazon Lex V2 のポリシー条件キー
サービス固有のポリシー条件キーへのサポート: なし
管理者は AWS JSON ポリシーを使用して、だれが何にアクセスできるかを指定できます。つまり、どのプリンシパルがどんなリソースにどんな条件でアクションを実行できるかということです。
Condition 要素は、定義された基準に基づいてステートメントが実行される時期を指定します。イコールや未満などの 条件演算子 を使用して条件式を作成して、ポリシーの条件とリクエスト内の値を一致させることができます。すべての AWS グローバル条件キーを確認するには、IAM ユーザーガイドのAWS グローバル条件コンテキストキーを参照してください。
Amazon Lex V2 の条件キーのリストを確認するには、「サービス認可リファレンス」の「Amazon Lex V2 の条件キー」を参照してください。条件キーを使用できるアクションとリソースについては、「Amazon Lex V2 で定義されるアクション」を参照してください。
Amazon Lex V2 のアイデンティティベースポリシーの例を確認するには、「Amazon Lex V2 のアイデンティティベースのポリシー例」を参照してください。
Amazon Lex V2 のアクセスコントロールリスト (ACL)
ACL のサポート: なし
アクセスコントロールリスト (ACL) は、どのプリンシパル (アカウントメンバー、ユーザー、またはロール) がリソースにアクセスするための許可を持つかを制御します。ACL はリソースベースのポリシーに似ていますが、JSON ポリシードキュメント形式は使用しません。
Amazon Lex V2 での属性ベースのアクセスコントロール (ABAC)
ABAC (ポリシー内のタグ) のサポート: あり
属性ベースのアクセス制御 (ABAC) は、タグと呼ばれる属性に基づいてアクセス許可を定義する認可戦略です。IAM エンティティと AWS リソースにタグを付けることで、プリンシパルのタグがリソースのタグと一致するときに操作を許可する ABAC ポリシーを設計できます。
タグに基づいてアクセスを管理するには、aws:ResourceTag/、key-nameaws:RequestTag/、または key-nameaws:TagKeys の条件キーを使用して、ポリシーの 条件要素でタグ情報を提供します。
サービスがすべてのリソースタイプに対して 3 つの条件キーすべてをサポートする場合、そのサービスの値はありです。サービスが一部のリソースタイプに対してのみ 3 つの条件キーのすべてをサポートする場合、値は「部分的」になります。
ABAC の詳細については、「IAM ユーザーガイド」の「ABAC 認可でアクセス許可を定義する」を参照してください。ABAC をセットアップする手順を説明するチュートリアルについては、「IAM ユーザーガイド」の「属性ベースのアクセスコントロール (ABAC) を使用する」を参照してください。
Amazon Lex V2 での一時的な認証情報の使用
一時的な認証情報のサポート: なし
一時的な認証情報は、AWS リソースへの短期的なアクセスを提供し、フェデレーションまたはスイッチロールの使用時に自動的に作成されます。AWS では、長期的なアクセスキーを使用する代わりに、一時的な認証情報を動的に生成することをお勧めします。詳細については、「IAM ユーザーガイド」の「IAM の一時的な認証情報」および「IAM と連携する AWS のサービス」を参照してください。
Amazon Lex V2 のクロスサービスプリンシパルのアクセス許可
転送アクセスセッション (FAS) のサポート: あり
転送アクセスセッション (FAS) は、AWS のサービス を呼び出すプリンシパルのアクセス許可を AWS のサービス のリクエストと併せて使用し、ダウンストリームサービスに対してリクエストを行います。FAS リクエストを行う際のポリシーの詳細については、「転送アクセスセッション」を参照してください。
Amazon Lex V2 のサービスロール
サービスロールのサポート: あり
サービスロールとは、サービスがユーザーに代わってアクションを実行するために引き受ける IAM ロールです。IAM 管理者は、IAM 内からサービスロールを作成、変更、削除できます。詳細については、「IAM ユーザーガイド」の「AWS のサービス に許可を委任するロールを作成する」を参照してください。
警告
サービスロールのアクセス許可を変更すると、Amazon Lex V2 の機能が破損する可能性があります。Amazon Lex V2 が指示する場合以外は、サービスロールを編集しないでください。
Amazon Lex V2 のサービスリンクロール
サービスにリンクされたロールをサポート: 一部
サービスにリンクされたロールは、AWS のサービスにリンクされているサービスロールの一種です。サービスがロールを引き受け、ユーザーに代わってアクションを実行できるようになります。サービスにリンクされたロールは、AWS アカウント に表示され、サービスによって所有されます。IAM 管理者は、サービスにリンクされたロールのアクセス許可を表示できますが、編集することはできません。
サービスにリンクされたロールの作成または管理の詳細については、「IAM と提携する AWS のサービス」を参照してください。表の「サービスリンクロール」列に Yes と記載されたサービスを見つけます。サービスにリンクされたロールに関するドキュメントをサービスで表示するには、[はい] リンクを選択します。