

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.

# Richtlinien für private Repositorys in Amazon ECR
<a name="repository-policies"></a>

Amazon ECR verwendet ressourcenbasierte Berechtigungen, um den Zugriff auf Repositories zu kontrollieren. Mit ressourcenbasierten Berechtigungen können Sie angeben, welche Benutzer oder Rollen Zugriff auf ein Repository haben und welche Aktionen sie im Repository ausführen können. Standardmäßig hat nur das AWS Konto, das das Repository erstellt hat, Zugriff auf das Repository. Sie können eine Repository-Richtlinie anwenden, die zusätzlichen Zugriff auf Ihr Repository ermöglicht.

**Topics**
+ [Repository-Richtlinien im Vergleich zu IAM-Richtlinien](#repository-policy-vs-iam-policy)
+ [Beispiele für Richtlinien für private Repositorien in Amazon ECR](repository-policy-examples.md)
+ [Festlegung einer Richtlinienerklärung für private Repositorien in Amazon ECR](set-repository-policy.md)

## Repository-Richtlinien im Vergleich zu IAM-Richtlinien
<a name="repository-policy-vs-iam-policy"></a>

Amazon ECR Repository-Richtlinien sind eine Untergruppe von IAM-Richtlinien, die für die Kontrolle des Zugriffs auf einzelne Amazon ECR-Repositorys ausgelegt sind und speziell dafür verwendet werden. IAM-Richtlinien werden im Allgemeinen verwendet, um Berechtigungen für den gesamten Amazon ECR-Service anzuwenden, können aber auch verwendet werden, um den Zugriff auf bestimmte Ressourcen zu steuern.

Sowohl Amazon-ECR-Repository-Richtlinien als auch IAM-Richtlinien werden verwendet, um zu bestimmen, welche Aktionen ein bestimmter Benutzer oder eine bestimmte Rolle in einem Repository ausführen darf. Wenn ein Benutzer oder eine Rolle eine Aktion über eine Repository-Richtlinie ausführen darf, aber über eine IAM-Richtlinie nicht dazu berechtigt ist (oder umgekehrt), wird die Aktion verweigert. Ein Benutzer oder eine Rolle muss nur entweder über eine Repository-Richtlinie oder eine IAM-Richtlinie die Berechtigung für eine Aktion erhalten, nicht aber über beide, damit die Aktion erlaubt ist.

**Wichtig**  
Amazon ECR erfordert, dass Benutzer über eine IAM-Richtlinie die Berechtigung haben, die `ecr:GetAuthorizationToken` API aufzurufen, bevor sie sich bei einer Registrierung authentifizieren und Images aus einem Amazon ECR-Repository pushen oder pullen können. Amazon ECR bietet mehrere verwaltete IAM-Richtlinien zur Steuerung des Benutzerzugriffs auf unterschiedlichen Ebenen. Weitere Informationen finden Sie unter [Beispiele für identitätsbasierte Amazon Elastic Container Service-Richtlinien](security_iam_id-based-policy-examples.md).

Sie können eine der beiden Richtlinientypen für die Zugriffssteuerung Ihrer Repositorys verwenden, wie in den folgenden Beispielen dargestellt.

Dieses Beispiel zeigt eine Amazon-ECR-Repository-Richtlinie, die es einem bestimmten Benutzer ermöglicht, das Repository und die Images innerhalb des Repositorys zu beschreiben.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ECRRepositoryPolicy",
            "Effect": "Allow",
            "Principal": {"AWS": "arn:aws:iam::111122223333:user/username"},
            "Action": [
                "ecr:DescribeImages",
                "ecr:DescribeRepositories"
            ],
            "Resource": "*"
        }
    ]
}
```

------

Dieses Beispiel zeigt eine IAM-Richtlinie, die das gleiche Ziel wie oben erreicht, indem die Richtlinie auf ein Repository (angegeben durch den vollständigen ARN des Repository) unter Verwendung des Ressourcenparameters beschränkt wird. Weitere Informationen zum Format von Amazon-Ressourcenname (ARN) finden Sie unter [Ressourcen](security_iam_service-with-iam.md#security_iam_service-with-iam-id-based-policies-resources).

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowDescribeRepoImage",
            "Effect": "Allow",
            "Action": [
                "ecr:DescribeImages",
                "ecr:DescribeRepositories"
            ],
            "Resource": ["arn:aws:ecr:us-east-1:111122223333:repository/repository-name"]
        }
    ]
}
```

