

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 AWS CodeArtifact
<a name="security_iam_id-based-policy-examples"></a>

Benutzer und Rollen haben standardmäßig nicht die Berechtigung, CodeArtifact-Ressourcen zu erstellen oder zu ändern. Ein IAM-Administrator muss IAM-Richtlinien erstellen, die Benutzern die Berechtigung erteilen, Aktionen für die Ressourcen auszuführen, die sie benötigen.

Informationen dazu, wie Sie unter Verwendung dieser beispielhaften JSON-Richtliniendokumente eine identitätsbasierte IAM-Richtlinie erstellen, finden Sie unter [Erstellen von IAM-Richtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html) im *IAM-Benutzerhandbuch*.

Einzelheiten zu Aktionen und Ressourcentypen, die von definiert wurden CodeArtifact, einschließlich des Formats von ARNs für die einzelnen Ressourcentypen, finden Sie unter [Aktionen, Ressourcen und Bedingungsschlüssel für AWS CodeArtifact](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscodeartifact.html) in der Referenz zur *Serviceautorisierung*.

**Topics**
+ [Best Practices für Richtlinien](#security_iam_service-with-iam-policy-best-practices)
+ [Verwenden der Konsole CodeArtifact](#security_iam_id-based-policy-examples-console)
+ [Von AWS verwaltete (vordefinierte) Richtlinien für AWS CodeArtifact](#managed-policies)
+ [Erlauben Sie einem Benutzer, seine eigenen Berechtigungen einzusehen](#security_iam_id-based-policy-examples-view-own-permissions)
+ [Erlaubt einem Benutzer, Informationen über Repositorys und Domänen abzurufen](#security_iam_id-based-policy-examples-repos-and-domains)
+ [Erlauben Sie einem Benutzer, Informationen zu bestimmten Domänen abzurufen](#security_iam_id-based-policy-examples-specific-domains)
+ [Erlaubt einem Benutzer, Informationen über bestimmte Repositorys abzurufen](#security_iam_id-based-policy-examples-specific-repos)
+ [Die Dauer des Autorisierungstokens](#limit-token-duration)

## Best Practices für Richtlinien
<a name="security_iam_service-with-iam-policy-best-practices"></a>

Identitätsbasierte Richtlinien legen fest, ob jemand CodeArtifact Ressourcen in Ihrem Konto erstellen, darauf zugreifen oder sie löschen kann. Dies kann zusätzliche Kosten für Ihr verursachen AWS-Konto. Beachten Sie beim Erstellen oder Bearbeiten identitätsbasierter Richtlinien die folgenden 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*.

## Verwenden der Konsole CodeArtifact
<a name="security_iam_id-based-policy-examples-console"></a>

Um auf die AWS CodeArtifact Konsole zugreifen zu können, benötigen Sie ein Mindestmaß an Berechtigungen. Diese Berechtigungen müssen es Ihnen ermöglichen, Details zu den CodeArtifact Ressourcen in Ihrem aufzulisten und anzuzeigen AWS-Konto. Wenn Sie eine identitätsbasierte Richtlinie erstellen, die strenger ist als die mindestens erforderlichen Berechtigungen, funktioniert die Konsole nicht wie vorgesehen für Entitäten (Benutzer oder Rollen) mit dieser Richtlinie.

Sie müssen Benutzern, die nur die API AWS CLI oder die AWS API aufrufen, keine Mindestberechtigungen für die Konsole gewähren. Stattdessen sollten Sie nur Zugriff auf die Aktionen zulassen, die der API-Operation entsprechen, die die Benutzer ausführen möchten.

Um sicherzustellen, dass Benutzer und Rollen die CodeArtifact Konsole weiterhin verwenden können, fügen Sie den Entitäten auch die `AWSCodeArtifactAdminAccess` oder die `AWSCodeArtifactReadOnlyAccess` AWS verwaltete Richtlinie hinzu. Weitere Informationen finden Sie unter [Hinzufügen von Berechtigungen zu einem Benutzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) im *IAM-Benutzerhandbuch*.

## Von AWS verwaltete (vordefinierte) Richtlinien für AWS CodeArtifact
<a name="managed-policies"></a>

AWS adressiert viele gängige Anwendungsfälle durch die Bereitstellung eigenständiger IAM-Richtlinien, die von erstellt und verwaltet AWS werden. Diese AWS verwalteten Richtlinien gewähren die erforderlichen Berechtigungen für allgemeine Anwendungsfälle, sodass Sie nicht erst untersuchen müssen, welche Berechtigungen benötigt werden. Weitere Informationen finden Sie unter [AWS-verwaltete Richtlinien](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) im *IAM Benutzerhandbuch*.

Die folgenden AWS verwalteten Richtlinien, die Sie Benutzern in Ihrem Konto zuordnen können, sind spezifisch für AWS CodeArtifact.
+ `AWSCodeArtifactAdminAccess`— Bietet vollen Zugriff, CodeArtifact einschließlich der Berechtigungen zur Verwaltung von CodeArtifact Domänen. 

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

****  

  ```
  {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
        {
           "Action": [
              "codeartifact:*"
           ],
           "Effect": "Allow",
           "Resource": "*"
        },
        {
           "Effect": "Allow",
           "Action": "sts:GetServiceBearerToken",
           "Resource": "*",
           "Condition": {
              "StringEquals": {
                 "sts:AWSServiceName": "codeartifact.amazonaws.com"
              }
           }
        }
     ]
  }
  ```

------
+ `AWSCodeArtifactReadOnlyAccess`— Bietet schreibgeschützten Zugriff auf. CodeArtifact

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

****  

  ```
  {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
        {
           "Action": [
              "codeartifact:Describe*",
              "codeartifact:Get*",
              "codeartifact:List*",
              "codeartifact:ReadFromRepository"
           ],
           "Effect": "Allow",
           "Resource": "*"
        },
        {
           "Effect": "Allow",
           "Action": "sts:GetServiceBearerToken",
           "Resource": "*",
           "Condition": {
              "StringEquals": {
                 "sts:AWSServiceName": "codeartifact.amazonaws.com"
              }
           }
        }  
     ]
  }
  ```

------

Um CodeArtifact Servicerollen zu erstellen und zu verwalten, müssen Sie auch die AWS verwaltete Richtlinie mit dem Namen anhängen. `IAMFullAccess`

Sie können auch Ihre eigenen, benutzerdefinierten IAM-Richtlinien erstellen, um Berechtigungen für CodeArtifact-Aktionen und -Ressourcen zu gewähren. Die benutzerdefinierten Richtlinien können Sie dann den IAM-Benutzern oder -Gruppen zuweisen, die diese Berechtigungen benötigen.

## Erlauben Sie einem Benutzer, seine eigenen Berechtigungen einzusehen
<a name="security_iam_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 umfasst Berechtigungen zum Ausführen dieser Aktion auf der Konsole oder programmgesteuert mithilfe der AWS CLI AWS OR-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": "*"
        }
    ]
}
```

## Erlaubt einem Benutzer, Informationen über Repositorys und Domänen abzurufen
<a name="security_iam_id-based-policy-examples-repos-and-domains"></a>

Die folgende Richtlinie ermöglicht es einem IAM-Benutzer oder einer IAM-Rolle, jede Art von CodeArtifact Ressource aufzulisten und zu beschreiben, einschließlich Domänen, Repositorys, Pakete und Ressourcen. Die Richtlinie beinhaltet auch die `codeArtifact:ReadFromRepository` Berechtigung, die es dem Prinzipal ermöglicht, Pakete aus einem Repository abzurufen. CodeArtifact Es erlaubt nicht, neue Domänen oder Repositorys zu erstellen und neue Pakete zu veröffentlichen.

Die `sts:GetServiceBearerToken` Berechtigungen `codeartifact:GetAuthorizationToken` und sind erforderlich, um die `GetAuthorizationToken` API aufzurufen.

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
      {
         "Effect": "Allow",
         "Action": [
            "codeartifact:List*",
            "codeartifact:Describe*",
            "codeartifact:Get*",
            "codeartifact:Read*"
         ],
         "Resource": "*"      
      },
      {
         "Effect": "Allow",
         "Action": "sts:GetServiceBearerToken",
         "Resource": "*",
         "Condition": {
            "StringEquals": {
               "sts:AWSServiceName": "codeartifact.amazonaws.com"
            }
         }
      }
   ]
}
```

------

## Erlauben Sie einem Benutzer, Informationen zu bestimmten Domänen abzurufen
<a name="security_iam_id-based-policy-examples-specific-domains"></a>

Im Folgenden finden Sie ein Beispiel für eine Berechtigungsrichtlinie, die es einem Benutzer ermöglicht, nur Domänen in der `us-east-2` Region für Konten `123456789012` für jede Domäne aufzulisten, die mit dem Namen beginnen`my`.

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
      {
         "Effect": "Allow",
         "Action": "codeartifact:ListDomains",
         "Resource": "arn:aws:codeartifact:us-east-2:111122223333:domain/my*"      
      }
   ]
}
```

------

## Erlaubt einem Benutzer, Informationen über bestimmte Repositorys abzurufen
<a name="security_iam_id-based-policy-examples-specific-repos"></a>

Im Folgenden finden Sie ein Beispiel für eine Berechtigungsrichtlinie, die es einem Benutzer ermöglicht, Informationen über Repositorys abzurufen, die mit enden`test`, einschließlich Informationen über die darin enthaltenen Pakete. Der Benutzer kann keine Ressourcen veröffentlichen, erstellen oder löschen.

Die `sts:GetServiceBearerToken` Berechtigungen `codeartifact:GetAuthorizationToken` und sind erforderlich, um die `GetAuthorizationToken` API aufzurufen.

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
      {
         "Effect": "Allow",
         "Action": [
            "codeartifact:List*",
            "codeartifact:Describe*",
            "codeartifact:Get*",
            "codeartifact:Read*"
         ],
         "Resource": "arn:aws:codeartifact:*:*:repository/*/*test"      
      },
      {
         "Effect": "Allow",
         "Action": [
            "codeartifact:List*",
            "codeartifact:Describe*"
         ],
         "Resource": "arn:aws:codeartifact:*:*:package/*/*test/*/*/*"   
      },
      {
         "Effect": "Allow",
         "Action": "sts:GetServiceBearerToken",
         "Resource": "*",
         "Condition": {
            "StringEquals": {
               "sts:AWSServiceName": "codeartifact.amazonaws.com"
            }
         }
      },
      {
         "Effect": "Allow",
         "Action": "codeartifact:GetAuthorizationToken",
         "Resource": "*"
      }
   ]
}
```

------

## Die Dauer des Autorisierungstokens
<a name="limit-token-duration"></a>

Benutzer müssen sich CodeArtifact mit Autorisierungstoken authentifizieren, um Paketversionen zu veröffentlichen oder zu nutzen. Autorisierungstoken sind nur während ihrer konfigurierten Lebensdauer gültig. Token haben eine Standardlebensdauer von 12 Stunden. Weitere Informationen zu Autorisierungstoken finden Sie unter[AWS CodeArtifact Authentifizierung und Tokens](tokens-authentication.md).

Beim Abrufen eines Tokens können Benutzer die Lebensdauer des Tokens konfigurieren. Gültige Werte für die Lebensdauer eines Autorisierungstokens sind `0` und eine beliebige Zahl zwischen `900` (15 Minuten) und `43200` (12 Stunden). Mit dem Wert von `0` wird ein Token mit einer Dauer erstellt, die den temporären Anmeldeinformationen der Benutzerrolle entspricht.

Administratoren können die gültigen Werte für die Gültigkeitsdauer eines Autorisierungstokens einschränken, indem sie den `sts:DurationSeconds` Bedingungsschlüssel in der Berechtigungsrichtlinie verwenden, die dem Benutzer oder der Gruppe zugewiesen ist. Wenn der Benutzer versucht, ein Autorisierungstoken mit einer Gültigkeitsdauer außerhalb der gültigen Werte zu erstellen, schlägt die Tokenerstellung fehl.

Die folgenden Beispielrichtlinien begrenzen die mögliche Dauer eines von CodeArtifact Benutzern erstellten Autorisierungstokens.

**Beispielrichtlinie: Beschränken Sie die Lebensdauer eines Tokens auf genau 12 Stunden (43200 Sekunden)**

Mit dieser Richtlinie können Benutzer nur Autorisierungstoken mit einer Lebensdauer von 12 Stunden erstellen.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "codeartifact:*",
            "Resource": "*"
        },
        {
            "Sid": "sts",
            "Effect": "Allow",
            "Action": "sts:GetServiceBearerToken",
            "Resource": "*",
            "Condition": {
                "NumericEquals": {
                    "sts:DurationSeconds": 43200
                },
                "StringEquals": {
                    "sts:AWSServiceName": "codeartifact.amazonaws.com"
                }
            }
        }
    ]
}
```

------

**Beispielrichtlinie: Beschränken Sie die Gültigkeitsdauer von Token auf 15 Minuten bis 1 Stunde oder entspricht dem Zeitraum der temporären Anmeldeinformationen des Benutzers**

Mit dieser Richtlinie können Benutzer Token erstellen, die zwischen 15 Minuten und 1 Stunde gültig sind. Benutzer können auch ein Token erstellen, das für die Dauer der temporären Anmeldeinformationen ihrer Rolle gültig ist, indem sie `0` für angeben`--durationSeconds`.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "codeartifact:*",
            "Resource": "*"
        },
        {
            "Sid": "sts",
            "Effect": "Allow",
            "Action": "sts:GetServiceBearerToken",
            "Resource": "*",
            "Condition": {
                "NumericLessThanEquals": {
                    "sts:DurationSeconds": 3600
                },
                "StringEquals": {
                    "sts:AWSServiceName": "codeartifact.amazonaws.com"
                }
            }
        }
    ]
}
```

------