Autorizzazioni degli utenti - 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à.

Autorizzazioni degli utenti

Le seguenti politiche consentono agli utenti di accedere alle funzionalità di Amazon Q Developer su AWS app e siti Web AWS Management Console, incluso il AWS Documentation sito AWS Console Mobile Application, and.

Per le policy che abilitano l’accesso amministrativo ad Amazon Q Developer, consulta Autorizzazioni dell’amministratore.

Nota

Gli utenti che accedono ad Amazon Q nell'IDE o Amazon Q dalla riga di comando non richiedono autorizzazioni IAM.

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

La seguente policy 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 policy di esempio in questa sezione.

JSON
{ "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 ad Amazon Q l’accesso alle chiavi gestite dal cliente

La seguente policy di esempio concede agli utenti le autorizzazioni per accedere a funzionalità crittografate con una chiave gestita dal cliente, consentendo ad Amazon Q l’accesso alla chiave. Questa policy è necessaria per utilizzare Amazon Q se un amministratore ha configurato una chiave gestita dal cliente per la crittografia.

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

Consenti agli utenti di chattare con Amazon Q

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

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

Autorizzazione degli utenti all’utilizzo della CLI di Amazon Q con AWS CloudShell

La seguente politica di esempio concede le autorizzazioni per l'uso della CLI di Amazon Q con. AWS CloudShell

Nota

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

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

Consenti agli utenti di eseguire trasformazioni nella riga di comando

La seguente politica di esempio concede le autorizzazioni per trasformare il codice con lo strumento a riga di comando Amazon Q per le trasformazioni. Questa politica non influisce sull'accesso ad Amazon Q dalla riga di comando.

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

Autorizzazione degli utenti alla diagnosi degli errori della console con Amazon Q

La policy di esempio seguente concede le autorizzazioni per la diagnosi degli errori della console con Amazon Q.

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

Consenti agli utenti di generare codice dai comandi CLI con Amazon Q

La seguente politica di esempio concede le autorizzazioni per generare codice dai comandi CLI registrati con Amazon Q, che consente l'uso della funzionalità. Console-to-Code

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

Autorizzazione degli utenti alla chat sulle risorse con Amazon Q

La seguente policy di esempio concede l’autorizzazione a chattare con Amazon Q sulle risorse e consente ad Amazon Q di recuperare informazioni sulle risorse per tuo conto. Amazon Q è autorizzato ad accedere solo alle risorse per le quali la tua identità IAM dispone delle autorizzazioni.

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

Consenti ad Amazon Q di eseguire operazioni per tuo conto nella chat

La seguente policy di esempio concede l’autorizzazione a chattare con Amazon Q e consente ad Amazon Q di eseguire operazioni per tuo conto. Amazon Q è autorizzato ad eseguire le operazioni per le quali la tua identità IAM dispone delle autorizzazioni.

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

Concedi ad Amazon Q di accedere ai dati sui costi e fornire consigli per l’ottimizzazione dei costi

La seguente policy di esempio concede l’autorizzazione a chattare con Amazon Q sui tuoi costi e consente ad Amazon Q di accedere ai tuoi dati sui costi e di fornire analisi dei costi e consigli di ottimizzazione. Questa politica include le autorizzazioni pertinenti in AWS Cost Explorer, e. Centrale ottimizzazione costi AWS AWS Compute Optimizer

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowAmazonQChatAndPassRequest", "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations", "q:UpdateConversation", "q:DeleteConversation", "q:PassRequest" ], "Resource": "*" }, { "Sid": "AllowCostAnalysis", "Effect": "Allow", "Action": [ "ce:GetCostAndUsage", "ce:GetCostForecast", "ce:GetTags", "ce:GetCostCategories", "ce:GetDimensionValues" ], "Resource": "*" }, { "Sid": "AllowCostOptimization", "Effect": "Allow", "Action": [ "cost-optimization-hub:GetRecommendation", "cost-optimization-hub:ListRecommendations", "cost-optimization-hub:ListRecommendationSummaries", "compute-optimizer:GetAutoScalingGroupRecommendations", "compute-optimizer:GetEBSVolumeRecommendations", "compute-optimizer:GetEC2InstanceRecommendations", "compute-optimizer:GetECSServiceRecommendations", "compute-optimizer:GetRDSDatabaseRecommendations", "compute-optimizer:GetLambdaFunctionRecommendations", "compute-optimizer:GetIdleRecommendations", "compute-optimizer:GetEffectiveRecommendationPreferences", "ce:GetReservationPurchaseRecommendation", "ce:GetSavingsPlansPurchaseRecommendation" ], "Resource": "*" } ] }

Nega 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 identità IAM 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.

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

Concedi ad Amazon Q l’autorizzazione a eseguire azioni specifiche per tuo conto

La seguente policy 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 identità IAM sia autorizzata a eseguire, ad eccezione delle EC2 azioni Amazon. Questa policy concede alla tua identità IAM l'autorizzazione a eseguire qualsiasi EC2 azione 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.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations", "q:UpdateConversation", "q:DeleteConversation", "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"] } } } ] }

Concedi ad Amazon Q l’autorizzazione a eseguire azioni per tuo conto in regioni specifiche

La seguente policy di esempio concede l’autorizzazione a chattare con Amazon Q e consente ad Amazon Q di eseguire chiamate solo verso le Regioni us-east-1 e us-west-2 quando esegue operazioni 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 nella Guida per l'AWS Identity and Access Management utente.

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

Nega ad Amazon Q l’autorizzazione a eseguire azioni per tuo conto

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

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

Consenti agli utenti di chattare con i plugin di un unico provider

La seguente policy di esempio concede l’autorizzazione di chattare con un qualsiasi plugin di un dato provider configurato dall’amministratore, specificato dall’ARN del plugin con il nome del provider del plugin e un carattere jolly (*). Se il plugin viene eliminato e riconfigurato, un utente con queste autorizzazioni manterrà l’accesso al plugin appena configurato. Per utilizzare questa policy, sostituisci quanto segue nell’ARN nel campo Resource:

  • AWS-region— Il Regione AWS luogo in cui è stato creato il plugin.

  • AWS-account-ID— L' AWS ID dell'account in cui è configurato il plug-in.

  • plugin-provider— Il nome del fornitore del plug-in a cui desideri consentire l'accesso, ad esempio CloudZeroDatadog, oWiz. Il campo del provider del plugin distingue tra maiuscole e minuscole.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowAmazonQConversationAccess", "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations", "q:UpdateConversation", "q:DeleteConversation" ], "Resource": "*" }, { "Sid": "AllowAmazonQPluginAccess", "Effect": "Allow", "Action": [ "q:UsePlugin" ], "Resource": "arn:aws:qdeveloper:us-east-1:111122223333:plugin/plugin-provider/*" } ] }

Consenti agli utenti di chattare con un plugin specifico

La seguente policy di esempio concede il permesso di chattare con un plugin specifico, specificato dal plugin ARN. Se il plugin viene eliminato e riconfigurato, un utente non avrà accesso al nuovo plugin a meno che l’ARN del plugin non venga aggiornato in questa policy. Per utilizzare questa policy, sostituisci quanto segue nell’ARN nel campo Resource:

  • AWS-region— Il Regione AWS luogo in cui è stato creato il plugin.

  • AWS-account-ID— L' AWS ID dell'account in cui è configurato il plug-in.

  • plugin-provider— Il nome del fornitore del plug-in a cui desideri consentire l'accesso, ad esempio CloudZeroDatadog, oWiz. Il campo del provider del plugin distingue tra maiuscole e minuscole.

  • plugin-ARN— L'ARN del plugin a cui vuoi consentire l'accesso.

Rifiuto dell'accesso ad Amazon Q

La seguente policy di esempio nega tutte le autorizzazioni per utilizzare Amazon Q.

Nota

Quando neghi l'accesso ad Amazon Q, l'icona e il pannello di chat di Amazon Q continueranno a essere visualizzati nella AWS console, nel AWS sito Web, nelle pagine della AWS documentazione o AWS Console Mobile Application.

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

Consenti agli utenti di visualizzare le loro autorizzazioni

Questo esempio mostra in che modo è possibile creare una policy che consente agli utenti IAM di visualizzare le policy inline e gestite che sono cpllegate alla relativa identità utente. Questa politica include le autorizzazioni per completare questa azione sulla console o utilizzando programmaticamente l'API o. AWS CLI AWS

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