

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.

# Verwalten des Zugriffs auf Amazon Q Developer mit Richtlinien
<a name="security_iam_manage-access-with-policies"></a>

**Anmerkung**  
Die Informationen auf dieser Seite beziehen sich auf den Zugriff auf Amazon Q Developer. Informationen zur Verwaltung des Zugriffs auf Amazon Q Business finden Sie unter [Beispiele für identitätsbasierte Richtlinien für Amazon Q Business](https://docs.aws.amazon.com/amazonq/latest/business-use-dg/security_iam_id-based-policy-examples.html) im *Entwicklerhandbuch für Amazon Q Business*.   
Die Richtlinien und Beispiele in diesem Thema sind spezifisch für Amazon Q auf der AWS-Managementkonsole AWS Console Mobile Application, AWS Documentation, AWS Website und in Chat-Anwendungen. Andere in Amazon Q integrierte Services erfordern möglicherweise andere Richtlinien oder Einstellungen. Endbenutzer von Amazon Q von Drittanbietern IDEs müssen keine IAM-Richtlinien verwenden. Weitere Informationen erhalten Sie in der Dokumentation zu dem Service, der eine Funktion oder eine Integration von Amazon Q enthält.

Standardmäßig sind Benutzer und Rollen nicht berechtigt, Amazon Q zu verwenden. IAM-Administratoren können den Zugriff auf Amazon Q Developer und seine Funktionen verwalten, indem sie den IAM-Identitäten entsprechende Berechtigungen gewähren.

Am schnellsten kann ein Administrator Benutzern Zugriff gewähren, indem er eine AWS verwaltete Richtlinie verwendet. Die `AmazonQFullAccess`-Richtlinie kann an IAM-Identitäten angehängt werden, um Vollzugriff auf Amazon Q Developer und seine Funktionen zu gewähren. Weitere Informationen zu dieser Richtlinie finden Sie unter [AWS verwaltete Richtlinien für Amazon Q Developer](managed-policy.md).

Zur Verwaltung bestimmter Aktionen, die IAM-Identitäten mit Amazon Q Developer durchführen können, erstellen Administratoren benutzerdefinierte IAM-Richtlinien, die festlegen, welche Berechtigungen ein Benutzer, eine Gruppe oder eine Rolle hat. Sie können auch Richtlinien zur Servicesteuerung (SCPs) verwenden, um zu kontrollieren, welche Amazon Q-Funktionen in Ihrer Organisation verfügbar sind.

Eine Liste aller Amazon-Q-Berechtigungen, die Sie mit Richtlinien kontrollieren können, finden Sie unter [Referenz für Berechtigungen von Amazon Q Developer](security_iam_permissions.md).

**Topics**
+ [Best Practices für Richtlinien](#security_iam_policy-best-practices)
+ [Zuweisen von Berechtigungen](#setting-up-assign-permissions)
+ [Verwalten Sie den Zugriff mit Richtlinien zur Dienststeuerung (SCPs)](#service-control-policies)
+ [Beispiele für identitätsbasierte Richtlinien für Amazon Q Developer](security_iam_id-based-policy-examples.md)

## Best Practices für Richtlinien
<a name="security_iam_policy-best-practices"></a>

Identitätsbasierte Richtlinien können festlegen, ob jemand Ressourcen von Amazon Q Developer in Ihrem Konto erstellen, löschen oder darauf zugreifen kann. Dies kann zusätzliche Kosten für Ihr verursachen AWS-Konto. Wenn Sie identitätsbasierte Richtlinien erstellen oder bearbeiten, befolgen Sie diese Richtlinien und Empfehlungen:
+ **Erste Schritte mit AWS verwalteten Richtlinien und Umstellung auf Berechtigungen mit den geringsten Rechten** — Verwenden Sie die *AWS verwalteten Richtlinien*, die Berechtigungen für viele gängige Anwendungsfälle gewähren, um damit zu beginnen, Ihren Benutzern und Workloads Berechtigungen zu gewähren. Sie sind in Ihrem verfügbar. AWS-Konto Wir empfehlen Ihnen, die Berechtigungen weiter zu reduzieren, indem Sie vom AWS Kunden verwaltete Richtlinien definieren, die speziell auf Ihre Anwendungsfälle zugeschnitten sind. Weitere Informationen finden Sie unter [Von AWS verwaltete Richtlinien](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) oder [Von AWS verwaltete Richtlinien für Auftragsfunktionen](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) im *IAM-Benutzerhandbuch*.
+ **Anwendung von Berechtigungen mit den geringsten Rechten** – Wenn Sie mit IAM-Richtlinien Berechtigungen festlegen, gewähren Sie nur die Berechtigungen, die für die Durchführung einer Aufgabe erforderlich sind. Sie tun dies, indem Sie die Aktionen definieren, die für bestimmte Ressourcen unter bestimmten Bedingungen durchgeführt werden können, auch bekannt als *die geringsten Berechtigungen*. Weitere Informationen zur Verwendung von IAM zum Anwenden von Berechtigungen finden Sie unter [ Richtlinien und Berechtigungen in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) im *IAM-Benutzerhandbuch*.
+ **Verwenden von Bedingungen in IAM-Richtlinien zur weiteren Einschränkung des Zugriffs** – Sie können Ihren Richtlinien eine Bedingung hinzufügen, um den Zugriff auf Aktionen und Ressourcen zu beschränken. Sie können beispielsweise eine Richtlinienbedingung schreiben, um festzulegen, dass alle Anforderungen mithilfe von SSL gesendet werden müssen. Sie können auch Bedingungen verwenden, um Zugriff auf Serviceaktionen zu gewähren, wenn diese für einen bestimmten Zweck verwendet werden AWS-Service, z. CloudFormation B. Weitere Informationen finden Sie unter [IAM-JSON-Richtlinienelemente: Bedingung](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) im *IAM-Benutzerhandbuch*.
+ **Verwenden von IAM Access Analyzer zur Validierung Ihrer IAM-Richtlinien, um sichere und funktionale Berechtigungen zu gewährleisten** – IAM Access Analyzer validiert neue und vorhandene Richtlinien, damit die Richtlinien der IAM-Richtliniensprache (JSON) und den bewährten IAM-Methoden entsprechen. IAM Access Analyzer stellt mehr als 100 Richtlinienprüfungen und umsetzbare Empfehlungen zur Verfügung, damit Sie sichere und funktionale Richtlinien erstellen können. Weitere Informationen finden Sie unter [Richtlinienvalidierung mit IAM Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) im *IAM-Benutzerhandbuch*.
+ **Multi-Faktor-Authentifizierung (MFA) erforderlich** — Wenn Sie ein Szenario haben, das IAM-Benutzer oder einen Root-Benutzer in Ihrem System erfordert AWS-Konto, aktivieren Sie MFA für zusätzliche Sicherheit. Um MFA beim Aufrufen von API-Vorgängen anzufordern, fügen Sie Ihren Richtlinien MFA-Bedingungen hinzu. Weitere Informationen finden Sie unter [Sicherer API-Zugriff mit MFA](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) im *IAM-Benutzerhandbuch*.

Weitere Informationen zu bewährten Methoden in IAM finden Sie unter [Best Practices für die Sicherheit in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) im *IAM-Benutzerhandbuch*.

## Zuweisen von Berechtigungen
<a name="setting-up-assign-permissions"></a>

Um Zugriff zu gewähren, fügen Sie Ihren Benutzern, Gruppen oder Rollen Berechtigungen hinzu:
+ Benutzer und Gruppen in: AWS IAM Identity Center

  Erstellen Sie einen Berechtigungssatz. Befolgen Sie die Anweisungen unter [Erstellen eines Berechtigungssatzes](https://docs.aws.amazon.com//singlesignon/latest/userguide/howtocreatepermissionset.html) im *AWS IAM Identity Center -Benutzerhandbuch*.
+ Benutzer, die in IAM über einen Identitätsanbieter verwaltet werden:

  Erstellen Sie eine Rolle für den Identitätsverbund. Befolgen Sie die Anleitung unter [Eine Rolle für einen externen Identitätsanbieter (Verbund) erstellen](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-idp.html) im *IAM-Benutzerhandbuch*.
+ IAM-Benutzer:
  + Erstellen Sie eine Rolle, die Ihr Benutzer annehmen kann. Befolgen Sie die Anleitung unter [Eine Rolle für einen IAM-Benutzer erstellen](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-user.html) im *IAM-Benutzerhandbuch*.
  + (Nicht empfohlen) Weisen Sie einem Benutzer eine Richtlinie direkt zu oder fügen Sie einen Benutzer zu einer Benutzergruppe hinzu. Befolgen Sie die Anweisungen unter [Hinzufügen von Berechtigungen zu einem Benutzer (Konsole)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) im *IAM-Benutzerhandbuch*.

## Verwalten Sie den Zugriff mit Richtlinien zur Dienststeuerung (SCPs)
<a name="service-control-policies"></a>

Dienststeuerungsrichtlinien (SCPs) sind eine Art von Organisationsrichtlinie, mit der Sie Berechtigungen in Ihrer Organisation verwalten können. Sie können steuern, welche Funktionen von Amazon Q Developer in Ihrer Organisation verfügbar sind, indem Sie eine SCP erstellen, die Berechtigungen für einige oder alle Amazon-Q-Aktionen festlegt.

Weitere Informationen zur Verwendung SCPs zur Zugriffskontrolle in Ihrer Organisation finden Sie im *AWS Organizations Benutzerhandbuch* unter [Dienststeuerungsrichtlinien erstellen, aktualisieren und löschen](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps_create.html) [und Dienststeuerungsrichtlinien anhängen und trennen](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps_attach.html).

### Beispiel-SCP: Verweigern des Zugriffs auf Amazon Q außerhalb von EU-Regionen
<a name="example-scp-deny-q-outside-eu"></a>

Die folgende SCP verweigert den Zugriff auf Amazon Q Developer außerhalb der Region Europa (Frankfurt) (eu-central-1).

**Anmerkung**  
Das Präfix `codewhisperer` ist ein älterer Name eines Service, der mit Amazon Q Developer zusammengeführt wurde. Weitere Informationen finden Sie unter [Umbenennung von Amazon Q Developer – Zusammenfassung der Änderungen](service-rename.md). 

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "DenyAmazonQDeveloperOutsideEU",
      "Effect": "Deny",
      "Action": [
         "codewhisperer:GenerateRecommendations",
         "q:SendMessage",
         "q:GenerateCodeFromCommands",
         "sqlworkbench:GetQSqlRecommendations"
         ],
      "Resource": "*",
      "Condition": {
        "StringNotEquals": 
        {"aws:RequestedRegion": [ "eu-central-1"] }
      }
    }
  ]
}
```

------

### Beispiel-SCP: Verweigern des Zugriffs auf Amazon Q
<a name="example-scp-deny-q-access"></a>

Die folgende SCP verweigert den Zugriff auf Amazon Q Developer. 

**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. 

------
#### [ JSON ]

****  

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

------

# Beispiele für identitätsbasierte Richtlinien für Amazon Q Developer
<a name="security_iam_id-based-policy-examples"></a>

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

**Anmerkung**  
Die folgenden Beispielrichtlinien gewähren Berechtigungen für Funktionen von Amazon Q Developer. Benutzer benötigen jedoch möglicherweise zusätzliche Berechtigungen, um mit einem Abonnement von Amazon Q Developer Pro auf Amazon Q zuzugreifen. Weitere Informationen finden Sie unter [Zulassen, dass Benutzer mit einem Abonnement von Amazon Q Developer Pro auf Amazon Q zugreifen](id-based-policy-examples-users.md#id-based-policy-examples-allow-subs-access).

Sie können diese 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. Weitere Informationen zur Konfiguration von IAM-Berechtigungen mit Amazon Q finden Sie unter [Verwalten des Zugriffs auf Amazon Q Developer mit Richtlinien](security_iam_manage-access-with-policies.md).

Eine Liste aller Amazon-Q-Berechtigungen, die Sie mit Richtlinien kontrollieren können, finden Sie unter [Referenz für Berechtigungen von Amazon Q Developer](security_iam_permissions.md).

**Topics**
+ [Administratorberechtigungen](id-based-policy-examples-admins.md)
+ [Benutzerberechtigungen](id-based-policy-examples-users.md)

# Administratorberechtigungen
<a name="id-based-policy-examples-admins"></a>

Die folgenden Richtlinien ermöglichen es Administratoren von Amazon Q Developer, administrative Aufgaben in der Amazon-Q-Abonnementverwaltungskonsole und der Konsole von Amazon Q Developer durchzuführen.

Richtlinien, die die Verwendung von Funktionen von Amazon Q Developer ermöglichen, finden Sie unter [Benutzerberechtigungen](id-based-policy-examples-users.md).

## Zulassen, dass Administratoren die Amazon-Q-Konsole verwenden
<a name="q-admin-setup-admin-users-sub"></a>

Die folgende Beispielrichtlinie gewährt einem Benutzer Berechtigungen zum Ausführen von Aktionen in der Amazon-Q-Konsole. In der Amazon Q-Konsole konfigurieren Sie die Integration von Amazon Q mit AWS IAM Identity Center und AWS Organizations. Die meisten anderen Aufgaben im Zusammenhang mit Amazon Q Developer müssen in der Konsole von Amazon Q Developer durchgeführt werden. Weitere Informationen finden Sie unter [Zulassen, dass Administratoren die Konsole von Amazon Q Developer verwenden](#q-admin-setup-admin-users).

**Anmerkung**  
Das Präfix `codewhisperer` ist ein älterer Name eines Service, der mit Amazon Q Developer zusammengeführt wurde. Weitere Informationen finden Sie unter [Umbenennung von Amazon Q Developer – Zusammenfassung der Änderungen](service-rename.md). 

------
#### [ JSON ]

****  

```
{
   "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:CreateInstance",
            "sso:CreateApplication",
            "sso:PutApplicationAuthenticationMethod",
            "sso:PutApplicationAssignmentConfiguration",
            "sso:PutApplicationGrant",
            "sso:PutApplicationAccessScope",
            "sso:DescribeApplication",
            "sso:DeleteApplication",
            "sso:GetSSOStatus",
            "sso:CreateApplicationAssignment",
            "sso:DeleteApplicationAssignment",
            "sso:UpdateApplication"
         ],
         "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"
         ]
      }
   ]
}
```

------

## Zulassen, dass Administratoren die Konsole von Amazon Q Developer verwenden
<a name="q-admin-setup-admin-users"></a>

Die folgende Beispielrichtlinie gewährt einem Benutzer Berechtigungen für den Zugriff auf die Konsole von Amazon Q Developer. In der Konsole von Amazon Q Developer führen Administratoren die meisten Konfigurationsaufgaben für die Arbeit mit Amazon Q Developer durch, einschließlich Aufgaben im Zusammenhang mit Abonnements, Codereferenzen, Anpassungen und Chat-Plugins. Diese Richtlinie umfasst auch Berechtigungen zur Erstellung und Konfiguration von kundenverwalteten KMS-Schlüsseln. 

Es gibt einige Aufgaben von Amazon Q Developer Pro, die Administratoren über die Amazon-Q-Konsole (statt über die Konsole von Amazon Q Developer) erledigen müssen. Weitere Informationen finden Sie unter [Zulassen, dass Administratoren die Amazon-Q-Konsole verwenden](#q-admin-setup-admin-users-sub).

**Anmerkung**  
Zum Erstellen von Anpassungen oder Plugins benötigt Ihr Administrator von Amazon Q Developer Pro zusätzliche Berechtigungen.   
Informationen zu den für Anpassungen erforderlichen Berechtigungen finden Sie im Abschnitt Voraussetzungen für Anpassungen.
Informationen zu den für Plugins benötigten Berechtigungen finden Sie unter [Zulassen, dass Administratoren Plugins konfigurieren](#id-based-policy-examples-admin-plugins).

Sie benötigen eine von zwei Richtlinien, um die Konsole von Amazon Q Developer verwenden zu können. Welche Richtlinie Sie benötigen, hängt davon ab, ob Sie Amazon Q Developer zum ersten Mal einrichten oder ob Sie ein veraltetes CodeWhisperer Amazon-Profil konfigurieren. 

**Anmerkung**  
Das Präfix `codewhisperer` ist ein älterer Name eines Service, der mit Amazon Q Developer zusammengeführt wurde. Weitere Informationen finden Sie unter [Umbenennung von Amazon Q Developer – Zusammenfassung der Änderungen](service-rename.md). 

Verwenden Sie für neue Administratoren von Amazon Q Developer die folgende Richtlinie: 

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "sso:ListInstances",
        "sso:CreateInstance",
        "sso:CreateApplication",
        "sso:PutApplicationAuthenticationMethod",
        "sso:PutApplicationGrant",
        "sso:PutApplicationAssignmentConfiguration",
        "sso:ListApplications",
        "sso:GetSharedSsoConfiguration",
        "sso:DescribeInstance",
        "sso:PutApplicationAccessScope",
        "sso:DescribeApplication",
        "sso:DeleteApplication",
        "sso:CreateApplicationAssignment",
        "sso:DeleteApplicationAssignment",
        "sso:UpdateApplication",
        "sso:DescribeRegisteredRegions",
        "sso:GetSSOStatus"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "iam:ListRoles"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "identitystore:DescribeUser"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "sso-directory:GetUserPoolInfo",
        "sso-directory:DescribeUsers",
        "sso-directory:DescribeGroups",
        "sso-directory:SearchGroups",
        "sso-directory:SearchUsers",
        "sso-directory:DescribeDirectory"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "signin:ListTrustedIdentityPropagationApplicationsForConsole",
        "signin:CreateTrustedIdentityPropagationApplicationForConsole"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "user-subscriptions:ListClaims",
        "user-subscriptions:ListApplicationClaims",
        "user-subscriptions:ListUserSubscriptions",
        "user-subscriptions:CreateClaim",
        "user-subscriptions:DeleteClaim",
        "user-subscriptions:UpdateClaim"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "organizations:DescribeAccount",
        "organizations:DescribeOrganization",
        "organizations:ListAWSServiceAccessForOrganization",
        "organizations:DisableAWSServiceAccess",
        "organizations:EnableAWSServiceAccess"
      ],
      "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": [
        "q:ListDashboardMetrics", 
        "q:CreateAssignment", 
        "q:DeleteAssignment"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "cloudwatch:GetMetricData", 
        "cloudwatch:ListMetrics"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}
```

