Esempi di policy basate sull'identità per Amazon Q Developer - Amazon Q Developer

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esempi di policy basate sull'identità per Amazon Q Developer

I seguenti esempi IAM di policy controllano le autorizzazioni per varie azioni di Amazon Q Developer. Usali per consentire o negare l'accesso ad Amazon Q Developer per i tuoi utenti, ruoli o gruppi.

Per un elenco di tutte le autorizzazioni di Amazon Q che puoi controllare con le policy, consulta laRiferimento alle autorizzazioni di Amazon Q Developer.

Nota

Le politiche di esempio seguenti concedono le autorizzazioni per le funzionalità di Amazon Q Developer, ma gli utenti potrebbero aver bisogno di autorizzazioni aggiuntive per accedere ad Amazon Q con un abbonamento Amazon Q Developer Pro. Per ulteriori informazioni, consulta Consenti agli utenti di accedere ad Amazon Q con un abbonamento Amazon Q Developer Pro.

Puoi utilizzare le politiche riportate di seguito così come sono scritte oppure puoi aggiungere autorizzazioni per le singole funzionalità di Amazon Q che desideri utilizzare. Per esempi di policy che puoi creare per consentire l'accesso a funzionalità specifiche, consultaEsempi di policy basate sull'identità per Amazon Q Developer.

Per ulteriori informazioni sulla configurazione delle IAM autorizzazioni con Amazon Q, consulta. Gestisci l'accesso ad Amazon Q Developer con policy

Per ulteriori informazioni sulle funzioni di queste autorizzazioni, consulta la. Riferimento alle autorizzazioni di Amazon Q Developer

Consenti a un amministratore di utilizzare la console di gestione dei servizi Amazon Q

La seguente politica consente a un utente di utilizzare la console di gestione dei servizi Amazon Q. Questa è la console in cui configuri l'integrazione di Amazon Q con IAM Identity Center e AWS Organizations, scegli a quale pacchetto Amazon Q abbonarti e associa utenti e gruppi agli abbonamenti.

Per configurare completamente il tuo abbonamento Amazon Q Pro, qualcuno della tua azienda dovrà inoltre accedere alla console Amazon Q Pro. Per ulteriori informazioni, consulta Assegnazione delle autorizzazioni per utilizzare la console Amazon Q Developer Pro.

Nota

Il codewhisperer prefisso è un nome legacy di un servizio che si è unito ad Amazon Q Developer. Per ulteriori informazioni, consulta Amazon Q Developer rename - Riepilogo delle modifiche.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "organizations:ListAWSServiceAccessForOrganization", "organizations:DisableAWSServiceAccess", "organizations:EnableAWSServiceAccess", "organizations:DescribeOrganization" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "sso:ListApplications", "sso:ListInstances", "sso:DescribeRegisteredRegions", "sso:GetSharedSsoConfiguration", "sso:DescribeInstance", "sso:CreateApplication", "sso:PutApplicationAuthenticationMethod", "sso:PutApplicationAssignmentConfiguration", "sso:PutApplicationGrant", "sso:PutApplicationAccessScope", "sso:DescribeApplication", "sso:DeleteApplication", "sso:GetSSOStatus", "sso:CreateApplicationAssignment", "sso:DeleteApplicationAssignment" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "sso-directory:DescribeUsers", "sso-directory:DescribeGroups", "sso-directory:SearchGroups", "sso-directory:SearchUsers", "sso-directory:DescribeGroup", "sso-directory:DescribeUser", "sso-directory:DescribeDirectory" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "signin:ListTrustedIdentityPropagationApplicationsForConsole", "signin:CreateTrustedIdentityPropagationApplicationForConsole" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "codewhisperer:ListProfiles", "codewhisperer:CreateProfile", "codewhisperer:DeleteProfile" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "user-subscriptions:ListClaims", "user-subscriptions:ListUserSubscriptions", "user-subscriptions:CreateClaim", "user-subscriptions:DeleteClaim", "user-subscriptions:UpdateClaim" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "q:CreateAssignment", "q:DeleteAssignment" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": [ "arn:aws:iam::*:role/aws-service-role/user-subscriptions.amazonaws.com/AWSServiceRoleForUserSubscriptions" ] } ] }

Consenti a un amministratore di configurare la console Amazon Q Developer Pro

La seguente politica consente a un utente di accedere alla console Amazon Q Developer Pro. Su quella console, puoi configurare vari aspetti di Amazon Q Developer relativi a funzionalità specifiche, come i riferimenti al codice.

