Amazon Lex V2 で IAM が機能する仕組み - Amazon Lex

Amazon Lex V2 で IAM が機能する仕組み

IAM を使用して Amazon Lex V2 へのアクセスを管理する前に、Amazon Lex V2 で利用できる IAM の機能について学びます。

大部分の 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-name、または aws: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 と記載されたサービスを見つけます。サービスにリンクされたロールに関するドキュメントをサービスで表示するには、[はい] リンクを選択します。