Bei älteren CodeWhisperer Amazon-Profilen ermöglicht die folgende Richtlinie einem IAM-Prinzipal die Verwaltung einer CodeWhisperer Anwendung.

****  

```
{
  "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": [
        "q:ListDashboardMetrics",
        "cloudwatch:GetMetricData",
        "cloudwatch:ListMetrics"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}
```

## Zulassen, dass Administratoren Anpassungen erstellen
<a name="id-based-policy-examples-allow-customizations"></a>

Die folgende Richtlinie gewährt Administratoren die Berechtigung, Anpassungen in Amazon Q Developer zu erstellen und zu verwalten. 

Zum Konfigurieren von Anpassungen in der Konsole von Amazon Q Developer benötigt der Administrator von Amazon Q Developer Zugriff auf die Konsole von Amazon Q Developer. Weitere Informationen finden Sie unter [Zulassen, dass Administratoren die Konsole von Amazon Q Developer verwenden](#q-admin-setup-admin-users).

**Anmerkung**  
Gemäß der folgenden Richtlinie meldet der IAM-Service Fehler in Bezug auf die Berechtigungen `codeconnections:ListOwners` und `codeconnections:ListRepositories`. Erstellen Sie die Richtlinie trotzdem mit diesen Berechtigungen. Die Berechtigungen sind erforderlich. Die Richtlinie funktioniert trotz der Fehler.

**Anmerkung**  
Das Präfix `codewhisperer` ist ein älterer Name eines Service, der mit Amazon Q Developer zusammengeführt wurde. Weitere Informationen finden Sie unter [Umbenennung von Amazon Q Developer – Zusammenfassung der Änderungen](service-rename.md). 

Im folgenden Beispiel ersetzen Sie es *account number* durch Ihre AWS Kontonummer.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "sso-directory:DescribeUsers"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "kms:CreateGrant"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "codewhisperer:CreateCustomization",
                "codewhisperer:DeleteCustomization",
                "codewhisperer:ListCustomizations",
                "codewhisperer:ListCustomizationVersions",
                "codewhisperer:UpdateCustomization",
                "codewhisperer:GetCustomization",
                "codewhisperer:ListCustomizationPermissions",
                "codewhisperer:AssociateCustomizationPermission",
                "codewhisperer:DisassociateCustomizationPermission"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "codeconnections:ListOwners",
                "codeconnections:ListRepositories",
                "codeconnections:ListConnections",
                "codeconnections:GetConnection"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "codeconnections:UseConnection",
            "Resource": [
                "*"
            ],
            "Condition": {
                "ForAnyValue:StringEquals": {
                    "codeconnections:ProviderAction": [
                        "GitPull",
                        "ListRepositories",
                        "ListOwners"
                    ]
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject*",
                "s3:GetBucket*",
                "s3:ListBucket*"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```

------

## Zulassen, dass Administratoren Plugins konfigurieren
<a name="id-based-policy-examples-admin-plugins"></a>

Die folgende Beispielrichtlinie gewährt Administratoren Berechtigungen zum Anzeigen und Konfigurieren von Drittanbieter-Plugins in der Konsole von Amazon Q Developer. 

**Anmerkung**  
Für den Zugriff auf die Konsole von Amazon Q Developer benötigen Administratoren außerdem die unter [Zulassen, dass Administratoren die Konsole von Amazon Q Developer verwenden](#q-admin-setup-admin-users) definierten Berechtigungen.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "q:CreatePlugin",
        "q:GetPlugin",
        "q:DeletePlugin",
        "q:ListPlugins",
        "q:ListPluginProviders",
        "q:UpdatePlugin",
        "q:CreateAuthGrant",
        "q:CreateOAuthAppConnection",
        "q:SendEvent",
        "q:UpdateAuthGrant",
        "q:UpdateOAuthAppConnection",
        "q:UpdatePlugin",
        "iam:CreateRole",
        "secretsmanager:CreateSecret"
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "iam:PassRole"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "iam:PassedToService": [
            "q.amazonaws.com"
          ]
        }
      }
    }
  ]
}
```

------

## Zulassen, dass Administratoren Plugins von einem Anbieter konfigurieren
<a name="id-based-policy-examples-admin-plugins-one-provider"></a>

Die folgende Beispielrichtlinie gewährt einem Administrator die Berechtigung, Plugins von einem Anbieter zu konfigurieren, der durch den Plugin-ARN mit dem Namen des Plugin-Anbieters und einem Platzhalterzeichen (`*`) angegeben wird. Wenn Sie diese Richtlinie verwenden möchten, ersetzen Sie Folgendes im ARN im Feld „Resource“:
+ *AWS-region*— Der AWS-Region Ort, an dem das Plugin erstellt wird.
+ *AWS-account-ID*— Die AWS Konto-ID des Kontos, in dem Ihr Plugin konfiguriert ist.
+ *plugin-provider*— Der Name des Plugin-Anbieters, für den Sie die Konfiguration zulassen möchten, z. B. `CloudZero``Datadog`, oder`Wiz`. Im Feld „Plugin-Anbieter“ muss die Groß- und Kleinschreibung beachtet werden.

**Anmerkung**  
Für den Zugriff auf die Konsole von Amazon Q Developer benötigen Administratoren außerdem die unter [Zulassen, dass Administratoren die Konsole von Amazon Q Developer verwenden](#q-admin-setup-admin-users) definierten Berechtigungen.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowCreateProviderPlugin",
            "Effect": "Allow",
            "Action": [
                "q:CreatePlugin",
                "q:GetPlugin",
                "q:DeletePlugin"
            ],
            "Resource": "arn:aws:qdeveloper:us-east-1:111122223333:plugin/plugin-provider/*"
        }
    ]
}
```

------

## Zulassen der Migration von mehr als einem Netzwerk oder mehr als einem Subnetz
<a name="id-based-policy-examples-ezrc"></a>

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
            "Sid": "MGNNetworkMigrationAnalyzerEC2ResourceSgTag",
            "Effect": "Allow",
            "Action": [
                "ec2:CreateSecurityGroup"
            ],
            "Resource": [
                "arn:aws:ec2:us-east-1:111122223333:vpc/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/CreatedBy": "AWSApplicationMigrationService"
                }
            }
        },
        {
            "Sid": "MGNNetworkMigrationAnalyzerEC2RequestSgTag",
            "Effect": "Allow",
            "Action": [
                "ec2:CreateSecurityGroup"
            ],
            "Resource": [
                "arn:aws:ec2:us-east-1:111122223333:security-group/*",
                "arn:aws:ec2:us-east-1:111122223333:security-group-rule/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/CreatedBy": "AWSApplicationMigrationService"
                }
            }
        },

        {
            "Sid": "MGNNetworkMigrationAnalyzerEC2SecurityGroupTags",
            "Effect": "Allow",
            "Action": [
                "ec2:CreateTags"
            ],
            "Resource": [
                "arn:aws:ec2:us-east-1:111122223333:security-group/*",
                "arn:aws:ec2:us-east-1:111122223333:security-group-rule/*",
                "arn:aws:ec2:us-east-1:111122223333:network-interface/*",
                "arn:aws:ec2:us-east-1:111122223333:network-insights-path/*",
                "arn:aws:ec2:us-east-1:111122223333:network-insights-analysis/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/CreatedBy": "AWSApplicationMigrationService",
                    "ec2:CreateAction": [
                        "CreateSecurityGroup",
                        "CreateNetworkInterface",
                        "CreateNetworkInsightsPath",
                        "StartNetworkInsightsAnalysis"
                    ]
                }
            }
        },
        {
            "Sid": "MGNNetworkMigrationAnalyzerENIResourceTag",
            "Effect": "Allow",
            "Action": [
                "ec2:CreateNetworkInterface"
            ],
            "Resource": [
                "arn:aws:ec2:us-east-1:111122223333:subnet/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/CreatedBy": "AWSApplicationMigrationService"
                }
            }
        },
        {
            "Sid": "MGNNetworkMigrationAnalyzerENISG",
            "Effect": "Allow",
            "Action": [
                "ec2:CreateNetworkInterface"
            ],
            "Resource": [
                "arn:aws:ec2:us-east-1:111122223333:security-group/*"
            ]
        },
        {
            "Sid": "MGNNetworkMigrationAnalyzerEC2ResourceTag",
            "Effect": "Allow",
            "Action": [
                "ec2:CreateNetworkInsightsPath"
            ],
            "Resource": [
                "*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/CreatedBy": "AWSApplicationMigrationService"
                }
            }
        },
        {
            "Sid": "MGNNetworkMigAnalyzerEC2RequestTag",
            "Effect": "Allow",
            "Action": [
                "ec2:CreateNetworkInterface",
                "ec2:CreateNetworkInsightsPath",
                "ec2:StartNetworkInsightsAnalysis"
            ],
            "Resource": [
                "*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/CreatedBy": "AWSApplicationMigrationService"
                }
            }
        },
        {
            "Sid": "MGNNetworkMigrationAnalyzeNetwork",
            "Effect": "Allow",
            "Action": [
                "ec2:StartNetworkInsightsAnalysis"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```

------

# Benutzerberechtigungen
<a name="id-based-policy-examples-users"></a>

Die folgenden Richtlinien ermöglichen Benutzern den Zugriff auf Funktionen von Amazon Q Developer in AWS Apps und Websites, einschließlich der AWS-Managementkonsole AWS Console Mobile Application, und AWS Documentation Website.

Richtlinien, die den Administratorzugriff auf Amazon Q Developer ermöglichen, finden Sie unter [Administratorberechtigungen](id-based-policy-examples-admins.md). 

**Anmerkung**  
Benutzer, [die in der IDE](q-in-IDE.md) auf [Amazon Q oder über die Befehlszeile auf](command-line.md) Amazon Q zugreifen, benötigen keine IAM-Berechtigungen. 

## Zulassen, dass Benutzer mit einem Abonnement von Amazon Q Developer Pro auf Amazon Q zugreifen
<a name="id-based-policy-examples-allow-subs-access"></a>

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

------
#### [ 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"
        }
    ]
}
```

------

## Gewähren des Amazon-Q-Zugriffs auf vom Kunden verwaltete Schlüssel
<a name="id-based-policy-examples-allow-q-access-encryption"></a>

Die folgende Beispielrichtlinie gewährt Benutzern Berechtigungen für den Zugriff auf Funktionen, die mit einem vom Kunden verwalteten Schlüssel verschlüsselt wurden, indem Amazon Q Zugriff auf den Schlüssel erteilt wird. Diese Richtlinie ist für die Verwendung von Amazon Q erforderlich, wenn ein Administrator einen vom Kunden verwalteten Schlüssel für die Verschlüsselung eingerichtet hat.

------
#### [ 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"
                    ]
                }
            }
        }
    ]
}
```