------

# Beispiele für Richtlinien für private Repositorien in Amazon ECR
<a name="repository-policy-examples"></a>

**Wichtig**  
Die Beispiele für Repository-Richtlinien auf dieser Seite sollen auf private Repositorys von Amazon ECR angewendet werden. Sie funktionieren nicht richtig, wenn sie direkt mit einem IAM-Prinzipal verwendet werden, es sei denn, sie werden dahingehend geändert, dass das Amazon-ECR-Repository als Ressource angegeben wird. Weitere Hinweise zur Einrichtung von Repository-Richtlinien finden Sie unter [Festlegung einer Richtlinienerklärung für private Repositorien in Amazon ECR](set-repository-policy.md).

Amazon ECR Repository-Richtlinien sind eine Untergruppe von IAM-Richtlinien, die für die Kontrolle des Zugriffs auf einzelne Amazon ECR-Repositorys ausgelegt sind und speziell dafür verwendet werden. IAM-Richtlinien werden im Allgemeinen verwendet, um Berechtigungen für den gesamten Amazon ECR-Service anzuwenden, können aber auch verwendet werden, um den Zugriff auf bestimmte Ressourcen zu steuern. Weitere Informationen finden Sie unter [Repository-Richtlinien im Vergleich zu IAM-Richtlinien](repository-policies.md#repository-policy-vs-iam-policy).

Die folgenden Beispiele für Repository-Richtlinien zeigen Berechtigungsanweisungen, die Sie verwenden können, um den Zugriff auf Ihre privaten Repositorys von Amazon ECR zu kontrollieren.

**Wichtig**  
Amazon ECR setzt voraus, dass Benutzer über eine IAM-Richtlinie die Erlaubnis haben, die `ecr:GetAuthorizationToken`-API aufzurufen, bevor sie sich bei einer Registrierung authentifizieren und Images aus einem Amazon ECR-Repository pushen oder pullen können. Amazon ECR bietet mehrere verwaltete IAM-Richtlinien zur Steuerung des Benutzerzugriffs auf unterschiedlichen Ebenen. Weitere Informationen finden Sie unter [Beispiele für identitätsbasierte Amazon Elastic Container Service-Richtlinien](security_iam_id-based-policy-examples.md).

## Beispiel: Eine oder mehrere -Benutzer zulassen
<a name="IAM_within_account"></a>

Die folgende Repository-Richtlinie erlaubt es einem oder mehreren -Benutzern, Images in ein Repository zu pushen und von dort zu pullen.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowPushPull",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::111122223333:user/push-pull-user-1",
                    "arn:aws:iam::111122223333:user/push-pull-user-2"
                ]
            },
            "Action": [
                "ecr:BatchGetImage",
                "ecr:BatchCheckLayerAvailability",
                "ecr:CompleteLayerUpload",
                "ecr:GetDownloadUrlForLayer",
                "ecr:InitiateLayerUpload",
                "ecr:PutImage",
                "ecr:UploadLayerPart"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Beispiel: Ein anderes Konto erlauben
<a name="IAM_allow_other_accounts"></a>

Die folgende Repository-Richtlinie gewährt einem angegebenen Konto die Berechtigung zur Push-Übertragung von Images.

**Wichtig**  
Für das Konto, dem Sie Berechtigungen erteilen, muss die Region, in der Sie die Repository-Richtlinie erstellen, aktiviert sein, sonst tritt ein Fehler auf.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowCrossAccountPush",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:root"
            },
            "Action": [
                "ecr:BatchCheckLayerAvailability",
                "ecr:CompleteLayerUpload",
                "ecr:InitiateLayerUpload",
                "ecr:PutImage",
                "ecr:UploadLayerPart"
            ],
            "Resource": "*"
        }
    ]
}
```

------

Die folgende Repository-Richtlinie ermöglicht es einigen Benutzern, Bilder abzurufen (*pull-user-1*und*pull-user-2*) und gleichzeitig vollen Zugriff auf andere (*admin-user*) zu gewähren.

**Anmerkung**  
Bei komplizierteren Repository-Richtlinien, die derzeit nicht in der unterstützt werden AWS-Managementkonsole, können Sie die Richtlinie mit dem [https://docs.aws.amazon.com/cli/latest/reference/ecr/set-repository-policy.html](https://docs.aws.amazon.com/cli/latest/reference/ecr/set-repository-policy.html) AWS CLI Befehl anwenden.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowPull",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::111122223333:user/pull-user-1",
                    "arn:aws:iam::111122223333:user/pull-user-2"
                ]
            },
            "Action": [
                "ecr:BatchGetImage",
                "ecr:GetDownloadUrlForLayer"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowAll",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:user/admin-user"
            },
            "Action": [
                "ecr:*"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Beispiel: Allen verweigern
<a name="IAM_deny_all"></a>

Die folgende Repository-Richtlinie verweigert allen Benutzern in allen Konten die Möglichkeit, Images zu pullen.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "DenyPull",
            "Effect": "Deny",
            "Principal": "*",
            "Action": [
                "ecr:BatchGetImage",
                "ecr:GetDownloadUrlForLayer"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Beispiel: Beschränkung des Zugriffs auf bestimmte IP-Adressen
<a name="IAM_restrict_ip"></a>

Im folgenden Beispiel wird jedem Benutzer die Berechtigung zum Ausführen von Amazon-ECR-Vorgängen verweigert, wenn es aus einem bestimmten Adressbereich auf ein Repository angewendet wird.

Die Bedingung in dieser Anweisung identifiziert den `54.240.143.*` Bereich der zulässigen IP-Adressen des Internetprotokolls, Version 4 (IPv4).

Der `Condition` Block verwendet die `NotIpAddress` Bedingungen und den `aws:SourceIp` Bedingungsschlüssel, bei dem es sich um einen AWS-weiten Bedingungsschlüssel handelt. Weitere Informationen über diese Bedingungsschlüssel finden Sie unter [Globale AWS -Bedingungskontextschlüssel](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html). Die `aws:sourceIp` IPv4 Werte verwenden die Standard-CIDR-Notation. Weitere Informationen finden Sie unter [IP-Adressen-Bedingungsoperatoren](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_IPAddress) im *IAM-Benutzerhandbuch*.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "ECRPolicyId1",
    "Statement": [
        {
            "Sid": "IPAllow",
            "Effect": "Deny",
            "Principal": "*",
            "Action": "ecr:*",
            "Resource": "*",
            "Condition": {
                "NotIpAddress": {
                    "aws:SourceIp": "54.240.143.0/24"
                }
            }
        }
    ]
}
```