Per configurare completamente il tuo abbonamento Amazon Q Pro, qualcuno della tua azienda dovrà inoltre accedere alla console di gestione dei servizi Amazon Q. Per ulteriori informazioni, consulta Consenti a un amministratore di utilizzare la console di gestione dei servizi Amazon Q.

Nota

Il codewhisperer prefisso è un nome legacy di un servizio che si è unito ad Amazon Q Developer. Per ulteriori informazioni, consulta Amazon Q Developer rename - Riepilogo delle modifiche.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sso-directory:GetUserPoolInfo" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "iam:ListRoles" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "sso:DescribeRegisteredRegions", "sso:GetSSOStatus" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "organizations:DescribeAccount", "organizations:DescribeOrganization" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "kms:ListAliases", "kms:CreateGrant", "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey*", "kms:RetireGrant", "kms:DescribeKey" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "codeguru-security:UpdateAccountConfiguration" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": [ "arn:aws:iam::*:role/aws-service-role/q.amazonaws.com/AWSServiceRoleForAmazonQDeveloper" ] }, { "Effect": "Allow", "Action": [ "codewhisperer:UpdateProfile", "codewhisperer:ListProfiles", "codewhisperer:TagResource", "codewhisperer:UnTagResource", "codewhisperer:ListTagsForResource", "codewhisperer:CreateProfile" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "cloudwatch:GetMetricData", "cloudwatch:ListMetrics" ], "Resource": [ "*" ] } ] }

Per CodeWhisperer i profili Amazon legacy, la seguente politica consentirà a un IAM responsabile di amministrare un' CodeWhisperer applicazione.

Nota

Il codewhisperer prefisso è un nome legacy di un servizio che si è unito ad Amazon Q Developer. Per ulteriori informazioni, consulta Amazon Q Developer rename - Riepilogo delle modifiche.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sso-directory:SearchUsers", "sso-directory:SearchGroups", "sso-directory:GetUserPoolInfo", "sso-directory:DescribeDirectory", "sso-directory:ListMembersInGroup" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "iam:ListRoles" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "pricing:GetProducts" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "sso:AssociateProfile", "sso:DisassociateProfile", "sso:GetProfile", "sso:ListProfiles", "sso:ListApplicationInstances", "sso:GetApplicationInstance", "sso:CreateManagedApplicationInstance", "sso:GetManagedApplicationInstance", "sso:ListProfileAssociations", "sso:GetSharedSsoConfiguration", "sso:ListDirectoryAssociations", "sso:DescribeRegisteredRegions", "sso:GetSsoConfiguration", "sso:GetSSOStatus" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "identitystore:ListUsers", "identitystore:ListGroups" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "organizations:DescribeAccount", "organizations:DescribeOrganization" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "kms:ListAliases", "kms:CreateGrant", "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey*", "kms:RetireGrant", "kms:DescribeKey" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "codeguru-security:UpdateAccountConfiguration" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": [ "arn:aws:iam::*:role/aws-service-role/q.amazonaws.com/AWSServiceRoleForAmazonQDeveloper" ] }, { "Effect": "Allow", "Action": [ "codewhisperer:UpdateProfile", "codewhisperer:ListProfiles", "codewhisperer:TagResource", "codewhisperer:UnTagResource", "codewhisperer:ListTagsForResource", "codewhisperer:CreateProfile" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "cloudwatch:GetMetricData", "cloudwatch:ListMetrics" ], "Resource": [ "*" ] } ] }
Nota

Se utilizzi le personalizzazioni, l'amministratore di Amazon Q Developer richiederà autorizzazioni aggiuntive. Per ulteriori informazioni, consulta Prerequisiti per le personalizzazioni.

Per ulteriori informazioni sulle IAM politiche, consulta la sezione Gestione degli accessi nella Guida per l'IAMutente.

Aggiungi IAM autorizzazioni per Amazon Q su AWS siti web

Per utilizzare le funzionalità di Amazon Q Developer su AWS app e siti Web, è necessario allegare l'apposito AWS Identity and Access Management (IAM) autorizzazioni. Di seguito è riportato un esempio di policy che puoi utilizzare per accedere alla maggior parte delle funzionalità di Amazon Q su AWS app e siti Web:

Nota