------

## Zulassen, dass Benutzer mit Amazon Q chatten
<a name="id-based-policy-examples-allow-chat"></a>

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

------
#### [ JSON ]

****  

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

------

## Erlauben Sie Benutzern die Verwendung von Amazon Q CLI mit AWS CloudShell
<a name="id-based-policy-examples-allow-cli-cloudshell"></a>

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

**Anmerkung**  
Das Präfix `codewhisperer` ist ein älterer Name eines Service, der mit Amazon Q Developer zusammengeführt wurde. Weitere Informationen finden Sie unter [Umbenennung von Amazon Q Developer – Zusammenfassung der Änderungen](service-rename.md). 

------
#### [ JSON ]

****  

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

------

## Zulassen, dass Benutzer Transformationen in der Befehlszeile ausführen
<a name="id-based-policy-examples-allow-cli-transformations"></a>

Die folgende Beispielrichtlinie gewährt Berechtigungen zum Transformieren von Code mit dem [Amazon Q-Befehlszeilentool für Transformationen.](transform-CLI.md) Diese Richtlinie hat keinen Einfluss auf den Zugriff [auf Amazon Q über die Befehlszeile](command-line.md).

------
#### [ JSON ]

****  

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

------

## Zulassen, dass Benutzer Konsolenfehler mit Amazon Q diagnostizieren
<a name="id-based-policy-examples-allow-error-diagnosing"></a>

