

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.

# Erstellen einer Genehmigungsregelvorlage
<a name="how-to-create-template"></a>

Sie können einzelne oder mehrere Genehmigungsregelvorlagen erstellen, um Entwicklungs-Workflows über Repositorys hinweg anzupassen. Durch das Erstellen mehrerer Vorlagen können Sie die automatische Erstellung von Genehmigungsregeln so gestalten, dass für unterschiedliche Branches die jeweils erforderlichen Genehmigungen vorausgesetzt und Kontrollen bereitgestellt werden. Sie können beispielsweise unterschiedliche Vorlagen für Produktions- und Entwicklungs-Branches erstellen und diese Vorlagen einzelnen oder mehreren Repositorys zuweisen. Wenn Benutzer Pull-Anforderungen in diesen Repositorys erstellen, wird die Anforderung anhand dieser Vorlagen ausgewertet. Wenn die Anforderung den Bedingungen in den zugewiesenen Vorlagen entspricht, werden Genehmigungsregeln für die Pull-Anforderung erstellt.

Sie können die Konsole verwenden oder Vorlagen AWS CLI für Genehmigungsregeln erstellen. Weitere Informationen zu verwalteten Richtlinien und Berechtigungen für Genehmigungsregelvorlagen finden Sie unter [Berechtigungen für Aktionen auf Vorlagen für Genehmigungsregeln](auth-and-access-control-permissions-reference.md#aa-art) und[AWS verwaltete Richtlinien für CodeCommit](security-iam-awsmanpol.md).

**Topics**
+ [Erstellen Sie eine Vorlage für Genehmigungsregeln (Konsole)](#how-to-create-template-console)
+ [Erstellen Sie eine Vorlage für Genehmigungsregeln ()AWS CLI](#how-to-create-template-cli)

## Erstellen Sie eine Vorlage für Genehmigungsregeln (Konsole)
<a name="how-to-create-template-console"></a>

Genehmigungsregelvorlagen sind standardmäßig keinem Repository zugeordnet. Sie können eine Zuordnung zwischen einer Vorlage und einzelnen oder mehreren Repositorys herstellen, wenn Sie die Vorlage erstellen. Sie können die Zuordnungen aber auch zu einem späteren Zeitpunkt vornehmen.<a name="create-template-console"></a>

## So erstellen Sie eine Genehmigungsregelvorlage (Konsole)
<a name="create-template-console"></a>

1. Öffnen Sie die CodeCommit Konsole unter [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home).

1. Wählen Sie **Approval rule templates (Genehmigungsregelvorlagen)** und dann **Create template (Vorlage erstellen)** aus.

1. Geben Sie in das Feld **Approval rule template name (Name der Genehmigungsregelvorlage)** einen aussagekräftigen Namen an, der den Zweck beschreibt. Wenn Sie beispielsweise möchten, dass eine Person aus einer Gruppe leitender Entwickler eine Pull-Anforderung genehmigen muss, bevor sie zusammengeführt werden kann, können Sie die Regel beispielsweise **Require 1 approver from a senior developer** nennen. 

1. (Optional) Geben Sie in das Feld **Description (Beschreibung)** eine Beschreibung des Zwecks dieser Vorlage ein. Dies erleichtert anderen Benutzern die Entscheidung, ob diese Vorlage für ihre Repositorys geeignet ist.

1. Geben Sie in das Feld **Number of approvals needed (Anzahl erforderlicher Genehmigungen)** die gewünschte Anzahl ein. Der Standardwert ist 1. 

1. (Optional) Wenn Sie voraussetzen möchten, dass die Genehmigungen für eine Pull-Anforderung von einer bestimmten Gruppe von Benutzern stammen, wählen Sie unter **Approval rule members (Genehmigungsregelmitglieder)** die Option **Add (Hinzufügen)** aus. Wählen Sie unter **Approver type (Genehmigertyp)** eine der folgenden Optionen aus: 
   + **IAM-Benutzername oder angenommene Rolle**: Diese Option füllt die Amazon Web Services Services-Konto-ID für das Konto, mit dem Sie sich angemeldet haben, vorab aus und erfordert nur einen Namen. Sie kann sowohl für IAM-Benutzer als auch für Benutzer mit Verbundzugriff verwendet werden, deren Name mit dem angegebenen Namen übereinstimmt. Dies ist eine sehr leistungsstarke Option, die ein hohes Maß an Flexibilität bietet. Wenn Sie beispielsweise diese Option wählen und mit dem Amazon Web Services Services-Konto 123456789012 angemeldet sind und angeben**Mary\$1Major**, werden alle folgenden Informationen als Genehmigungen von diesem Benutzer gezählt:
     + Ein IAM-Benutzer im Konto () `arn:aws:iam::123456789012:user/Mary_Major`
     + Ein Verbundbenutzer, der in IAM als Mary\$1Major () identifiziert wurde `arn:aws:sts::123456789012:federated-user/Mary_Major`

     Diese Option erkennt keine aktive Sitzung eines Benutzers, der die Rolle **CodeCommitReview** angenommen hat und den Rollensitzungsnamen Mary\$1Major (`arn:aws:sts::123456789012:assumed-role/CodeCommitReview/Mary_Major`) verwendet, sofern Sie kein Platzhalterzeichen angeben (`*Mary_Major`). Sie können den Rollennamen auch explizit angeben (`CodeCommitReview/Mary_Major`).
   + **Vollqualifizierter ARN**: Mit dieser Option können Sie den vollqualifizierten Amazon-Ressourcennamen (ARN) des IAM-Benutzers oder der IAM-Rolle angeben. Diese Option unterstützt auch angenommene Rollen, die von anderen AWS Diensten verwendet werden, wie z. B. AWS Lambda und AWS CodeBuild. Bei angenommenen Rollen sollte das ARN-Format bei Rollen „`arn:aws:sts::AccountID:assumed-role/RoleName`“ und bei Funktionen „`arn:aws:sts::AccountID:assumed-role/FunctionName`“ sein.

   Wenn Sie als Genehmigertyp den **IAM-Benutzernamen oder die angenommene Rolle** ausgewählt haben, geben Sie im Feld **Wert** den Namen des IAM-Benutzers oder der IAM-Rolle oder den vollqualifizierten ARN des Benutzers oder der Rolle ein. Wählen Sie erneut **Add (Hinzufügen)** aus, um weitere Benutzer oder Rollen hinzuzufügen, bis Sie alle Benutzer oder Rollen hinzugefügt haben, deren Genehmigungen auf die Anzahl der erforderlichen Genehmigungen angerechnet werden sollen. 

   Für beide Genehmigertypen können Platzhalterzeichen (\$1) in den Werten verwendet werden. Wenn Sie beispielsweise die Option „**IAM-Benutzername“ oder „Angenommene Rolle**“ wählen und angeben, dass alle Benutzer**CodeCommitReview/\$1**, die die Rolle von annehmen, im **CodeCommitReview** Genehmigungspool gezählt werden. Ihre individuellen Rollensitzungsnamen werden auf die erforderliche Anzahl von Genehmigern angerechnet. Auf diese Weise zählen sowohl Mary\$1Major als auch Li\$1Juan als Genehmigungen, wenn sie angemeldet sind und die Rolle `CodeCommitReview` annehmen. [Weitere Informationen zu IAM ARNs, Platzhaltern und Formaten finden Sie unter IAM-Identifikatoren.](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns)
**Anmerkung**  
Genehmigungsregeln unterstützen keine kontoübergreifenden Genehmigungen.

1. (Optional) Geben Sie unter **Branch filters (Branch-Filter)** die Branch-Zielnamen ein, die zum Filtern der Erstellung von Genehmigungsregeln verwendet werden sollen. Wenn Sie beispielsweise angeben*main*, dass eine Genehmigungsregel für Pull Requests in zugehörigen Repositorys nur erstellt wird, wenn der Ziel-Branch für den Pull Request ein Branch mit dem Namen ist. *main* Sie können Platzhalterzeichen (\$1) in Branch-Namen verwenden, um Genehmigungsregeln allen Branch-Namen zuzuweisen, die den Namen mit Platzhaltern entsprechen. Sie dürfen Platzhalterzeichen jedoch nicht am Anfang eines Branch-Namens verwenden. Sie können bis zu 100 Branch-Namen angeben. Wenn Sie keine Filter angeben, gilt die Vorlage für alle Branches in einem zugeordneten Repository.

1. (Optional) Wählen Sie unter **Zugeordnete Repositorys** in der Liste **Repositorys** die Repositorys aus, AWS-Region die Sie dieser Genehmigungsregel zuordnen möchten. 
**Anmerkung**  
Nach dem Erstellen der Vorlage können Sie Repositorys zuordnen. Weitere Informationen finden Sie unter [Ordnen Sie eine Vorlage für Genehmigungsregeln einem Repository zu](how-to-associate-template.md).

1. Wählen Sie **Erstellen** aus.

![\[Eine Vorlage für Genehmigungsregeln, für die ein Genehmiger aus einer definierten Genehmigungsregel erforderlich ist, wenn eine Pull-Anfrage in einem Branch namens main erstellt wird, der zwei Repositorys zugeordnet ist\]](http://docs.aws.amazon.com/de_de/codecommit/latest/userguide/images/codecommit-approval-rule-template.png)


## Erstellen Sie eine Vorlage für Genehmigungsregeln ()AWS CLI
<a name="how-to-create-template-cli"></a>

Sie können die verwenden AWS CLI , um Vorlagen für Genehmigungsregeln zu erstellen. Wenn Sie die verwenden AWS CLI, können Sie Zielverweise für die Vorlage angeben, sodass sie nur für Pull Requests gilt, deren Ziel-Branches mit denen in der Vorlage übereinstimmen.<a name="create-template-cli"></a>

## So erstellen Sie eine Genehmigungsregelvorlage (AWS CLI)
<a name="create-template-cli"></a>

1. Führen Sie am Terminal oder in der Befehlszeile den Befehl **create-approval-rule-template** unter Angabe der folgenden Informationen aus:
   + Name der Genehmigungsregelvorlage. Empfohlen wird ein Name, der ihren Zweck beschreibt.
   + Beschreibung der Genehmigungsregelvorlage. Wie beim Namen sollte die Eingabe aussagekräftig sein.
   + JSON-Struktur der Genehmigungsregelvorlage. Diese Struktur kann Anforderungen für Zielverweise umfassen, d. h. die Ziel-Branches für Pull-Anforderungen, für die die Genehmigungsregel gilt, und Genehmigungs-Pool-Mitglieder, also Benutzer, deren Genehmigungen für die Anzahl erforderlicher Genehmigungen gezählt werden.

   Beim Erstellen des Inhalts der Genehmigungsregel können Sie Genehmiger in einem Genehmigungs-Pool auf zwei Arten angeben:
   + **CodeCommitApprovers**: Für diese Option sind nur ein Amazon Web Services Services-Konto und eine Ressource erforderlich. Sie kann sowohl für IAM-Benutzer als auch für Benutzer mit Verbundzugriff verwendet werden, deren Name mit dem angegebenen Ressourcennamen übereinstimmt. Dies ist eine sehr leistungsstarke Option, die ein hohes Maß an Flexibilität bietet. Wenn Sie beispielsweise das AWS Konto 123456789012 und angeben**Mary\$1Major**, werden alle folgenden Angaben als Genehmigungen gezählt, die von diesem Benutzer stammen:
     + Ein IAM-Benutzer im Konto () `arn:aws:iam::123456789012:user/Mary_Major`
     + Ein Verbundbenutzer, der in IAM als Mary\$1Major () identifiziert wurde `arn:aws:sts::123456789012:federated-user/Mary_Major`

     Diese Option erkennt keine aktive Sitzung, in der jemand die Rolle von *SeniorDevelopers* mit dem Rollensitzungsnamen () übernimmt, es sei denn, Sie fügen einen Platzhalter *Mary\$1Major* (`arn:aws:sts::123456789012:assumed-role/SeniorDevelopers/Mary_Major`) hinzu. `*Mary_Major`
   + **Vollqualifizierter ARN**: Mit dieser Option können Sie den vollqualifizierten Amazon-Ressourcennamen (ARN) des IAM-Benutzers oder der IAM-Rolle angeben. 

   [Weitere Informationen zu IAM ARNs, Platzhaltern und Formaten finden Sie unter IAM-Identifikatoren.](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns)

   Im folgenden Beispiel wird eine Genehmigungsregelvorlage namens **2-approver-rule-for-main** mit der Beschreibung **Requires two developers from the team to approve the pull request if the destination branch is main** erstellt. Für die Vorlage müssen zwei Benutzer, die die Rolle **CodeCommitReview** angenommen haben, alle Pull-Anforderungen genehmigen, bevor sie im Branch **main** zusammengeführt werden können:

   ```
   aws codecommit create-approval-rule-template --approval-rule-template-name 2-approver-rule-for-main --approval-rule-template-description "Requires two developers from the team to approve the pull request if the destination branch is main" --approval-rule-template-content "{\"Version\": \"2018-11-08\",\"DestinationReferences\": [\"refs/heads/main\"],\"Statements\": [{\"Type\": \"Approvers\",\"NumberOfApprovalsNeeded\": 2,\"ApprovalPoolMembers\": [\"arn:aws:sts::123456789012:assumed-role/CodeCommitReview/*\"]}]}"
   ```

1. Ist der Befehl erfolgreich, wird eine Ausgabe zurückgegeben, die wie folgt aussehen sollte:

   ```
   {
       "approvalRuleTemplate": {
           "approvalRuleTemplateName": "2-approver-rule-for-main",
           "creationDate": 1571356106.936,
           "approvalRuleTemplateId": "dd8b17fe-EXAMPLE",
           "approvalRuleTemplateContent": "{\"Version\": \"2018-11-08\",\"DestinationReferences\": [\"refs/heads/main\"],\"Statements\": [{\"Type\": \"Approvers\",\"NumberOfApprovalsNeeded\": 2,\"ApprovalPoolMembers\": [\"arn:aws:sts::123456789012:assumed-role/CodeCommitReview/*\"]}]}",
           "lastModifiedUser": "arn:aws:iam::123456789012:user/Mary_Major",
           "approvalRuleTemplateDescription": "Requires two developers from the team to approve the pull request if the destination branch is main",
           "lastModifiedDate": 1571356106.936,
           "ruleContentSha256": "4711b576EXAMPLE"
       }
   }
   ```