ユーザーアクセス許可 - Amazon Q Developer
Amazon Q Developer Pro サブスクリプションを利用した Amazon Q へのアクセスをユーザーに許可するAmazon Q にカスタマーマネージドキーへのアクセスを許可するユーザーに Amazon Q とのチャットを許可するで Amazon Q CLI の使用をユーザーに許可する AWS CloudShellユーザーにコマンドラインで変換の実行を許可するユーザーが Amazon Q でコンソールエラーをトラブルシューティングすることを許可するAmazon Q を使用して CLI コマンドからコードを生成することをユーザーに許可するAmazon Q とのリソースに関するチャットをユーザーに許可するAmazon Q がチャットでユーザーに代わってアクションを実行することを許可するAmazon Q がユーザーに代わって特定のアクションを実行するためのアクセス許可を拒否するAmazon Q のアクセス許可でユーザーに代わって特定のアクションを実行することを許可するAmazon Q に特定のリージョンでユーザーに代わってアクションを実行するアクセス許可を付与するAmazon Q のアクセス許可でユーザーに代わってアクションを実行することを拒否する1 つのプロバイダーのプラグインとのチャットをユーザーに許可するユーザーに特定のプラグインとのチャットを許可するAmazon Q へのアクセスの拒否自分のアクセス許可の表示をユーザーに許可する

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

ユーザーアクセス許可

次のポリシーでは、ユーザーが AWS アプリケーションやウェブサイトで Amazon Q Developer の機能にアクセスすることを許可します。

Amazon Q Developer への管理アクセスを有効にするポリシーについては、「管理者用のアクセス許可」を参照してください。

Amazon Q Developer Pro サブスクリプションを利用した Amazon Q へのアクセスをユーザーに許可する

次のポリシー例では、Amazon Q Developer Pro サブスクリプションで Amazon Q を使用するアクセス許可を付与します。これらのアクセス許可がないと、ユーザーは Amazon Q の無料利用枠にしかアクセスできません。Amazon Q とチャットしたり、他の Amazon Q 機能を使用するには、このセクションのポリシー例で付与されているアクセス許可など、追加のアクセス許可が必要です。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowGetIdentity", "Effect": "Allow", "Action": [ "q:GetIdentityMetaData" ], "Resource": "*" }, { "Sid": "AllowSetTrustedIdentity", "Effect": "Allow", "Action": [ "sts:SetContext" ], "Resource": "arn:aws:sts::*:self" } ] }

Amazon Q にカスタマーマネージドキーへのアクセスを許可する

次のポリシー例では、Amazon Q にキーへのアクセスを許可することで、カスタマーマネージドキーで暗号化された機能へのアクセス許可をユーザーに付与します。このポリシーは、管理者が暗号化用にカスタマーマネージドキーをセットアップしている場合に Amazon Q を使用するために必要です。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "QKMSDecryptGenerateDataKeyPermissions", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:GenerateDataKeyWithoutPlaintext", "kms:ReEncryptFrom", "kms:ReEncryptTo" ], "Resource": [ "arn:aws:kms:{{region}}:{{account_id}}:key/[[key_id]]" ], "Condition": { "StringLike": { "kms:ViaService": [ "q.{{region}}.amazonaws.com" ] } } } ] }

ユーザーに Amazon Q とのチャットを許可する

次のポリシー例では、コンソールで Amazon Q とチャットするための許可を付与します。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAmazonQConversationAccess", "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations" ], "Resource": "*" } ] }

で Amazon Q CLI の使用をユーザーに許可する AWS CloudShell

次のポリシー例では、 で Amazon Q CLI を使用するアクセス許可を付与します AWS CloudShell。

注記

codewhisperer プレフィックスは、Amazon Q Developer とマージされたサービスのレガシー名です。詳細については、「Amazon Q Developer の名称変更 - 変更の概要」を参照してください。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "codewhisperer:GenerateRecommendations", "codewhisperer:ListCustomizations", ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage" ], "Resource": "*" } ] }

ユーザーにコマンドラインで変換の実行を許可する