Die folgende Beispielrichtlinie gewährt Berechtigungen zur Diagnose von Konsolenfehlern mit 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": "*"
    }
  ]
}
```

------

## Zulassen, dass Benutzer mit Amazon Q Code aus CLI-Befehlen generieren
<a name="id-based-policy-examples-allow-console-to-code"></a>

Die folgende Beispielrichtlinie gewährt Berechtigungen zum Generieren von Code aus aufgezeichneten CLI-Befehlen mit Amazon Q, wodurch die Verwendung der Console-to-Code Funktion ermöglicht wird.

------
#### [ JSON ]

****  

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

------

## Zulassen, dass Benutzer mit Amazon Q über Ressourcen chatten
<a name="id-based-policy-examples-allow-resource-chat"></a>

Die folgende Beispielrichtlinie gewährt die Berechtigung, mit Amazon Q über Ressourcen zu chatten, und ermöglicht Amazon Q, Ressourceninformationen in Ihrem Namen abzurufen. Amazon Q ist nur berechtigt, auf Ressourcen zuzugreifen, für die Ihre IAM-Identität Berechtigungen besitzt. 

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

------

## Zulassen, dass Amazon Q Aktionen in Ihrem Namen im Chat ausführt
<a name="id-based-policy-examples-allow-actions"></a>

Die folgende Beispielrichtlinie gewährt die Berechtigung, mit Amazon Q zu chatten, und ermöglicht Amazon Q, Aktionen in Ihrem Namen durchzuführen. Amazon Q ist nur berechtigt, Aktionen durchzuführen, für die Ihre IAM-Identität entsprechende Berechtigungen besitzt. 

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

------

## Zulassen, dass Amazon Q auf Kostendaten zugreift und Empfehlungen zur Kostenoptimierung bietet
<a name="id-based-policy-examples-allow-cost-chat"></a>

Die folgende Beispielrichtlinie gewährt die Berechtigung, mit Amazon Q über Ihre Kosten zu chatten, und ermöglicht Amazon Q, auf Ihre Kostendaten zuzugreifen und Kostenanalysen sowie Optimierungsempfehlungen zu geben. Diese Richtlinie umfasst Berechtigungen für AWS Cost Explorer, AWS Cost Optimization Hub, AWS Compute Optimizer, AWS Budgets, das kostenlose AWS-Kontingent, AWS-Preis- und Savings Plans sowie Reservierungsempfehlungen.

------
#### [ 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": "AllowCostExplorerAccess",
      "Effect": "Allow",
      "Action": [
        "ce:GetCostAndUsage",
        "ce:GetCostAndUsageWithResources",
        "ce:GetCostForecast",
        "ce:GetUsageForecast",
        "ce:GetTags",
        "ce:GetCostCategories",
        "ce:GetDimensionValues",
        "ce:GetSavingsPlansUtilization",
        "ce:GetSavingsPlansCoverage",
        "ce:GetSavingsPlansUtilizationDetails",
        "ce:GetReservationUtilization",
        "ce:GetReservationCoverage",
        "ce:GetSavingsPlansPurchaseRecommendation",
        "ce:GetReservationPurchaseRecommendation",
        "ce:GetRightsizingRecommendation",
        "ce:GetAnomalies",
       "ce:GetCostAndUsageComparisons",
       "ce:GetCostComparisonDrivers"
      ],
      "Resource": "*"
   },
    {
      "Sid": "AllowCostOptimizationHubAccess",
      "Effect": "Allow",
      "Action": [
        "cost-optimization-hub:GetRecommendation",
        "cost-optimization-hub:ListRecommendations",
        "cost-optimization-hub:ListRecommendationSummaries"
      ],
      "Resource": "*"
   },
    {
      "Sid": "AllowComputeOptimizerAccess",
      "Effect": "Allow",
      "Action": [
        "compute-optimizer:GetAutoScalingGroupRecommendations",
        "compute-optimizer:GetEBSVolumeRecommendations",
        "compute-optimizer:GetEC2InstanceRecommendations",
        "compute-optimizer:GetECSServiceRecommendations",
        "compute-optimizer:GetRDSDatabaseRecommendations",
        "compute-optimizer:GetLambdaFunctionRecommendations",
        "compute-optimizer:GetIdleRecommendations",
        "compute-optimizer:GetLicenseRecommendations",
        "compute-optimizer:GetEffectiveRecommendationPreferences"
      ],
      "Resource": "*"
   },
    {
      "Sid": "AllowBudgetsAccess",
      "Effect": "Allow",
      "Action": [
        "budgets:ViewBudget"
      ],
      "Resource": "*"
   },
    {
      "Sid": "AllowFreeTierAccess",
      "Effect": "Allow",
      "Action": [
        "freetier:GetFreeTierUsage",
        "freetier:GetAccountPlanState",
        "freetier:ListAccountActivities",
       "freetier:GetAccountActivity"
      ],
      "Resource": "*"
   },
    {
      "Sid": "AllowPricingAccess",
      "Effect": "Allow",
      "Action": [
        "pricing:GetProducts",
        "pricing:GetAttributeValues",
        "pricing:DescribeServices"
      ],
      "Resource": "*"
   }
  ]
}
```