------

## Beispiel: Einen AWS Dienst zulassen
<a name="IAM_service_linked"></a>

Die folgende Repository-Richtlinie ermöglicht den AWS CodeBuild Zugriff auf die Amazon ECR-API-Aktionen, die für die Integration mit diesem Service erforderlich sind. Wenn Sie das folgende Beispiel verwenden, sollten Sie die Bedingungsschlüssel `aws:SourceArn` und `aws:SourceAccount` verwenden, um zu ermitteln, welche Ressourcen diese Berechtigungen übernehmen können. Weitere Informationen finden Sie unter [Amazon ECR sample for CodeBuild](https://docs.aws.amazon.com/codebuild/latest/userguide/sample-ecr.html) im *AWS CodeBuild Benutzerhandbuch*.

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Sid":"CodeBuildAccess",
         "Effect":"Allow",
         "Principal":{
            "Service":"codebuild.amazonaws.com"
         },
         "Action":[
            "ecr:BatchGetImage",
            "ecr:GetDownloadUrlForLayer"
         ],
         "Resource": "*",
         "Condition":{
            "ArnLike":{
               "aws:SourceArn":"arn:aws:codebuild:us-east-1:123456789012:project/project-name"
            },
            "StringEquals":{
               "aws:SourceAccount":"123456789012"
            }
         }
      }
   ]
}
```

------

# Festlegung einer Richtlinienerklärung für private Repositorien in Amazon ECR
<a name="set-repository-policy"></a>

Sie können einem Repository im eine Erklärung zur Zugriffsrichtlinie hinzufügen, AWS-Managementkonsole indem Sie die folgenden Schritte ausführen. Pro Repository können mehrere Richtlinienanweisungen hinzugefügt werden. Beispiele für Richtlinien finden Sie unter [Beispiele für Richtlinien für private Repositorien in Amazon ECR](repository-policy-examples.md).

**Wichtig**  
Amazon ECR erfordert, dass Benutzer über eine IAM-Richtlinie die Erlaubnis haben, die`ecr:GetAuthorizationToken`-API aufzurufen, bevor sie sich bei einer Registrierung authentifizieren und Images aus einem Amazon ECR-Repository pushen oder pullen können. Amazon ECR bietet mehrere verwaltete IAM-Richtlinien zur Steuerung des Benutzerzugriffs auf unterschiedlichen Ebenen. Weitere Informationen finden Sie unter [Beispiele für identitätsbasierte Amazon Elastic Container Service-Richtlinien](security_iam_id-based-policy-examples.md).

**So legen Sie eine Repository-Richtlinienanweisung fest**

1. Öffnen Sie die Amazon ECR-Konsole unter [https://console.aws.amazon.com/ecr/Repositories](https://console.aws.amazon.com/ecr/repositories).

1. Wählen Sie auf der Navigationsleiste die Region aus, in der das Repository enthalten ist, für das eine Richtlinienanweisung festgelegt werden soll.

1. Wählen Sie im linken Navigationsbereich **Repositorys** aus.

1. Wählen Sie auf der Seite **Repositorys** das Repository aus, für das Sie eine Richtlinienanweisung festlegen möchten, um den Inhalt des Repositorys anzuzeigen.

1. Wählen Sie in der Listenansicht des Repository-Images im Navigationsbereich **Berechtigungen**, **Bearbeiten**.
**Anmerkung**  
Wenn Sie die Option **Berechtigungen** im Navigationsbereich nicht sehen, vergewissern Sie sich, dass Sie sich in der Listenansicht des Repository-Images befinden.

1. Wählen Sie auf der Seite **Berechtigungen bearbeiten** die Option **Anweisung hinzufügen** aus.

1. Geben Sie für **Anweisungsname** einen Namen für die Anweisung ein.

1. Wählen Sie für **Effect** aus, ob die Richtlinienanweisung zu einer Zugriffserlaubnis oder einer expliziten Zugriffsverweigerung führt.

1. Wählen Sie für **Principal** den Bereich aus, für den die Richtlinienanweisung angewendet werden soll. Weitere Informationen finden Sie unter [AWS JSON-Richtlinienelemente: Principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html) im *IAM-Benutzerhandbuch*.
   + Sie können die Erklärung auf alle authentifizierten AWS Benutzer anwenden, indem Sie das Kontrollkästchen **Jeder (\$1) aktivieren**.
   + Geben Sie für **Service principal** den Prinzipalnamen des Services (z. B. `ecs.amazonaws.com`) an, um die Anweisung auf einen bestimmten Service anzuwenden.
   + Geben Sie für **AWS AWS Konto IDs** eine Kontonummer an (z. B.`111122223333`), um die Abrechnung für alle Benutzer eines bestimmten AWS Kontos zu verwenden. Mehrere Konten können mithilfe einer durch Komma getrennten Liste angegeben werden.
**Wichtig**  
Für das Konto, dem Sie Berechtigungen erteilen, muss die Region, in der Sie die Repository-Richtlinie erstellen, aktiviert sein, sonst tritt ein Fehler auf.
   + Wählen Sie für **IAM-Entitäten** die Rollen oder Benutzer in Ihrem AWS Konto aus, auf die die Abrechnung angewendet werden soll.
**Anmerkung**  
Bei komplizierteren Repository-Richtlinien, die derzeit nicht in der unterstützt werden AWS-Managementkonsole, können Sie die Richtlinie mit dem [https://docs.aws.amazon.com/cli/latest/reference/ecr/set-repository-policy.html](https://docs.aws.amazon.com/cli/latest/reference/ecr/set-repository-policy.html) AWS CLI Befehl anwenden.

1. Wählen Sie für **Aktionen** aus der Liste der einzelnen API-Vorgänge den Bereich der Amazon ECR-API-Vorgänge aus, für den die Richtlinienanweisung gelten soll.

1. Wenn Sie fertig sind, klicken Sie auf **Save**, um die Richtlinie zu speichern.

1. Wiederholen Sie den vorherigen Schritt für jede hinzuzufügende Repository-Richtlinie.