La disponibilità delle funzionalità di Amazon Q dipende dall'ambiente in cui utilizzi Amazon Q. Consulta l'argomento relativo alla funzionalità che desideri utilizzare per ulteriori informazioni su dove puoi accedervi e sulle autorizzazioni specifiche necessarie per utilizzarla.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "q:SendMessage", "q:StartConversation", "q:GetConversation", "q:ListConversations", "q:GetIdentityMetaData", "q:StartTroubleshootingAnalysis", "q:GetTroubleshootingResults", "q:StartTroubleshootingResolutionExplanation", "q:UpdateTroubleshootingCommandResult", "q:PassRequest" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "ce:GetCostAndUsage" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "sts:setContext" ], "Resource": [ "arn:aws:sts::*:self" ] } ] }

Consenti agli utenti di accedere ad Amazon Q con un abbonamento Amazon Q Developer Pro

La seguente politica di esempio concede l'autorizzazione a utilizzare Amazon Q con un abbonamento Amazon Q Developer Pro. Senza queste autorizzazioni, gli utenti possono accedere solo al piano gratuito di Amazon Q. Per chattare con Amazon Q o utilizzare altre funzionalità di Amazon Q, gli utenti hanno bisogno di autorizzazioni aggiuntive, come quelle concesse dalle politiche di esempio in questa sezione.

{ "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" } ] }

Consenti agli utenti di chattare con Amazon Q

La seguente politica di esempio concede le autorizzazioni per chattare con Amazon Q nella console.

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

Consenti agli utenti di diagnosticare gli errori della console con Amazon Q

La seguente politica di esempio concede le autorizzazioni per diagnosticare gli errori della console con Amazon Q.

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

Consenti ad Amazon Q di eseguire azioni per tuo conto

La seguente politica di esempio concede l'autorizzazione a chattare con Amazon Q e consente ad Amazon Q di eseguire azioni per tuo conto. Amazon Q è autorizzata a eseguire solo azioni che la tua IAM identità è autorizzata a eseguire.

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

Negare ad Amazon Q l'autorizzazione a eseguire azioni specifiche per tuo conto

La seguente politica di esempio concede l'autorizzazione a chattare con Amazon Q e consente ad Amazon Q di eseguire per tuo conto qualsiasi azione che la tua IAM identità sia autorizzata a eseguire, ad eccezione EC2 delle azioni Amazon. Questa policy utilizza la chiave aws:CalledVia global condition per specificare che EC2 le azioni di Amazon vengono negate solo quando Amazon Q le chiama.

{ "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"] } } } ] }

Consenti ad Amazon Q di eseguire azioni specifiche per tuo conto

La seguente politica di esempio concede l'autorizzazione a chattare con Amazon Q e consente ad Amazon Q di eseguire per tuo conto qualsiasi azione che la tua IAM identità sia autorizzata a eseguire, ad eccezione delle EC2 azioni Amazon. Questa politica concede alla tua IAM identità il permesso di eseguire qualsiasi EC2 azione di Amazon, ma consente solo ad Amazon Q di eseguire l'ec2:describeInstancesazione. Questa politica utilizza la chiave di condizione aws:CalledVia globale per specificare che Amazon Q può solo effettuare chiamate ec2:describeInstances e non altre EC2 azioni Amazon.

{ "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"] } } } ] }

Consenti ad Amazon Q di eseguire azioni per tuo conto in regioni specifiche

La seguente politica di esempio concede l'autorizzazione a chattare con Amazon Q e consente ad Amazon Q di effettuare chiamate solo verso le us-west-2 regioni us-east-1 e quando esegue azioni per tuo conto. Amazon Q non può effettuare chiamate verso nessun'altra regione. Per ulteriori informazioni su come specificare le regioni verso cui effettuare chiamate, consulta aws: RequestedRegion in AWS Identity and Access Management Guida per l'utente.

{ "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" ] } } } ] }

Negare ad Amazon Q l'autorizzazione a eseguire azioni per tuo conto

La seguente politica di esempio impedisce ad Amazon Q di eseguire azioni per tuo conto.

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

Rifiuto dell'accesso ad Amazon Q

La seguente policy di esempio nega tutte le autorizzazioni per l'uso di Amazon Q.

Nota

Il rifiuto dell'accesso ad Amazon Q non disattiverà l'icona o il pannello di chat di Amazon Q nel AWS console, AWS sito web, AWS pagine di documentazione, oppure AWS Console Mobile Application.

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

Consenti agli utenti di visualizzare le proprie autorizzazioni

Questo esempio mostra come è possibile creare una politica che consenta IAM agli utenti di visualizzare le politiche in linea e gestite allegate alla loro identità utente. Questa politica include le autorizzazioni per completare questa azione sulla console o utilizzando programmaticamente il AWS CLI oppure 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": "*" } ] }