------

## Verweigern der Berechtigung für Amazon Q, bestimmte Aktionen in Ihrem Namen durchzuführen
<a name="id-based-policy-examples-deny-some-actions"></a>

Die folgende Beispielrichtlinie gewährt die Berechtigung, mit Amazon Q zu chatten, und ermöglicht Amazon Q, Aktionen in Ihrem Namen durchzuführen, für die Ihre IAM-Identität die entsprechende Berechtigung besitzt, ausgenommen Amazon-EC2-Aktionen. Diese Richtlinie verwendet den [globalen Bedingungsschlüssel`aws:CalledVia`](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-calledvia), um anzugeben, dass Amazon-EC2-Aktionen nur verweigert werden, wenn Amazon Q sie aufruft. 

------
#### [ 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"]
            }
       }
    }
  ]
}
```

------

## Erteilen der Berechtigung für Amazon Q, bestimmte Aktionen in Ihrem Namen durchzuführen
<a name="id-based-policy-examples-allow-some-actions"></a>

Die folgende Beispielrichtlinie gewährt die Berechtigung, mit Amazon Q zu chatten, und ermöglicht Amazon Q, Aktionen in Ihrem Namen durchzuführen, für die Ihre IAM-Identität die entsprechende Berechtigung besitzt, mit Ausnahme von Amazon-EC2-Aktionen. Diese Richtlinie gewährt Ihrer IAM-Identität die Berechtigung, eine beliebige Amazon-EC2-Aktion durchzuführen, erlaubt Amazon Q jedoch nur, die Aktion `ec2:describeInstances` auszuführen. Diese Richtlinie verwendet den [globalen Bedingungsschlüssel `aws:CalledVia`](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-calledvia), um anzugeben, dass Amazon Q nur `ec2:describeInstances` und keine anderen Amazon-EC2-Aktionen aufrufen darf.

------
#### [ 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"]
            }
       }
    }
  ]
}
```

