

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.

# Verwenden parametrisierter verwalteter Berechtigungen in AWS RAM
<a name="parameterized-managed-permissions"></a>

Eine parametrisierte verwaltete Berechtigung ist eine verwaltete Berechtigung mit Platzhaltern in den Richtlinienbedingungen, die Sie mit Ihren eigenen Werten ausfüllen. Diese Platzhalter sind Vorlagenparameter. Sie erstellen keine neue Art von verwalteten Berechtigungen. Sie erweitern die Richtlinienvorlage einer vorhandenen Vorlage um Variabilität.

Anstatt für jeden eindeutigen Bedingungswert eine separate, vom Kunden verwaltete Berechtigung zu erstellen, erstellen Sie eine vom Kunden verwaltete Berechtigung mit Parametern. Wenn Sie sie mit einer gemeinsam genutzten Ressource verknüpfen, geben Sie für jeden Parameter einen Wert an. AWS RAM ersetzt Ihre Werte in die Richtlinienvorlage und hängt die resultierende ressourcenbasierte Richtlinie an die gemeinsam genutzten Ressourcen an.

Ein zentrales Plattformteam erstellt beispielsweise eine vom Kunden verwaltete Genehmigung für AWS Systems Manager Parameter: Parameter speichern (Ressourcentyp) `ssm:Parameter`). Es gewährt nur Prinzipalen Lesezugriff mit einem zugelassenen `team` Etikett. Das Plattformteam teilt diese vom Kunden verwaltete Erlaubnis mit den Konten in seiner Organisation. Jedes Konto verwendet es dann in seinen eigenen Ressourcenfreigaben, die einen oder mehrere Parameter Store-Parameter enthalten können. In jeder Ressourcenfreigabe liefert das Konto die `team` Tag-Werte der Principals, die die gemeinsam genutzten Parameter Store-Parameter lesen können.

