Beispiele für identitätsbasierte Richtlinien für Amazon Q Developer - Amazon Q Developer

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Beispiele für identitätsbasierte Richtlinien für Amazon Q Developer

Die folgenden IAM Beispielrichtlinien steuern die Berechtigungen für verschiedene Amazon Q Developer-Aktionen. Verwenden Sie sie, um Ihren Benutzern, Rollen oder Gruppen den Zugriff auf Amazon Q Developer zu gewähren oder zu verweigern.

Eine Liste aller Amazon Q-Berechtigungen, die Sie mit Richtlinien kontrollieren können, finden Sie unterReferenz zu Amazon Q-Entwicklerberechtigungen.

Anmerkung

Die folgenden Beispielrichtlinien gewähren Berechtigungen für Funktionen von Amazon Q Developer, aber Benutzer benötigen möglicherweise zusätzliche Berechtigungen, um mit einem Amazon Q Developer Pro-Abonnement auf Amazon Q zuzugreifen. Weitere Informationen finden Sie unter Erlauben Sie Benutzern den Zugriff auf Amazon Q mit einem Amazon Q Developer Pro-Abonnement.

Sie können die folgenden Richtlinien so verwenden, wie sie geschrieben wurden, oder Sie können Berechtigungen für die einzelnen Amazon Q-Funktionen hinzufügen, die Sie verwenden möchten. Beispiele für Richtlinien, die Sie erstellen können, um den Zugriff auf bestimmte Funktionen zu ermöglichen, finden Sie unterBeispiele für identitätsbasierte Richtlinien für Amazon Q Developer.

Weitere Informationen zur Konfiguration von IAM Berechtigungen mit Amazon Q finden Sie unterZugriff auf Amazon Q Developer mit Richtlinien verwalten.

Weitere Informationen darüber, was diese Berechtigungen bewirken, finden Sie unterReferenz zu Amazon Q-Entwicklerberechtigungen.

Erlauben Sie einem Administrator, die Amazon Q Service Management Console zu verwenden

Die folgende Richtlinie ermöglicht es einem Benutzer, die Amazon Q Service Management Console zu verwenden. Dies ist die Konsole, in der Sie die Integration von Amazon Q mit IAM Identity Center konfigurieren und auswählen AWS Organizations, welches Amazon Q-Paket Sie abonnieren möchten, und Benutzer und Gruppen an Abonnements anhängen.

Um Ihr Amazon Q Pro-Abonnement vollständig einzurichten, benötigt jemand in Ihrem Unternehmen auch Zugriff auf die Amazon Q Pro-Konsole. Weitere Informationen finden Sie unter Zuweisen von Berechtigungen zur Verwendung der Amazon Q Developer Pro-Konsole.

Anmerkung

Das codewhisperer Präfix ist ein älterer Name eines Dienstes, der mit Amazon Q Developer zusammengeführt wurde. Weitere Informationen finden Sie unter Umbenennung von Amazon Q Developer — Zusammenfassung der Änderungen.

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

Erlauben Sie einem Administrator, die Amazon Q Developer Pro-Konsole zu konfigurieren

Die folgende Richtlinie ermöglicht es einem Benutzer, auf die Amazon Q Developer Pro-Konsole zuzugreifen. Auf dieser Konsole können Sie verschiedene Aspekte von Amazon Q Developer konfigurieren, die sich auf bestimmte Funktionen beziehen, z. B. Codereferenzen.

Um Ihr Amazon Q Pro-Abonnement vollständig einzurichten, benötigt jemand in Ihrem Unternehmen auch Zugriff auf die Amazon Q Service Management Console. Weitere Informationen finden Sie unter Erlauben Sie einem Administrator, die Amazon Q Service Management Console zu verwenden.

Anmerkung

Das codewhisperer Präfix ist ein älterer Name eines Dienstes, der mit Amazon Q Developer zusammengeführt wurde. Weitere Informationen finden Sie unter Umbenennung von Amazon Q Developer — Zusammenfassung der Änderungen.

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

Bei älteren CodeWhisperer Amazon-Profilen ermöglicht die folgende Richtlinie einem IAM Principal, eine CodeWhisperer Anwendung zu verwalten.

Anmerkung

Das codewhisperer Präfix ist ein älterer Name eines Dienstes, der mit Amazon Q Developer zusammengeführt wurde. Weitere Informationen finden Sie unter Umbenennung von Amazon Q Developer — Zusammenfassung der Änderungen.

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

Wenn Sie Anpassungen verwenden, benötigt Ihr Amazon Q Developer-Administrator zusätzliche Berechtigungen. Weitere Informationen finden Sie unter Voraussetzungen für Anpassungen.

Weitere Informationen zu IAM Richtlinien finden Sie unter Access Management im IAMBenutzerhandbuch.

IAMBerechtigungen für Amazon Q auf AWS Websites hinzufügen

Um die Funktionen von Amazon Q Developer in AWS Apps und Websites verwenden zu können, müssen Sie die entsprechenden AWS Identity and Access Management (IAM) Berechtigungen anhängen. Im Folgenden finden Sie eine Beispielrichtlinie, mit der Sie auf die meisten Amazon Q-Funktionen in AWS Apps und Websites zugreifen können:

Anmerkung

Die Verfügbarkeit der Amazon Q-Funktionen hängt von der Umgebung ab, in der Sie Amazon Q verwenden. Weitere Informationen darüber, wo Sie darauf zugreifen können und welche spezifischen Berechtigungen Sie dafür benötigen, finden Sie im Thema zu der Funktion, die Sie verwenden möchten.

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