------

## Erteilen der Berechtigung für Amazon Q, in bestimmten Regionen Aktionen in Ihrem Namen durchzuführen
<a name="id-based-policy-examples-allow-actions-some-regions"></a>

Die folgende Beispielrichtlinie gewährt die Berechtigung, mit Amazon Q zu chatten, und ermöglicht Amazon Q, nur Aufrufe für die Regionen `us-east-1` und `us-west-2` zu tätigen, wenn Aktionen in Ihrem Namen durchgeführt werden. Amazon Q kann keine Aufrufe für eine andere Region tätigen. Weitere Informationen zur Angabe der Regionen, in die Sie Anrufe tätigen können, finden Sie unter [aws: RequestedRegion](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requestedregion) im *AWS Identity and Access Management Benutzerhandbuch*.

------
#### [ 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"
            ] 
        } 
      }
    }
  ]
}
```

------

## Verweigern der Berechtigung für Amazon Q, Aktionen in Ihrem Namen durchzuführen
<a name="id-based-policy-examples-deny-actions"></a>

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

------
#### [ JSON ]

****  

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

------

## Zulassen, dass Benutzer mit Plugins von einem Anbieter chatten
<a name="id-based-policy-examples-allow-plugin-type"></a>

Die folgende Beispielrichtlinie gewährt die Berechtigung, mit Plugins von einem bestimmten Anbieter zu chatten, das von einem Administrator konfiguriert und durch den Plugin-ARN mit dem Namen des Plugin-Anbieters und einem Platzhalterzeichen (`*`) angegeben wird. Wenn das Plugin gelöscht und neu konfiguriert wird, hat ein Benutzer mit diesen Berechtigungen weiterhin Zugriff auf das neu konfigurierte Plugin. Wenn Sie diese Richtlinie verwenden möchten, ersetzen Sie Folgendes im ARN im Feld `Resource`: 
+ *AWS-region*— Der AWS-Region Ort, an dem das Plugin erstellt wurde.
+ *AWS-account-ID*— Die AWS Konto-ID des Kontos, in dem Ihr Plugin konfiguriert ist.
+ *plugin-provider*— Der Name des Plugin-Anbieters, für den Sie Zugriff gewähren möchten, z. B. `CloudZero``Datadog`, oder`Wiz`. Im Feld „Plugin-Anbieter“ muss die Groß- und Kleinschreibung beachtet werden.

------
#### [ 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/*"
        }
    ]
}
```