**Topics**
+ [Typen von Vorlagenparametern](#template-parameter-types)
+ [Syntaxregeln für Richtlinienvorlagen](#template-syntax-rules)
+ [Erstellen Sie eine parametrisierte verwaltete Berechtigung](#create-parameterized-permission)
+ [Versionierung einer parametrisierten verwalteten Berechtigung](#parameterized-permission-versioning)
+ [Zeigen Sie eine Vorschau einer gerenderten Richtlinienvorlage an](#preview-rendered-policy)
+ [Ordnen Sie einer Ressourcenfreigabe eine parametrisierte verwaltete Berechtigung zu](#associate-parameterized-permission)
+ [Vorlagenparameter und -werte anzeigen](#view-template-parameters)
+ [Gemeinsame Nutzung parametrisierter verwalteter Berechtigungen für mehrere Konten](#sharing-parameterized-permissions)
+ [Steuern Sie die Vorlagenparameterwerte mit IAM-Richtlinien](#template-iam-condition-keys)
+ [`ZEICHENKETTENLISTE` Beispiele für Parameter](#template-stringlist-examples)

## Typen von Vorlagenparametern
<a name="template-parameter-types"></a>

AWS RAM unterstützt zwei Parametertypen. Der Typ bestimmt, wie AWS RAM ersetzt den Wert in die gerenderte Richtlinie. In der AWS RAM API und die AWS CLI, die Typen sind `STRING` und `STRING_LIST`. Das AWS RAM Konsole zeigt sie als **Zeichenfolge** und **StringList**.

**`STRING`**  
Akzeptiert genau einen Zeichenkettenwert.  
+ Sie können eine verwenden `STRING` Parameter in einem Bedingungsschlüssel oder in einem Bedingungswert.
+ Sie können eine einbetten `STRING` Parameter in anderem Text. Beispiel, `"arn:aws:iam::@{accountId}:role/Auditor"`.
+ Der gerenderte Wert ist immer eine Zeichenfolge. Da IAM-Bedingungsoperatoren Zeichenketten in den Typ konvertieren, den sie vergleichen, ist `STRING` Ein Parameter kann numerische, boolesche, Datums-, IP-Adressen- oder ARN-Werte bereitstellen.

**`STRING_LIST`**  
Akzeptiert 1 bis 100 Zeichenfolgenwerte.  
+ Sie können eine verwenden `STRING_LIST` Parameter nur in einem Bedingungswert, nicht in einem Bedingungsschlüssel.
+ Wenn der Bedingungswert eine einzelne Zeichenfolge ist, die nur den Parameter enthält, zum Beispiel `"@{teams}"`, AWS RAM rendert ein Array der Werte, die Sie angeben. Wenn Sie einen einzelnen Wert angeben, AWS RAM rendert eine einzelne Zeichenfolge.
+ Wenn der Bedingungswert Text vor oder nach dem Parameter enthält, zum Beispiel `"arn:aws:iam::@{accountIds}:role/ParameterReader"`, AWS RAM kombiniert jeden Wert mit diesem Text.
+ Um jeden Wert mit mehr als einer Zeichenfolge zu kombinieren, listen Sie die Zeichenketten in einer Reihe von Bedingungswerten auf. AWS RAM rendert jeden Array-Eintrag für jeden Wert und entfernt doppelte Ergebnisse. Das Ergebnis ist immer ein Array.
+ AWS RAM und IAM teilt eine Zeichenfolge nicht nach Kommas auf. Eine durch Kommas getrennte Zeichenfolge wird als ein Wert verglichen.
Beispiele finden Sie unter [`ZEICHENKETTENLISTE` Beispiele für Parameter](#template-stringlist-examples).

## Syntaxregeln für Richtlinienvorlagen
<a name="template-syntax-rules"></a>

Wenn Sie der Richtlinienvorlage einer verwalteten Berechtigung Parameter hinzufügen, gelten die folgenden Regeln. Wenn eine Anfrage gegen eine dieser Regeln verstößt, AWS RAM lehnt sie ab mit einem `InvalidParameterException` oder `InvalidPolicyException` Fehler.
+ Ein Parameter-Platzhalter verwendet die Syntax `@{parameterName}`.
+ Parameternamen können Buchstaben enthalten (a-z, A-Z), Zahlen (0-9), Doppelpunkte (:), Bindestriche (-) und Unterstriche (\_). Namen müssen innerhalb einer Version mit verwalteten Berechtigungen eindeutig sein, und beim Vergleich wird die Groß- und Kleinschreibung ignoriert.
+ Sie müssen jeden Parameter deklarieren, wenn Sie die Berechtigung oder die Berechtigungsversion erstellen. Jede Deklaration erfordert einen Namen, einen Typ und eine Beschreibung. Die Beschreibung kann bis zu 255 Zeichen lang sein.
+ Jeder deklarierte Parameter muss in der Richtlinienvorlage erscheinen.
+ Platzhalter entsprechen exakt den deklarierten Namen, einschließlich Groß- und Kleinschreibung. Text im `@{...}` Ein Format, das nicht genau mit einem deklarierten Namen übereinstimmt, bleibt in der Richtlinie als literaler Text erhalten. Zum Beispiel, wenn Sie deklarieren `teams` aber schreibe `@{Teams}`, AWS RAM Leckereien `@{Teams}` als Text und lehnt die Anfrage ab, weil `teams` wird nicht verwendet.
+ Parameter können nur in der `Condition` Element, als Bedingungsschlüssel oder als Bedingungswert. AWS RAM lehnt Parameter in der ab `Effect`, `Action`, oder irgendein anderes Element.
+ Ein Bedingungsschlüssel kann höchstens einen Parameter enthalten, und es muss ein `STRING` Parameter. Ein Bedingungswert kann mehr als einen Parameter enthalten, zum Beispiel `"@{project}-@{stage}"`. Wenn ein Bedingungswert kombiniert wird `STRING_LIST` Parameter, AWS RAM rendert jede Kombination ihrer Werte, bis zu 100 Zeichenketten für jeden Bedingungswert.
+ Sie können bis zu 100 Parameter für jede Version mit verwalteten Berechtigungen deklarieren.
+ Parameter haben keine Standardwerte. Wenn Sie die Berechtigung einer Ressourcenfreigabe zuordnen, müssen Sie für jeden deklarierten Parameter einen nicht leeren Wert angeben. Sie können keinen Namen angeben, der nicht deklariert ist, oder denselben Namen zweimal angeben.

## Erstellen Sie eine parametrisierte verwaltete Berechtigung
<a name="create-parameterized-permission"></a>

Sie erstellen eine parametrisierte verwaltete Berechtigung auf die gleiche Weise wie jede andere vom Kunden verwaltete Berechtigung. Der Unterschied besteht darin, dass Sie Parameter deklarieren und verwenden `@{parameterName}` Platzhalter in den Bedingungen der Richtlinienvorlage.

------
#### [ Console ]

**Um eine parametrisierte verwaltete Berechtigung zu erstellen**

1. Öffnen Sie das **[Bibliothek für verwaltete Berechtigungen](https://console.aws.amazon.com/ram/home#Permissions:)** und wähle **Erstellen Sie eine vom Kunden verwaltete Erlaubnis**.

1. Unter **Vom Kunden verwaltete Genehmigungsdetails**, geben Sie einen Namen ein und wählen Sie den Ressourcentyp aus.

1. Unter **Vorlage für Richtlinien**, geben Sie die Richtlinie ein. Verwenden `@{parameterName}` Platzhalter in den Bedingungen, unter denen jeder Ressourcenanteil seinen eigenen Wert liefern soll.

1. Unter **Vorlagen-Parameter**, wählen **Fügen Sie Parameter aus der Richtlinie hinzu** um eine Zeile für jeden Platzhalter in der Richtlinie hinzuzufügen, oder wählen Sie **Fügen Sie einen Parameter hinzu** um jeweils eine Zeile hinzuzufügen. Geben Sie für jeden Parameter den **Name des Parameters**, wählen Sie **Geben Sie ein** (**Zeichenfolge** oder **StringList**), und geben Sie einen ein **Beschreibung**. Die Beschreibung wird jedem angezeigt, der einen Wert für den Parameter angibt.

1. (Optional) Fügen Sie Tags hinzu.

1. Wählen Sie **Erstellen Sie eine vom Kunden verwaltete Erlaubnis**.

------
#### [ AWS CLI ]

**Um eine parametrisierte verwaltete Berechtigung zu erstellen**
+ Führen Sie das aus [create-permission](https://docs.aws.amazon.com/cli/latest/reference/ram/create-permission.html) Befehl mit dem `--policy-template` und `--permission-template-parameters` Parameter.

  Das folgende Beispiel erstellt eine vom Kunden verwaltete Berechtigung für `ssm:Parameter` Ressourcentyp. In dieser Richtlinie können Principals Parameter nur lesen, wenn der Principal über eine `team` Tag, dessen Wert in der `teams` Liste.

  ```
  $ aws ram create-permission \
      --name ParameterReadByTeam \
      --resource-type ssm:Parameter \
      --permission-template-parameters '[{"name":"teams","type":"STRING_LIST","description":"Values of the team principal tag that can read the shared parameters"}]' \
      --policy-template '{"Effect":"Allow","Action":["ssm:GetParameter","ssm:GetParameters"],"Condition":{"StringEquals":{"aws:PrincipalTag/team":"@{teams}"}}}'
  {
      "permission": {
          "arn": "arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam",
          "version": "1",
          "defaultVersion": true,
          "name": "ParameterReadByTeam",
          "resourceType": "ssm:Parameter",
          "status": "ATTACHABLE",
          "creationTime": 1763300000.000,
          "lastUpdatedTime": 1763300000.000,
          "permissionTemplateParameters": [
              {
                  "name": "teams",
                  "type": "STRING_LIST",
                  "description": "Values of the team principal tag that can read the shared parameters"
              }
          ]
      }
  }
  ```

------

## Versionierung einer parametrisierten verwalteten Berechtigung
<a name="parameterized-permission-versioning"></a>

Parametrisierte verwaltete Berechtigungen werden auf dieselbe Weise versioniert wie jede andere vom Kunden verwaltete Berechtigung. Jede Version deklariert ihre Parameter unabhängig voneinander, sodass eine neue Version einen anderen Parametersatz deklarieren kann als die vorherige Version.

Um eine neue Version zu erstellen, führen Sie den Befehl aus [create-permission-version](https://docs.aws.amazon.com/cli/latest/reference/ram/create-permission-version.html) Befehl mit dem `--policy-template` und `--permission-template-parameters` Parameter. Im folgenden Beispiel wird eine zweite Bedingung mit einer hinzugefügt `STRING` Parameter benannt `environment`.

```
$ aws ram create-permission-version \
    --permission-arn arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam \
    --permission-template-parameters '[{"name":"teams","type":"STRING_LIST","description":"Values of the team principal tag that can read the shared parameters"},{"name":"environment","type":"STRING","description":"Value of the environment principal tag that can read the shared parameters"}]' \
    --policy-template '{"Effect":"Allow","Action":["ssm:GetParameter","ssm:GetParameters"],"Condition":{"StringEquals":{"aws:PrincipalTag/team":"@{teams}","aws:PrincipalTag/environment":"@{environment}"}}}'
```

Eine neue Version wird zur Standardversion, sobald Sie sie erstellen. Bestehende Ressourcenfreigaben behalten die Version, die sie verwenden. Wenn der Besitzer einer Ressourcenfreigabe sie auf die neue Version aktualisiert, muss der Besitzer Werte für die Parameter angeben, die in der neuen Version deklariert werden. Weitere Informationen finden Sie unter [Aktualisieren AWS verwaltete Berechtigungen für eine neuere Version](working-with-sharing-update-permissions.md).

Weitere Informationen zur Funktionsweise von Versionen und Standardversionen mit vom Kunden verwalteten Berechtigungen finden Sie unter [Erstellen und Verwenden von kundenverwalteten Berechtigungen in AWS RAM](create-customer-managed-permissions.md).

## Zeigen Sie eine Vorschau einer gerenderten Richtlinienvorlage an
<a name="preview-rendered-policy"></a>

Bevor Sie einer Ressourcenfreigabe eine parametrisierte verwaltete Berechtigung zuordnen, können Sie eine Vorschau der Richtlinie anzeigen, die AWS RAM wird anhand bestimmter Parameterwerte gerendert.

In der AWS RAM Wenn Sie eine Ressourcenfreigabe erstellen oder aktualisieren, geben Sie in der Konsole die Werte unter ein **Werte der Vorlagenparameter** und wähle **Vorschau der gerenderten Richtlinie anzeigen**.

In der AWS CLI, starte den [Erlaubnis einholen](https://docs.aws.amazon.com/cli/latest/reference/ram/get-permission.html) Befehl mit dem `--permission-template-parameters` Parameter. Der `permission` Das Feld der Antwort enthält die Richtlinie mit Ihren Werten anstelle der Platzhalter.

```
$ aws ram get-permission \
    --permission-arn arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam \
    --permission-template-parameters '[{"name":"teams","values":["payments","analytics"]},{"name":"environment","values":["prod"]}]'
{
    "permission": {
        "arn": "arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam",
        "version": "2",
        "defaultVersion": true,
        "name": "ParameterReadByTeam",
        "resourceType": "ssm:Parameter",
        "permission": "{\"Effect\":\"Allow\",\"Action\":[\"ssm:GetParameter\",\"ssm:GetParameters\"],\"Condition\":{\"StringEquals\":{\"aws:PrincipalTag/team\":[\"payments\",\"analytics\"],\"aws:PrincipalTag/environment\":\"prod\"}}}",
        "creationTime": 1763400000.000,
        "lastUpdatedTime": 1763400000.000,
        "isResourceTypeDefault": false,
        "permissionType": "CUSTOMER_MANAGED",
        "featureSet": "STANDARD",
        "status": "ATTACHABLE",
        "permissionTemplateParameters": [
            {
                "name": "teams",
                "type": "STRING_LIST",
                "description": "Values of the team principal tag that can read the shared parameters"
            },
            {
                "name": "environment",
                "type": "STRING",
                "description": "Value of the environment principal tag that can read the shared parameters"
            }
        ]
    }
}
```

Ohne die `--permission-template-parameters` Parameter, der `get-permission` Der Befehl gibt die Richtlinienvorlage mit dem zurück `@{parameterName}` Platzhalter. Die `permissionTemplateParameters` Feld listet den Namen, den Typ und die Beschreibung jedes deklarierten Parameters auf.

## Ordnen Sie einer Ressourcenfreigabe eine parametrisierte verwaltete Berechtigung zu
<a name="associate-parameterized-permission"></a>

Wenn Sie einer Ressourcenfreigabe eine parametrisierte verwaltete Berechtigung zuordnen, müssen Sie Werte für alle Parameter angeben, die in der Version deklariert werden. AWS RAM rendert die Richtlinienvorlage mit Ihren Werten und hängt die resultierende ressourcenbasierte Richtlinie an die gemeinsam genutzten Ressourcen dieses Typs an.

------
#### [ Console ]

**Um eine parametrisierte verwaltete Berechtigung einer Ressourcenfreigabe zuzuordnen**

1. Wenn Sie eine Ressourcenfreigabe erstellen oder aktualisieren, auf der **Ordnen Sie verwaltete Berechtigungen zu** Wählen Sie auf der Seite die parametrisierte verwaltete Berechtigung für den Ressourcentyp aus.

1. Unter **Werte der Vorlagenparameter**, geben Sie für jeden Parameter einen Wert ein. Für einen **StringList** Parameter, drücken Sie nach jedem Wert die EINGABETASTE, oder fügen Sie Werte ein, die durch Zeilenumbrüche getrennt sind.

1. (Optional) Wählen Sie **Vorschau der gerenderten Richtlinie anzeigen** um die Richtlinie zu überprüfen, die AWS RAM wird anhängen.

1. Schließe den Rest des Wizards ab. Auf der Übersichtsseite sind die Werte unter aufgeführt **Werte der Vorlagenparameter**.

------
#### [ AWS CLI ]

**Um eine parametrisierte verwaltete Berechtigung einer Ressourcenfreigabe zuzuordnen**

1. Führen Sie aus [create-resource-share](https://docs.aws.amazon.com/cli/latest/reference/ram/create-resource-share.html) oder [Erlaubnis zum Teilen von Ressourcen zuordnen](https://docs.aws.amazon.com/cli/latest/reference/ram/associate-resource-share-permission.html) mit dem `--permission-template-parameters` Parameter.

   Für `create-resource-share`, der Parameter ist eine Liste. Jeder Eintrag enthält eine `permissionArn` und der `permissionTemplateParameters` Werte für diese Erlaubnis. Im folgenden Beispiel wird eine Ressourcenfreigabe erstellt, die einen Parameter Store-Parameter mit einem anderen gemeinsam nutzt AWS-Konto. Schulleiter bei der `team` Tag `payments` oder `analytics` und die `environment` Tag `prod` kann es lesen.

   ```
   $ aws ram create-resource-share \
       --name PaymentsConfig \
       --resource-arns arn:aws:ssm:us-east-1:123456789012:parameter/payments/endpoint \
       --principals 111122223333 \
       --permission-arns arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam \
       --permission-template-parameters '[{"permissionArn":"arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam","permissionTemplateParameters":[{"name":"teams","values":["payments","analytics"]},{"name":"environment","values":["prod"]}]}]'
   {
       "resourceShare": {
           "resourceShareArn": "arn:aws:ram:us-east-1:123456789012:resource-share/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
           "name": "PaymentsConfig",
           "owningAccountId": "123456789012",
           "allowExternalPrincipals": true,
           "status": "ACTIVE",
           "creationTime": 1763300000.000,
           "lastUpdatedTime": 1763300000.000,
           "featureSet": "STANDARD"
       }
   }
   ```

   `create-resource-share` verwendet immer die Standardversion jeder verwalteten Berechtigung. Sie können einer Ressourcenfreigabe nur die Standardversion einer verwalteten Berechtigung zuordnen.

1. Um die Parameterwerte einer vorhandenen Ressourcenfreigabe zu ändern oder sie auf die Standardversion der Berechtigung zu verschieben, führen Sie den Befehl aus [Associate-Resource-Share-Permission](https://docs.aws.amazon.com/cli/latest/reference/ram/associate-resource-share-permission.html) mit dem `--replace` Parameter. Für diesen Befehl `--permission-template-parameters` nimmt die Parameterwerte direkt an.

   ```
   $ aws ram associate-resource-share-permission \
       --resource-share-arn arn:aws:ram:us-east-1:123456789012:resource-share/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
       --permission-arn arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam \
       --permission-template-parameters '[{"name":"teams","values":["payments"]},{"name":"environment","values":["prod"]}]' \
       --replace
   {
       "returnValue": true
   }
   ```

------

Um viele Ressourcenfreigaben von einer Version oder Berechtigung auf eine andere zu übertragen, führen Sie den Befehl aus [replace-permission-associations](https://docs.aws.amazon.com/cli/latest/reference/ram/replace-permission-associations.html). Wenn die Zielversion Parameter deklariert, schließen Sie Folgendes ein `--permission-template-parameters`. AWS RAM wendet dieselben Werte auf jeden Ressourcenanteil an, den der Befehl aktualisiert.

## Vorlagenparameter und -werte anzeigen
<a name="view-template-parameters"></a>

Sie können die Parameter anzeigen, die eine verwaltete Berechtigung deklariert, und die Werte, die Ihre Ressourcenfreigaben bereitstellen.

**Sehen Sie sich die Parameter an, die eine verwaltete Berechtigung deklariert**  
Führen Sie das aus [Genehmigung einholen](https://docs.aws.amazon.com/cli/latest/reference/ram/get-permission.html) Befehl. Der `permissionTemplateParameters` Das Feld listet den Namen, den Typ und die Beschreibung der einzelnen Parameter auf. In der Konsole werden auf der Seite mit den Berechtigungsdetails dieselben Informationen angezeigt.

**Sehen Sie sich die Werte an, die eine Ressourcenfreigabe liefert**  
Führen Sie das aus [list-resource-share-permissions](https://docs.aws.amazon.com/cli/latest/reference/ram/list-resource-share-permissions.html) Befehl. Für jede zugeordnete parametrisierte verwaltete Berechtigung ist der `permissionTemplateParameters` Das Feld enthält die Werte, die der Ressourcenanteil liefert.  

```
$ aws ram list-resource-share-permissions \
    --resource-share-arn arn:aws:ram:us-east-1:123456789012:resource-share/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
{
    "permissions": [
        {
            "arn": "arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam",
            "version": "2",
            "defaultVersion": true,
            "name": "ParameterReadByTeam",
            "resourceType": "ssm:Parameter",
            "status": "ATTACHABLE",
            "creationTime": 1763400000.000,
            "lastUpdatedTime": 1763400000.000,
            "isResourceTypeDefault": false,
            "permissionType": "CUSTOMER_MANAGED",
            "featureSet": "STANDARD",
            "permissionTemplateParameters": [
                {
                    "name": "teams",
                    "values": ["payments"]
                },
                {
                    "name": "environment",
                    "values": ["prod"]
                }
            ]
        }
    ]
}
```
Das [Rechtevereinigungen auflisten](https://docs.aws.amazon.com/cli/latest/reference/ram/list-permission-associations.html) Der Befehl gibt auch die Werte für die Ressourcenanteile zurück, die Sie besitzen. Wenn Sie die Ressourcenanteile in anderen auflisten AWS-Konten wenn Sie eine vom Kunden verwaltete Berechtigung verwenden, die Sie geteilt haben, enthält die Antwort nicht deren Werte.

## Gemeinsame Nutzung parametrisierter verwalteter Berechtigungen für mehrere Konten
<a name="sharing-parameterized-permissions"></a>

Sie können eine parametrisierte verwaltete Berechtigung mit anderen teilen AWS-Konten wie jede andere vom Kunden verwaltete Berechtigung. Die Empfängerkonten können den Namen, den Typ und die Beschreibung jedes Parameters sehen. Schreiben Sie daher Beschreibungen, aus denen hervorgeht, welcher Wert angegeben werden muss. Jedes Empfängerkonto gibt seine eigenen Werte an, wenn es die gemeinsam verwaltete Berechtigung seinen eigenen Ressourcenfreigaben zuordnet.

Anweisungen zum Teilen von vom Kunden verwalteten Berechtigungen finden Sie unter [Teilen und Verwenden von kundenverwalteten Berechtigungen für mehrere Konten in AWS RAM](sharing-customer-managed-permissions.md).

## Steuern Sie die Vorlagenparameterwerte mit IAM-Richtlinien
<a name="template-iam-condition-keys"></a>

Sie können das verwenden `ram:PermissionTemplateParameter/{{parameter-name}}` Bedingungsschlüssel in einer IAM-Richtlinie, um zu steuern, welche Werte ein Principal für einen Parameter angeben kann. Der Schlüssel ist mehrwertig und enthält die Werte in der Anforderung für den benannten Parameter. Er ist auf der Berechtigungsressource für den verfügbar `ram:CreateResourceShare`, `ram:AssociateResourceSharePermission`, und `ram:ReplacePermissionAssociations` Aktionen.

In der folgenden Beispielrichtlinie gewährt die erste Anweisung die Aktionen für `ParameterReadByTeam` vom Kunden verwaltete Erlaubnis. In der zweiten Anweisung wird ihnen verweigert, wenn ein Wert angegeben wurde `teams` ist etwas anderes als `payments` oder `analytics`. Da der Schlüssel mehrwertig ist, verwendet die Richtlinie den `ForAnyValue` Operator festlegen. AWS RAM erfordert einen Wert für jeden deklarierten Parameter, sodass eine Anfrage, die diese vom Kunden verwaltete Berechtigung verwendet, immer den Schlüssel enthält.

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ram:CreateResourceShare",
                "ram:AssociateResourceSharePermission",
                "ram:ReplacePermissionAssociations"
            ],
            "Resource": "arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam"
        },
        {
            "Effect": "Deny",
            "Action": [
                "ram:CreateResourceShare",
                "ram:AssociateResourceSharePermission",
                "ram:ReplacePermissionAssociations"
            ],
            "Resource": "arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam",
            "Condition": {
                "ForAnyValue:StringNotEquals": {
                    "ram:PermissionTemplateParameter/teams": [
                        "payments",
                        "analytics"
                    ]
                }
            }
        }
    ]
}
```

Diese Anweisungen steuern nur die Berechtigungsressource. Der Hauptbenutzer benötigt auch die Genehmigung für die anderen Ressourcen in der Anfrage, z. B. für den Ressourcenanteil und die Ressourcen, die er gemeinsam nutzt. Weitere Beispiele finden Sie unter [Beispiel für IAM-Richtlinien für AWS RAM](security-iam-policies-examples.md).

## `ZEICHENKETTENLISTE` Beispiele für Parameter
<a name="template-stringlist-examples"></a>

Die folgenden Beispiele zeigen, wie AWS RAM macht `STRING_LIST` Parameter.

**Example EIN `ZEICHENKETTENLISTE` Parameter allein in einem Bedingungswert**  
Vorlage:  

```
"Condition": {
    "StringEquals": {
        "aws:PrincipalTag/team": "@{teams}"
    }
}
```
Werte: `["payments", "analytics"]`  
Gerenderte Richtlinie:  

```
"Condition": {
    "StringEquals": {
        "aws:PrincipalTag/team": ["payments", "analytics"]
    }
}
```
Mit dem einzelnen Wert `["payments"]`, der gerenderte Wert ist die Zeichenfolge `"payments"`.

**Example EIN `ZEICHENKETTENLISTE` Parameter mit umgebendem Text**  
AWS RAM kombiniert jeden Wert mit dem Text vor und nach dem Parameter.  
Vorlage:  

```
"Condition": {
    "ArnLike": {
        "aws:PrincipalArn": "arn:aws:iam::@{accountIds}:role/ParameterReader"
    }
}
```
Werte: `["111122223333", "444455556666"]`  
Gerenderte Richtlinie:  

```
"Condition": {
    "ArnLike": {
        "aws:PrincipalArn": [
            "arn:aws:iam::111122223333:role/ParameterReader",
            "arn:aws:iam::444455556666:role/ParameterReader"
        ]
    }
}
```

**Example EIN `ZEICHENKETTENLISTE` Parameter in einem Array von Bedingungswerten**  
AWS RAM rendert jeden Eintrag im Array für jeden Wert und entfernt doppelte Ergebnisse.  
Vorlage:  

```
"Condition": {
    "ArnLike": {
        "aws:PrincipalArn": [
            "arn:aws:iam::@{accountIds}:role/Auditor",
            "arn:aws:iam::@{accountIds}:role/Reader"
        ]
    }
}
```
Werte: `["111122223333", "444455556666"]`  
Gerenderte Richtlinie:  

```
"Condition": {
    "ArnLike": {
        "aws:PrincipalArn": [
            "arn:aws:iam::111122223333:role/Auditor",
            "arn:aws:iam::444455556666:role/Auditor",
            "arn:aws:iam::111122223333:role/Reader",
            "arn:aws:iam::444455556666:role/Reader"
        ]
    }
}
```