次のポリシー例では、変換用の Amazon Q コマンドラインツールを使用してコードを変換するアクセス許可を付与します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "qdeveloper:StartAgentSession", "qdeveloper:ImportArtifact", "qdeveloper:ExportArtifact", "qdeveloper:TransformCode" ] "Resource": "*" } ] }

ユーザーが Amazon Q でコンソールエラーをトラブルシューティングすることを許可する

次のポリシー例では、Amazon Q でコンソールエラーをトラブルシューティングするためのアクセス許可を付与します。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAmazonQTroubleshooting", "Effect": "Allow", "Action": [ "q:StartTroubleshootingAnalysis", "q:GetTroubleshootingResults", "q:StartTroubleshootingResolutionExplanation", "q:UpdateTroubleshootingCommandResult", "q:PassRequest", "cloudformation:GetResource" ], "Resource": "*" } ] }

Amazon Q を使用して CLI コマンドからコードを生成することをユーザーに許可する

次のポリシー例では、記録された CLI コマンドから Amazon Q を使用してコードを生成するためのアクセス許可を付与します。これにより、Console-to-Code 機能を使用できます。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAmazonQConsoleToCode", "Effect": "Allow", "Action": "q:GenerateCodeFromCommands", "Resource": "*" } ] }

Amazon Q とのリソースに関するチャットをユーザーに許可する

次のポリシー例では、リソースについて Amazon Q とチャットするアクセス許可を付与し、Amazon Q がユーザーに代わってリソース情報を取得できるようにします。Amazon Q には、IAM ID がアクセス許可を持つリソースへのアクセス許可のみがあります。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAmazonQPassRequest", "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations", "q:PassRequest" ], "Resource": "*" }, { "Sid": "AllowCloudControlReadAccess", "Effect": "Allow", "Action": [ "cloudformation:GetResource", "cloudformation:ListResources" ], "Resource": "*" } ] }

Amazon Q がチャットでユーザーに代わってアクションを実行することを許可する

次のポリシー例では、Amazon Q とチャットするアクセス許可を付与し、Amazon Q がユーザーに代わってアクションを実行することを許可します。Amazon Q には、IAM ID が実行するアクセス許可を持つアクションを実行するためのアクセス許可のみが与えられます。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAmazonQPassRequest", "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations", "q:PassRequest" ], "Resource": "*" } ] }

Amazon Q がユーザーに代わって特定のアクションを実行するためのアクセス許可を拒否する

次のポリシー例では、Amazon Q とチャットするアクセス許可を付与し、Amazon EC2 アクションを除き、IAM ID が実行するアクセス許可を持つアクションをユーザーに代わって実行することを Amazon Q に許可します。このポリシーは、aws:CalledVia グローバル条件キーを使用して、Amazon Q が呼び出す場合にのみ Amazon EC2 アクションが拒否されるように指定します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations", "q:PassRequest" ], "Resource": "*" }, { "Effect": "Deny", "Action": [ "ec2:*" ], "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:CalledVia": ["q.amazonaws.com"] } } } ] }

Amazon Q のアクセス許可でユーザーに代わって特定のアクションを実行することを許可する

次のポリシー例では、Amazon Q とチャットするアクセス許可を付与し、Amazon EC2 アクションを除き、IAM ID が実行するアクセス許可を持つアクションをユーザーに代わって実行することを Amazon Q に許可します。このポリシーは、Amazon EC2 アクションを実行するアクセス許可を IAM ID に付与しますが、Amazon Q は ec2:describeInstances アクションしか実行できません。このポリシーは、aws:CalledVia グローバル条件キーを使用して、Amazon Q には ec2:describeInstances を呼び出すことのみが許可され、他の Amazon EC2 アクションを呼び出すことは許可されないように指定します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations", "q:PassRequest" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:*" ], "Resource": "*", "Condition": { "ForAnyValue:StringNotEquals": { "aws:CalledVia": ["q.amazonaws.com"] } } }, { "Effect": "Allow", "Action": [ "ec2:describeInstances" ], "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:CalledVia": ["q.amazonaws.com"] } } } ] }