Erlauben Sie Benutzern den Zugriff auf Amazon Q mit einem Amazon Q Developer Pro-Abonnement

Die folgende Beispielrichtlinie gewährt die Erlaubnis, Amazon Q mit einem Amazon Q Developer Pro-Abonnement zu verwenden. Ohne diese Berechtigungen können Benutzer nur auf das kostenlose Kontingent von Amazon Q zugreifen. Um mit Amazon Q zu chatten oder andere Funktionen von Amazon Q zu nutzen, benötigen Benutzer zusätzliche Berechtigungen, wie sie beispielsweise in den Beispielrichtlinien in diesem Abschnitt gewährt werden.

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

Benutzern erlauben, mit Amazon Q zu chatten

Die folgende Beispielrichtlinie gewährt Berechtigungen zum Chatten mit Amazon Q in der Konsole.

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

Erlauben Sie Benutzern, Amazon Q CLI mit zu verwenden AWS CloudShell

Die folgende Beispielrichtlinie gewährt Berechtigungen zur Verwendung von Amazon Q CLI mit AWS CloudShell.

Anmerkung

Das codewhisperer Präfix ist ein älterer Name eines Dienstes, der mit Amazon Q Developer zusammengeführt wurde. Weitere Informationen finden Sie unter Umbenennung von Amazon Q Developer — Zusammenfassung der Änderungen.

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

Erlauben Sie Benutzern, Konsolenfehler mit Amazon Q zu diagnostizieren

Die folgende Beispielrichtlinie gewährt Berechtigungen zur Diagnose von Konsolenfehlern mit Amazon Q.

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

Erlauben Sie Amazon Q, Aktionen in Ihrem Namen durchzuführen

Die folgende Beispielrichtlinie gewährt die Erlaubnis, mit Amazon Q zu chatten, und ermöglicht Amazon Q, Aktionen in Ihrem Namen durchzuführen. Amazon Q ist nur berechtigt, Aktionen durchzuführen, zu deren Ausführung Ihre IAM Identität berechtigt ist.

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

Amazon Q die Erlaubnis verweigern, bestimmte Aktionen in Ihrem Namen durchzuführen

Die folgende Beispielrichtlinie gewährt die Erlaubnis, mit Amazon Q zu chatten, und ermöglicht Amazon Q, in Ihrem Namen alle Aktionen durchzuführen, zu deren Ausführung Ihre IAM Identität berechtigt ist, mit Ausnahme von EC2 Amazon-Aktionen. Diese Richtlinie verwendet den aws:CalledViaglobalen Bedingungsschlüssel, um anzugeben, dass EC2 Amazon-Aktionen nur verweigert werden, wenn Amazon Q sie aufruft.

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

Erlauben Sie Amazon Q die Erlaubnis, bestimmte Aktionen in Ihrem Namen durchzuführen

Die folgende Beispielrichtlinie gewährt die Erlaubnis, mit Amazon Q zu chatten, und ermöglicht Amazon Q, in Ihrem Namen alle Aktionen durchzuführen, zu deren Ausführung Ihre IAM Identität berechtigt ist, mit Ausnahme von EC2 Amazon-Aktionen. Diese Richtlinie gewährt Ihrer IAM Identität die Erlaubnis, jede EC2 Amazon-Aktion durchzuführen, erlaubt Amazon Q jedoch nur, die ec2:describeInstances Aktion durchzuführen. Diese Richtlinie verwendet den aws:CalledViaglobalen Bedingungsschlüssel, um anzugeben, dass Amazon Q nur Anrufe tätigen ec2:describeInstances darf und keine anderen EC2 Amazon-Aktionen.

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

Erlauben Sie Amazon Q die Erlaubnis, in Ihrem Namen Aktionen in bestimmten Regionen durchzuführen

Die folgende Beispielrichtlinie gewährt die Erlaubnis, mit Amazon Q zu chatten, und ermöglicht Amazon Q, nur in die us-west-2 Regionen us-east-1 und zu telefonieren, wenn Aktionen in Ihrem Namen ausgeführt werden. Amazon Q kann keine anderen Regionen anrufen. Weitere Informationen darüber, in welche Regionen Sie telefonieren können, finden Sie unter aws: RequestedRegion im AWS Identity and Access Management Benutzerhandbuch.

{ "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 die Erlaubnis verweigern, Aktionen in Ihrem Namen durchzuführen

Die folgende Beispielrichtlinie verhindert, dass Amazon Q Aktionen in Ihrem Namen durchführt.

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

Zugriff auf Amazon Q verweigern

Die folgende Beispielrichtlinie verweigert alle Berechtigungen zur Nutzung von Amazon Q.

Anmerkung

Wenn Sie den Zugriff auf Amazon Q verweigern, werden das Amazon Q-Symbol oder das Chat-Panel in der AWS Konsole, AWS auf der Website, auf den AWS Dokumentationsseiten oder AWS Console Mobile Application nicht deaktiviert.

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

Erlauben Sie Benutzern, ihre Berechtigungen einzusehen

Dieses Beispiel zeigt, wie Sie eine Richtlinie erstellen könnten, die es IAM Benutzern ermöglicht, die Inline- und verwalteten Richtlinien einzusehen, die mit ihrer Benutzeridentität verknüpft sind. Diese Richtlinie umfasst Berechtigungen zum Ausführen dieser Aktion auf der Konsole oder programmgesteuert mithilfe von oder. 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": "*" } ] }