------

## Zulassen, dass Benutzer mit einem bestimmten Plugin chatten
<a name="id-based-policy-examples-allow-plugin-arn"></a>

Die folgende Beispielrichtlinie gewährt die Berechtigung, mit einem bestimmten Plugin zu chatten, das durch den Plugin-ARN angegeben wird. Wenn das Plugin gelöscht und neu konfiguriert wird, hat ein Benutzer keinen Zugriff auf das neue Plugin, es sei denn, der Plugin-ARN wird in dieser Richtlinie aktualisiert. Wenn Sie diese Richtlinie verwenden möchten, ersetzen Sie Folgendes im ARN im Feld `Resource`: 
+ *AWS-region*— Der AWS-Region Ort, an dem das Plugin erstellt wurde.
+ *AWS-account-ID*— Die AWS Konto-ID des Kontos, in dem Ihr Plugin konfiguriert ist.
+ *plugin-provider*— Der Name des Plugin-Anbieters, für den Sie Zugriff gewähren möchten, z. B. `CloudZero``Datadog`, oder`Wiz`. Im Feld „Plugin-Anbieter“ muss die Groß- und Kleinschreibung beachtet werden.
+ *plugin-ARN*— Der ARN des Plugins, auf das Sie Zugriff gewähren möchten.

## Verweigern des Zugriffs auf Amazon Q
<a name="id-based-policy-examples-deny"></a>

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

**Anmerkung**  
Wenn Sie den Zugriff auf Amazon Q verweigern, werden das Amazon Q-Symbol und das Chat-Panel weiterhin in der AWS Konsole, auf der AWS Website, auf den AWS Dokumentationsseiten oder angezeigt AWS Console Mobile Application.

------
#### [ JSON ]

****  

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

------

## Gewähren der Berechtigung zur Anzeige der eigenen Berechtigungen
<a name="id-based-policy-examples-view-own-permissions"></a>

In diesem Beispiel wird gezeigt, wie Sie eine Richtlinie erstellen, die IAM-Benutzern die Berechtigung zum Anzeigen der eingebundenen Richtlinien und verwalteten Richtlinien gewährt, die ihrer Benutzeridentität angefügt sind. Diese Richtlinie beinhaltet die Erlaubnis, diese Aktion auf der Konsole oder programmgesteuert mithilfe der API AWS CLI oder AWS durchzuführen.

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