Amazon Q に特定のリージョンでユーザーに代わってアクションを実行するアクセス許可を付与する

次のポリシーの例では、Amazon Q とチャットするアクセス許可を付与し、ユーザーに代わってアクションを実行するときに Amazon Q が us-east-1 リージョンと us-west-2 リージョンに対してのみ呼び出しを行うことを許可します。Amazon Q は他のリージョンに呼び出しを行うことはできません。呼び出し先リージョンを指定する方法の詳細については、「AWS Identity and Access Management ユーザーガイド」の「aws:RequestedRegion」を参照してください。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations", "q:PassRequest" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestedRegion": [ "us-east-1", "us-west-2" ] } } } ] }

Amazon Q のアクセス許可でユーザーに代わってアクションを実行することを拒否する

次のポリシー例では、Amazon Q がユーザーに代わってアクションを実行できないようにします。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAmazonQPassRequest", "Effect": "Deny", "Action": [ "q:PassRequest" ], "Resource": "*" } ] }

1 つのプロバイダーのプラグインとのチャットをユーザーに許可する

次のポリシー例では、管理者が設定した特定のプロバイダーのプラグインとチャットするアクセス許可を付与します。このアクセス許可は、プラグイン ARN でワイルドカード文字 () で指定します*。プラグインを削除して再設定すると、これらのアクセス許可を持つユーザーは、新しく設定されたプラグインへのアクセスを保持します。このポリシーを使用するには、 Resourceフィールドの ARN で以下を置き換えます。

  • AWS-account-ID – プラグインが設定されているアカウントのアカウント AWS ID。

  • plugin-name – アクセスを許可するプラグインの名前。、CloudZeroDatadog、 などWiz。プラグイン名フィールドでは、大文字と小文字が区別されます。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAmazonQConversationAccess", "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations" ], "Resource": "*" }, { "Effect": "AllowPluginAccess", "Action": [ "q:UsePlugin" ], "Resource": "arn:aws:q::AWS-account-ID:plugin/plugin-name/*" } ] }

ユーザーに特定のプラグインとのチャットを許可する

次のポリシー例では、プラグイン ARN で指定された特定のプラグインとチャットするアクセス許可を付与します。プラグインを削除して再設定すると、このポリシーでプラグイン ARN が更新されない限り、ユーザーは新しいプラグインにアクセスできなくなります。このポリシーを使用するには、 Resourceフィールドの ARN で以下を置き換えます。

  • AWS-account-ID – プラグインが設定されているアカウントのアカウント AWS ID。

  • plugin-name – アクセスを許可するプラグインの名前。、CloudZeroDatadog、 などWiz。プラグイン名フィールドでは、大文字と小文字が区別されます。

  • plugin-ARN – アクセスを許可するプラグインの ARN。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAmazonQConversationAccess", "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations" ], "Resource": "*" }, { "Effect": "AllowPluginAccess", "Action": [ "q:UsePlugin" ], "Resource": "arn:aws:q::AWS-account-ID:plugin/plugin-name/plugin-ARN" } ] }

Amazon Q へのアクセスの拒否

次のポリシー例では、コンソールで Amazon Q を使用するすべてのアクセス許可を拒否します。

注記

Amazon Q へのアクセスを拒否しても、 AWS コンソール、 AWS ウェブサイト、 AWS ドキュメントページ、または の Amazon Q アイコンまたはチャットパネルは無効になりません AWS Console Mobile Application。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAmazonQFullAccess", "Effect": "Deny", "Action": [ "q:*" ], "Resource": "*" } ] }

自分のアクセス許可の表示をユーザーに許可する

この例では、ユーザーアイデンティティにアタッチされたインラインおよびマネージドポリシーの表示を IAM ユーザーに許可するポリシーの作成方法を示します。このポリシーには、コンソールで、または AWS CLI または AWS API を使用してプログラムでこのアクションを実行するアクセス許可が含まれています。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }