

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.

# Richten Sie Servicerollen ein für AWS Clean Rooms
<a name="setting-up-roles"></a>

In den folgenden Abschnitten werden die Rollen beschrieben, die zur Ausführung der einzelnen Aufgaben benötigt werden.

**Topics**
+ [Erstellen Sie einen Administratorbenutzer](#setting-up-create-iam-user)
+ [Erstellen Sie eine IAM-Rolle für ein Kollaborationsmitglied](#create-role-DP)
+ [Erstellen Sie eine Servicerolle zum Lesen von Daten aus Amazon S3](#create-service-role-procedure)
+ [Erstellen Sie eine Servicerolle zum Lesen von Daten aus Amazon Athena](#create-service-role-athena)
+ [Erstellen Sie eine Servicerolle, um Daten aus Snowflake zu lesen](#create-service-role-third-party)
+ [Erstellen Sie eine Servicerolle, um Code aus einem S3-Bucket zu lesen (PySpark Analysevorlagenrolle)](#create-role-pyspark-analysis-template)
+ [Erstellen Sie eine Servicerolle, um die Ergebnisse eines PySpark Jobs zu schreiben](#create-role-pyspark-job)
+ [Erstellen Sie eine Servicerolle, um Ergebnisse zu erhalten](#create-role-write-results)

## Erstellen Sie einen Administratorbenutzer
<a name="setting-up-create-iam-user"></a>

Zur Verwendung AWS Clean Rooms müssen Sie einen Administratorbenutzer für sich selbst erstellen und den Administratorbenutzer zu einer Administratorgruppe hinzufügen.

Wählen Sie zum Erstellen eines Administratorbenutzers eine der folgenden Optionen aus.


****  

| Wählen Sie eine Möglichkeit zur Verwaltung Ihres Administrators aus. | Bis | Von | Sie können auch | 
| --- | --- | --- | --- | 
| Im IAM Identity Center (Empfohlen) | Verwendung von kurzfristigen Anmeldeinformationen für den Zugriff auf AWS.Dies steht im Einklang mit den bewährten Methoden für die Sicherheit. Weitere Informationen zu bewährten Methoden finden Sie unter [Bewährte Methoden für die Sicherheit in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp) im *IAM-Benutzerhandbuch*. | Beachtung der Anweisungen unter [Erste Schritte](https://docs.aws.amazon.com//singlesignon/latest/userguide/getting-started.html) im AWS IAM Identity Center -Benutzerhandbuch. | Konfigurieren Sie den programmatischen Zugriff, indem [Sie AWS CLI die Konfiguration für die Verwendung AWS IAM Identity Center](https://docs.aws.amazon.com//cli/latest/userguide/cli-configure-sso.html) im AWS Command Line Interface Benutzerhandbuch vornehmen. | 
| In IAM (Nicht empfohlen) | Verwendung von langfristigen Anmeldeinformationen für den Zugriff auf AWS. | Folgen Sie den Anleitungen unter [IAM-Benutzer für den Notfallzugriff erstellen](https://docs.aws.amazon.com/IAM/latest/UserGuide/getting-started-emergency-iam-user.html) im IAM-Benutzerhandbuch. | Sie konfigurieren den programmgesteuerten Zugriff unter Verwendung der Informationen unter [Verwalten der Zugriffsschlüssel für IAM-Benutzer](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_credentials_access-keys.html) im IAM-Benutzerhandbuch. | 

## Erstellen Sie eine IAM-Rolle für ein Kollaborationsmitglied
<a name="create-role-DP"></a>

Ein Mitglied ist ein AWS Kunde, der an einer Kollaboration teilnimmt. 

**Um eine IAM-Rolle für ein Kollaborationsmitglied zu erstellen**

1. *Folgen Sie dem Verfahren [Erstellen einer Rolle zum Delegieren von Berechtigungen an einen IAM-Benutzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html) im AWS Identity and Access Management Benutzerhandbuch.*

1. Wählen Sie für den Schritt **Richtlinie erstellen** im **Richtlinien-Editor** die Registerkarte **JSON** aus und fügen Sie dann je nach den Fähigkeiten, die dem Kollaborationsmitglied gewährt wurden, Richtlinien hinzu. 

   AWS Clean Rooms bietet die folgenden verwalteten Richtlinien auf der Grundlage gängiger Anwendungsfälle.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/clean-rooms/latest/userguide/setting-up-roles.html)

   Informationen zu den verschiedenen verwalteten Richtlinien, die von angeboten werden AWS Clean Rooms[AWS verwaltete Richtlinien für AWS Clean Rooms](security-iam-awsmanpol.md), finden Sie unter

## Erstellen Sie eine Servicerolle zum Lesen von Daten aus Amazon S3
<a name="create-service-role-procedure"></a>

AWS Clean Rooms verwendet eine Servicerolle, um die Daten aus Amazon S3 zu lesen. 

Es gibt zwei Möglichkeiten, diese Servicerolle zu erstellen.
+ Wenn Sie über die erforderlichen IAM-Berechtigungen zum Erstellen einer Servicerolle verfügen, verwenden Sie die AWS Clean Rooms Konsole, um eine Servicerolle zu erstellen.
+ Wenn Sie nicht über die `iam:AttachRolePolicy` erforderlichen Berechtigungen verfügen `iam:CreateRole` oder die IAM-Rollen manuell erstellen möchten, gehen Sie wie folgt vor: `iam:CreatePolicy`
  + Gehen Sie wie folgt vor, um eine Servicerolle mithilfe benutzerdefinierter Vertrauensrichtlinien zu erstellen.
  + Bitten Sie Ihren Administrator, die Servicerolle mithilfe des folgenden Verfahrens zu erstellen.

**Anmerkung**  
Sie oder Ihr IAM-Administrator sollten dieses Verfahren nur befolgen, wenn Sie nicht über die erforderlichen Berechtigungen verfügen, um mithilfe der AWS Clean Rooms Konsole eine Servicerolle zu erstellen.

**So erstellen Sie eine Servicerolle zum Lesen von Daten aus Amazon S3 mithilfe benutzerdefinierter Vertrauensrichtlinien**

1. Erstellen Sie eine Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien. Weitere Informationen finden Sie unter dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html) im *AWS Identity and Access Management Benutzerhandbuch*.

1. Verwenden Sie die folgende benutzerdefinierte Vertrauensrichtlinie gemäß dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html).
**Anmerkung**  
Wenn Sie sicherstellen möchten, dass die Rolle nur im Rahmen einer bestimmten Kollaborationsmitgliedschaft verwendet wird, können Sie die Vertrauensrichtlinie weiter eingrenzen. Weitere Informationen finden Sie unter [Serviceübergreifende Confused-Deputy-Prävention](cross-service-confused-deputy-prevention.md).

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

****  

   ```
   { 
   
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "RoleTrustPolicyForCleanRoomsService",
               "Effect": "Allow",
               "Principal": {
                   "Service": "cleanrooms.amazonaws.com"
               },
               "Action": "sts:AssumeRole"
           }
        ]
   }
   ```

------

1. Verwenden Sie die folgende Berechtigungsrichtlinie gemäß dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html).
**Anmerkung**  
Die folgende Beispielrichtlinie unterstützt die Berechtigungen, die zum Lesen von AWS Glue Metadaten und den entsprechenden Amazon S3 S3-Daten erforderlich sind. Je nachdem, wie Sie Ihre Amazon S3 S3-Daten eingerichtet haben, müssen Sie diese Richtlinie jedoch möglicherweise ändern. Wenn Sie beispielsweise einen benutzerdefinierten KMS-Schlüssel für Ihre Amazon S3 S3-Daten eingerichtet haben, müssen Sie diese Richtlinie möglicherweise mit zusätzlichen AWS Key Management Service (AWS KMS) Berechtigungen ändern.  
Ihre AWS Glue Ressourcen und die zugrunde liegenden Amazon S3 S3-Ressourcen müssen sich in derselben Weise AWS-Region wie die AWS Clean Rooms Zusammenarbeit befinden.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "NecessaryGluePermissions",
               "Effect": "Allow",
               "Action": [
                   "glue:GetDatabase",
                   "glue:GetDatabases",
                   "glue:GetTable",
                   "glue:GetTables",
                   "glue:GetPartition",
                   "glue:GetPartitions",
                   "glue:BatchGetPartition"
               ],
               "Resource": [
                   "arn:aws:glue:us-east-1:111122223333:database/databaseName",
                   "arn:aws:glue:us-east-1:111122223333:table/databaseName/tableName",
                   "arn:aws:glue:us-east-1:111122223333:catalog"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "glue:GetSchema",
                   "glue:GetSchemaVersion"
               ],
               "Resource": [
                   "*"
               ]
           },
           {
               "Sid": "NecessaryS3BucketPermissions",
               "Effect": "Allow",
               "Action": [
                   "s3:GetBucketLocation",
                   "s3:ListBucket"
               ],
               "Resource": [
                   "arn:aws:s3:::bucket"
               ],
               "Condition": {
                   "StringEquals": {
                       "s3:ResourceAccount": [
                           "444455556666"
                       ]
                   }
               }
           },
           {
               "Sid": "NecessaryS3ObjectPermissions",
               "Effect": "Allow",
               "Action": [
                   "s3:GetObject"
               ],
               "Resource": [
                   "arn:aws:s3:::bucket/prefix/*"
               ],
               "Condition": {
                   "StringEquals": {
                       "s3:ResourceAccount": [
                           "444455556666"
                       ]
                   }
               }
           }
       ]
   }
   ```

------
**Anmerkung**  
Diese Richtlinie bezieht sich auf zwei verschiedene Arten AWS-Konto IDs , um eine AWS Clean Rooms Zusammenarbeit zu unterstützen, bei der die Metadaten des Datenkatalogs und der tatsächliche Datenspeicher von verschiedenen Parteien verwaltet werden:  
**111122223333** — Dies ist das Konto, dem die AWS Glue Datenkatalogressourcen (Datenbanken, Tabellen und Katalog) gehören. Die erste Anweisung gewährt Berechtigungen für den Zugriff auf Tabellenschemas, Partitionsinformationen und Metadaten aus dem Katalog dieses Kontos. AWS Glue 
**444455556666** — Dies ist das Konto, dem der Amazon S3 S3-Bucket gehört, der die eigentlichen Datendateien enthält. Die Amazon S3 S3-Berechtigungen (Anweisungen 3 und 4) sind aufgrund der `s3:ResourceAccount` Bedingung auf Buckets beschränkt, die diesem Konto gehören.
Diese Konfiguration unterstützt gängige Unternehmensdatenarchitekturen, bei denen ein Team den Datenkatalog und die Schemadefinitionen verwaltet, während ein anderes Team die zugrunde liegende Datenspeicherinfrastruktur besitzt. Diese `s3:ResourceAccount` Bedingung bietet eine zusätzliche Sicherheitsebene, indem sichergestellt wird, dass Amazon S3 S3-Operationen nur mit Buckets funktionieren, die dem angegebenen Konto gehören.

1. Ersetzen Sie jeden *placeholder* durch Ihre Informationen.

1. Folgen Sie weiterhin dem Verfahren zum [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html), um die Rolle zu erstellen.

## Erstellen Sie eine Servicerolle zum Lesen von Daten aus Amazon Athena
<a name="create-service-role-athena"></a>

AWS Clean Rooms verwendet eine Servicerolle, um die Daten von Amazon Athena zu lesen. 

**So erstellen Sie eine Servicerolle zum Lesen von Daten aus Athena mithilfe benutzerdefinierter Vertrauensrichtlinien**

1. Erstellen Sie eine Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien. Weitere Informationen finden Sie unter dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html) im *AWS Identity and Access Management Benutzerhandbuch*.

1. Verwenden Sie die folgende benutzerdefinierte Vertrauensrichtlinie gemäß dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html).
**Anmerkung**  
Wenn Sie sicherstellen möchten, dass die Rolle nur im Rahmen einer bestimmten Kollaborationsmitgliedschaft verwendet wird, können Sie die Vertrauensrichtlinie weiter eingrenzen. Weitere Informationen finden Sie unter [Serviceübergreifende Confused-Deputy-Prävention](cross-service-confused-deputy-prevention.md).

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

****  

   ```
   { 
   
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "RoleTrustPolicyForCleanRoomsService",
               "Effect": "Allow",
               "Principal": {
                   "Service": "cleanrooms.amazonaws.com"
               },
               "Action": "sts:AssumeRole"
           }
        ]
   }
   ```

------

1. Verwenden Sie die folgende Berechtigungsrichtlinie gemäß dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html).
**Anmerkung**  
Die folgende Beispielrichtlinie unterstützt die Berechtigungen, die zum Lesen von AWS Glue Metadaten und den entsprechenden Athena-Daten erforderlich sind. Je nachdem, wie Sie Ihre Amazon S3 S3-Daten eingerichtet haben, müssen Sie diese Richtlinie jedoch möglicherweise ändern. Wenn Sie beispielsweise bereits einen benutzerdefinierten KMS-Schlüssel für Ihre Amazon S3 S3-Daten eingerichtet haben, müssen Sie diese Richtlinie möglicherweise mit zusätzlichen AWS KMS Berechtigungen ändern.

   ```
   {
       "Version": "2012-10-17",
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "athena:GetWorkGroup",
                   "athena:GetTableMetadata",
                   "athena:GetDataCatalog",
                   "athena:StartQueryExecution",
                   "athena:GetQueryExecution",
                   "athena:GetQueryResults"
               ],
               "Resource": [
                   "arn:aws:athena:region:accountId:workgroup/workgroup",
                   "arn:aws:athena:region:accountId:datacatalog/federatedCatalogName"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "glue:GetDatabase",
                   "glue:GetTable",
                   "glue:GetCatalog"
               ],
               "Resource": [
                   "arn:aws:glue:region:accountId:catalog",
                   "arn:aws:glue:region:accountId:catalog/federatedCatalogName",
                   "arn:aws:glue:region:accountId:database/federatedCatalogName/databaseName",
                   "arn:aws:glue:region:accountId:table/federatedCatalogName/databaseName/tableName"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "s3:GetObject",
                   "s3:GetBucketLocation",
                   "s3:AbortMultipartUpload",
                   "s3:ListBucket",
                   "s3:PutObject",
                   "s3:ListMultipartUploadParts"
               ],
               "Resource": [
                   "arn:aws:s3:::athenaResultsBucket",
                   "arn:aws:s3:::athenaResultsBucket/*"
               ],
               "Condition": {
                   "StringEquals": {
                       "aws:ResourceAccount": "accountId"
                   }
               }
           },
           {
               "Effect": "Allow",
               "Action": "lakeformation:GetDataAccess",
               "Resource": "*"
           }
       ]
   }
   ```

1. Ersetzen Sie jeden *placeholder* durch Ihre Informationen.

1. Folgen Sie weiterhin dem Verfahren zum [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html), um die Rolle zu erstellen.

### Lake Formation Formation-Berechtigungen einrichten
<a name="setup-lakeformation-permissions"></a>

Wenn Sie Ressourcen abfragen, die mit Lake Formation Formation-Berechtigungen geschützt sind, muss die Servicerolle über die Zugriffsberechtigungen **Select** and **Describe** für die Datenbank table/view/catalog und **Describe-Berechtigungen** für die AWS Glue Datenbank verfügen. 

 Weitere Informationen finden Sie unter: 
+ [Verwenden Sie Athena, um Daten abzufragen, mit denen Sie AWS Lake Formation im *Amazon Athena Athena-Benutzerhandbuch* registriert](https://docs.aws.amazon.com/athena/latest/ug/security-athena-lake-formation.html) sind
+ [Onboarding zu Lake Formation Formation-Berechtigungen](https://docs.aws.amazon.com/lake-formation/latest/dg/onboarding-lf-permissions.html) im *AWS Lake Formation Developer Guide*



## Erstellen Sie eine Servicerolle, um Daten aus Snowflake zu lesen
<a name="create-service-role-third-party"></a>

AWS Clean Rooms verwendet eine Servicerolle, um Ihre Anmeldeinformationen abzurufen, damit Snowflake Ihre Daten aus dieser Quelle lesen kann.

Es gibt zwei Möglichkeiten, diese Servicerolle zu erstellen:
+ Wenn Sie über die erforderlichen IAM-Berechtigungen zum Erstellen einer Servicerolle verfügen, verwenden Sie die AWS Clean Rooms Konsole, um eine Servicerolle zu erstellen.
+ Wenn Sie nicht über die `iam:AttachRolePolicy` erforderlichen Berechtigungen verfügen `iam:CreateRole` oder die IAM-Rollen manuell erstellen möchten, gehen Sie wie folgt vor: `iam:CreatePolicy`
  + Gehen Sie wie folgt vor, um eine Servicerolle mithilfe benutzerdefinierter Vertrauensrichtlinien zu erstellen.
  + Bitten Sie Ihren Administrator, die Servicerolle mithilfe des folgenden Verfahrens zu erstellen.

**Anmerkung**  
Sie oder Ihr IAM-Administrator sollten dieses Verfahren nur befolgen, wenn Sie nicht über die erforderlichen Berechtigungen verfügen, um mithilfe der AWS Clean Rooms Konsole eine Servicerolle zu erstellen.

**So erstellen Sie eine Servicerolle zum Lesen von Daten aus Snowflake mithilfe benutzerdefinierter Vertrauensrichtlinien**

1. Erstellen Sie eine Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien. Weitere Informationen finden Sie unter dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html) im *AWS Identity and Access Management Benutzerhandbuch*.

1. Verwenden Sie die folgende benutzerdefinierte Vertrauensrichtlinie gemäß dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html).
**Anmerkung**  
Wenn Sie sicherstellen möchten, dass die Rolle nur im Rahmen einer bestimmten Kollaborationsmitgliedschaft verwendet wird, können Sie die Vertrauensrichtlinie weiter eingrenzen. Weitere Informationen finden Sie unter [Serviceübergreifende Confused-Deputy-Prävention](cross-service-confused-deputy-prevention.md).

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "AllowIfSourceArnMatches",
               "Effect": "Allow",
               "Principal": {
                   "Service": "cleanrooms.amazonaws.com"
               },
               "Action": "sts:AssumeRole",
               "Condition": {
                   "ForAnyValue:ArnEquals": {
                       "aws:SourceArn": [
                           "arn:aws:cleanrooms:us-east-1:111122223333:membership/membershipId",
                           "arn:aws:cleanrooms:us-east-1:444455556666:membership/queryRunnerMembershipId"
                       ]
                   }
               }
           }
       ]
   }
   ```

------
**Anmerkung**  
Diese Vertrauensrichtlinie bezieht sich auf zwei verschiedene Arten AWS-Konto IDs , um eine AWS Clean Rooms Zusammenarbeit zu unterstützen, bei der die Verantwortung für die Ausführung von Abfragen auf mehrere Parteien verteilt ist:  
**111122223333** — Dies ist das Konto, das eine Mitgliedschaft enthält, die an der Kollaboration teilnimmt. Diese Mitgliedschaft kann Datentabellen, Analyseregeln oder andere Kollaborationsressourcen besitzen, für die Rollenzugriff erforderlich ist.
**444455556666** — Dies ist das Konto, das die Mitgliedschaft enthält, die für die Ausführung von Abfragen verantwortlich ist (der „Query Runner“). Diese Mitgliedschaft führt geschützte Abfragen aus und muss diese Rolle übernehmen, um auf die erforderlichen Rechen- und Datenressourcen zugreifen zu können.
Diese Konfiguration ermöglicht Szenarien, in denen eine Partei Daten oder Analysevorlagen bereitstellt, während eine andere Partei die eigentlichen Abfragen ausführt. Für beide Rollen sind unterschiedliche, aber sich ergänzende Berechtigungen für dieselbe Ausführungsrolle erforderlich. Diese `aws:SourceArn` Bedingung stellt sicher, dass nur AWS Clean Rooms Operationen, die aus diesen beiden spezifischen Mitgliedschaften stammen, diese Rolle übernehmen können, wodurch die Sicherheit gewährleistet und gleichzeitig die verteilte Auftragsausführung und das Ergebnismanagement unterstützt werden.

1. Verwenden Sie eine der folgenden Berechtigungsrichtlinien gemäß dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html).

   **Berechtigungsrichtlinie für Geheimnisse, die mit einem kundeneigenen KMS-Schlüssel verschlüsselt wurden**

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Action": "secretsmanager:GetSecretValue",
               "Resource": "arn:aws:secretsmanager:us-east-1:111122223333:secret:secretIdentifier",
               "Effect": "Allow"
           },
           {
               "Sid": "AllowDecryptViaSecretsManagerForKey",
               "Action": "kms:Decrypt",
               "Resource": "arn:aws:kms:us-east-1:444455556666:key/keyIdentifier",
               "Effect": "Allow",
               "Condition": {
                   "StringEquals": {
                       "kms:ViaService": "secretsmanager.us-east-1.amazonaws.com",
                       "kms:EncryptionContext:SecretARN": "arn:aws:secretsmanager:us-east-1:111122223333:secret:secretIdentifier"
                   }
               }
           }
       ]
   }
   ```

------
**Anmerkung**  
Diese Richtlinie bezieht sich auf zwei unterschiedliche Verfahren AWS-Konto IDs , um ein kontenübergreifendes Verwaltungsszenario für geheime Daten zu unterstützen:  
**111122223333** — Dies ist das Konto, dem das Geheimnis gehört und in dem es gespeichert wird. Die erste Anweisung erteilt die Erlaubnis, den geheimen Wert von diesem Konto abzurufen.
**444455556666** — Dies ist das Konto, dem der AWS KMS Schlüssel gehört, mit dem das Geheimnis verschlüsselt wurde. Die zweite Anweisung erteilt die Erlaubnis, das Geheimnis mithilfe des Schlüssels aus diesem Konto zu entschlüsseln. AWS KMS 
Diese Konfiguration ist in Unternehmensumgebungen üblich, in denen:  
Geheimnisse werden zentral in einem Konto (Konto 1) verwaltet
Verschlüsselungsschlüssel werden über ein separates Sicherheits- oder Shared-Services-Konto (Konto 2) verwaltet
Die AWS KMS Schlüsselrichtlinie in Konto 2 muss es auch dem Dienst in Konto 1 ermöglichen, den Schlüssel für encryption/decryption Operationen zu verwenden
Die `kms:EncryptionContext:SecretARN` Bedingung stellt sicher, dass der AWS KMS Schlüssel nur zur Entschlüsselung dieses speziellen Geheimnisses verwendet werden kann, wodurch eine zusätzliche Sicherheitsebene für den kontoübergreifenden Zugriff geschaffen wird.

   **Berechtigungsrichtlinie für Geheimnisse, die mit einem verschlüsselt wurden Von AWS verwalteter Schlüssel**

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Action": "secretsmanager:GetSecretValue",
               "Resource": "arn:aws:secretsmanager:us-east-1:111122223333:secret:secretIdentifier",
               "Effect": "Allow"
           }
       ]
   }
   ```

------

1. Ersetzen Sie jeden *placeholder* durch Ihre Informationen.

1. Folgen Sie weiterhin dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html), um die Rolle zu erstellen.

## Erstellen Sie eine Servicerolle, um Code aus einem S3-Bucket zu lesen (PySpark Analysevorlagenrolle)
<a name="create-role-pyspark-analysis-template"></a>

AWS Clean Rooms verwendet eine Servicerolle, um Code aus dem angegebenen S3-Bucket eines Kollaborationsmitglieds zu lesen, wenn eine PySpark Analysevorlage verwendet wird. 

**Um eine Servicerolle zum Lesen von Code aus einem S3-Bucket zu erstellen**

1. Erstellen Sie eine Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien. Weitere Informationen finden Sie unter dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html) im *AWS Identity and Access Management Benutzerhandbuch*.

1. Verwenden Sie die folgende benutzerdefinierte Vertrauensrichtlinie gemäß dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html).

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": "cleanrooms.amazonaws.com"
               },
               "Action": "sts:AssumeRole",
               "Condition": {
                   "ForAnyValue:ArnEquals": {
                       "aws:SourceArn": [
                           "arn:aws:cleanrooms:us-east-1:111122223333:membership/jobRunnerMembershipId",
                           "arn:aws:cleanrooms:us-east-1:444455556666:membership/analysisTemplateOwnerMembershipId"
                       ]
                   }
               }
           }
       ]
   }
   ```

------
**Anmerkung**  
Diese Vertrauensrichtlinie bezieht sich auf zwei verschiedene Arten AWS-Konto IDs , um ein Szenario der AWS Clean Rooms Zusammenarbeit mit mehreren Parteien zu unterstützen:  
**111122223333** — Dies ist das Konto, das die Mitgliedschaft enthält, die für die Ausführung von Abfragen verantwortlich ist (der „Job Runner“). Diese Mitgliedschaft führt die Analysejobs aus und muss diese Rolle übernehmen, um auf die erforderlichen Ressourcen zugreifen zu können.
**444455556666** — Dies ist das Konto, dem die Analysevorlage und die zugehörige Mitgliedschaft gehören (der „Besitzer der Analysevorlage“). Diese Mitgliedschaft definiert, welche Abfragen ausgeführt werden können, und muss auch diese Rolle übernehmen, um die Analyse zu verwalten und auszuführen.
Diese Konfiguration ist typisch für AWS Clean Rooms Kollaborationen, bei denen mehrere Parteien an derselben Zusammenarbeit teilnehmen, wobei jede Partei ihre eigene AWS-Konto Mitgliedschaft hat. Sowohl der Abfrage-Executor als auch der Besitzer der Analysevorlage benötigen Zugriff auf gemeinsam genutzte Ressourcen. Die `aws:SourceArn` Bedingung stellt sicher, dass nur AWS Clean Rooms Operationen, die aus diesen beiden spezifischen Mitgliedschaften stammen, die Rolle übernehmen können, wodurch eine präzise Zugriffskontrolle für die Zusammenarbeit mit mehreren Parteien gewährleistet ist.

1. Verwenden Sie die folgende Berechtigungsrichtlinie gemäß dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html).
**Anmerkung**  
Die folgende Beispielrichtlinie unterstützt die Berechtigungen, die zum Lesen Ihres Codes aus Amazon S3 erforderlich sind. Je nachdem, wie Sie Ihre S3-Daten eingerichtet haben, müssen Sie diese Richtlinie jedoch möglicherweise ändern.  
Ihre Amazon S3 S3-Ressourcen müssen sich in derselben Umgebung AWS-Region wie die AWS Clean Rooms Kollaboration befinden.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "s3:GetObject",
                   "s3:GetObjectVersion"
               ],
               "Resource": ["arn:aws:s3:::s3Path"],
               "Condition":{
                   "StringEquals":{
                       "s3:ResourceAccount":[
                           "s3BucketOwnerAccountId"
                       ]
                   }
               }
           }
       ]
   }
   ```

------

1. Ersetzen Sie jede *placeholder* durch Ihre eigenen Informationen:
   + *s3Path*— Der S3-Bucket-Speicherort Ihres Codes.
   + *s3BucketOwnerAccountId*— Die AWS-Konto ID des S3-Bucket-Besitzers.
   + *region* – Der Name des AWS-Region. Beispiel, **us-east-1**.
   + *jobRunnerAccountId*— Die AWS-Konto ID des Mitglieds, das Abfragen und Jobs ausführen kann.
   + *jobRunnerMembershipId*— Die **Mitglieds-ID** des Mitglieds, das Jobs abfragen und ausführen kann. Die **Mitglieds-ID** finden Sie auf der Registerkarte **Details** der Kollaboration. Dadurch AWS Clean Rooms wird sichergestellt, dass die Rolle nur übernommen wird, wenn dieses Mitglied die Analyse in dieser Kollaboration ausführt.
   + *analysisTemplateAccountId*— Die AWS-Konto ID der Analysevorlage.
   + *analysisTemplateOwnerMembershipId*— Die **Mitglieds-ID** des Mitglieds, dem die Analysevorlage gehört. Die **Mitglieds-ID** finden Sie auf der Registerkarte **Details** der Kollaboration.

1. Folgen Sie weiterhin dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html), um die Rolle zu erstellen.

## Erstellen Sie eine Servicerolle, um die Ergebnisse eines PySpark Jobs zu schreiben
<a name="create-role-pyspark-job"></a>

AWS Clean Rooms verwendet eine Servicerolle, um die Ergebnisse eines PySpark Jobs in einen angegebenen S3-Bucket zu schreiben. 

**Um eine Servicerolle zu erstellen, um Ergebnisse eines PySpark Jobs zu schreiben**

1. Erstellen Sie eine Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien. Weitere Informationen finden Sie unter dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html) im *AWS Identity and Access Management Benutzerhandbuch*.

1. Verwenden Sie die folgende benutzerdefinierte Vertrauensrichtlinie gemäß dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html).

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": "cleanrooms.amazonaws.com"
               },
               "Action": "sts:AssumeRole",
               "Condition": {
                   "ForAnyValue:ArnEquals": {
                       "aws:SourceArn": [
                           "arn:aws:cleanrooms:us-east-1:111122223333:membership/jobRunnerMembershipId",
                           "arn:aws:cleanrooms:us-east-1:444455556666:membership/rrMembershipId"
                       ]
                   }
               }
           }
       ]
   }
   ```

------
**Anmerkung**  
Diese Vertrauensrichtlinie bezieht sich auf zwei verschiedene AWS-Konto IDs , um eine AWS Clean Rooms Zusammenarbeit mit unterschiedlichen operativen Rollen zu unterstützen:  
**111122223333** — Dies ist das Konto, das die Mitgliedschaft enthält, die für die Ausführung von Analysejobs verantwortlich ist (der „Job Runner“). Diese Mitgliedschaft führt die Rechen-Workloads aus und muss diese Rolle übernehmen, um auf Verarbeitungsressourcen zugreifen zu können.
**444455556666** — Dies ist das Konto, das die Mitgliedschaft mit den Zuständigkeiten des Ergebnisempfängers (RR) enthält. Diese Mitgliedschaft ist berechtigt, die Ergebnisse von Analysejobs zu empfangen und darauf zuzugreifen, und benötigt Rollenzugriff, um Ergebnisse an bestimmte Speicherorte zu schreiben.
Diese Konfiguration ermöglicht AWS Clean Rooms Szenarien, in denen eine Partei die rechnerische Analyse durchführt, während eine andere Partei die Ergebnisse erhält und verwaltet. Für beide Rollen sind unterschiedliche, aber sich ergänzende Berechtigungen für dieselbe Ausführungsrolle erforderlich. Diese `aws:SourceArn` Bedingung stellt sicher, dass nur AWS Clean Rooms Operationen, die aus diesen beiden spezifischen Mitgliedschaften stammen, diese Rolle übernehmen können, wodurch die Sicherheit gewährleistet und gleichzeitig die verteilte Auftragsausführung und das Ergebnismanagement unterstützt werden.

1. Verwenden Sie die folgende Berechtigungsrichtlinie gemäß dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html).
**Anmerkung**  
Die folgende Beispielrichtlinie unterstützt die Berechtigungen, die zum Schreiben in Amazon S3 erforderlich sind. Je nachdem, wie Sie S3 eingerichtet haben, müssen Sie diese Richtlinie jedoch möglicherweise ändern.  
Ihre Amazon S3 S3-Ressourcen müssen sich in derselben Umgebung AWS-Region wie die AWS Clean Rooms Kollaboration befinden.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "s3:PutObject"
               ],
               "Resource": "arn:aws:s3:::bucket/optionalPrefix/*",
               "Condition":{
                   "StringEquals":{
                       "s3:ResourceAccount":[
                           "s3BucketOwnerAccountId"
                       ]
                   }
               }
           },
           {
               "Effect": "Allow",
               "Action": [
                   "s3:GetBucketLocation",
                   "s3:ListBucket"
               ],
               "Resource": "arn:aws:s3:::bucket",
               "Condition":{
                   "StringEquals":{
                       "s3:ResourceAccount":[
                           "s3BucketOwnerAccountId"
                       ]
                   }
               }
           }
       ]
   }
   ```

------

1. Ersetzen Sie jede *placeholder* durch Ihre eigenen Informationen:
   + *region* – Der Name des AWS-Region. Beispiel, **us-east-1**.
   + *jobRunnerAccountId*— Die AWS-Konto ID, in der sich der S3-Bucket befindet.
   + *jobRunnerMembershipId*— Die **Mitglieds-ID** des Mitglieds, das Jobs abfragen und ausführen kann. Die **Mitglieds-ID** finden Sie auf der Registerkarte **Details** der Kollaboration. Dadurch AWS Clean Rooms wird sichergestellt, dass die Rolle nur übernommen wird, wenn dieses Mitglied die Analyse in dieser Kollaboration ausführt.
   + *rrAccountId*— Die AWS-Konto ID, in der sich der S3-Bucket befindet.
   + *rrMembershipId*— Die **Mitglieds-ID** des Mitglieds, das Ergebnisse erhalten kann. Die **Mitglieds-ID** finden Sie auf der Registerkarte **Details** der Kollaboration. Dadurch AWS Clean Rooms wird sichergestellt, dass die Rolle nur übernommen wird, wenn dieses Mitglied die Analyse in dieser Kollaboration ausführt.
   + *bucket*— Der Name und der Speicherort des S3-Buckets.
   + *optionalPrefix*— Ein optionales Präfix, wenn Sie Ihre Ergebnisse unter einem bestimmten S3-Präfix speichern möchten.
   + *s3BucketOwnerAccountId*— Die AWS-Konto ID des S3-Bucket-Besitzers.

1. Folgen Sie weiterhin dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html), um die Rolle zu erstellen.

## Erstellen Sie eine Servicerolle, um Ergebnisse zu erhalten
<a name="create-role-write-results"></a>

**Anmerkung**  
Wenn Sie das Mitglied sind, das nur Ergebnisse erhalten kann (in der Konsole ist **Ihre Mitgliederfähigkeit** nur **Ergebnisse erhalten aktiviert**), gehen Sie wie folgt vor.  
Wenn Sie ein Mitglied sind, das Ergebnisse sowohl abfragen als auch empfangen kann (in der Konsole ist **Ihre Fähigkeit als Mitglied** sowohl Ergebnisse **abfragen** als auch **Ergebnisse erhalten**), können Sie dieses Verfahren überspringen.

Für Kollaborationsmitglieder, die nur Ergebnisse empfangen können, AWS Clean Rooms verwendet eine Servicerolle, um die Ergebnisse der abgefragten Daten in der Kollaboration in den angegebenen S3-Bucket zu schreiben. 

Es gibt zwei Möglichkeiten, diese Servicerolle zu erstellen:
+ Wenn Sie über die erforderlichen IAM-Berechtigungen zum Erstellen einer Servicerolle verfügen, verwenden Sie die AWS Clean Rooms Konsole, um eine Servicerolle zu erstellen.
+ Wenn Sie nicht über die `iam:AttachRolePolicy` erforderlichen Berechtigungen verfügen `iam:CreateRole` oder die IAM-Rollen manuell erstellen möchten, gehen Sie wie folgt vor: `iam:CreatePolicy`
  + Gehen Sie wie folgt vor, um eine Servicerolle mithilfe benutzerdefinierter Vertrauensrichtlinien zu erstellen.
  + Bitten Sie Ihren Administrator, die Servicerolle mithilfe des folgenden Verfahrens zu erstellen.

**Anmerkung**  
Sie oder Ihr IAM-Administrator sollten dieses Verfahren nur befolgen, wenn Sie nicht über die erforderlichen Berechtigungen verfügen, um mithilfe der AWS Clean Rooms Konsole eine Servicerolle zu erstellen.

**Um mithilfe benutzerdefinierter Vertrauensrichtlinien eine Servicerolle zu erstellen, um Ergebnisse zu erhalten**

1. Erstellen Sie eine Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien. Weitere Informationen finden Sie unter dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html) im *AWS Identity and Access Management Benutzerhandbuch*.

1. Verwenden Sie die folgende benutzerdefinierte Vertrauensrichtlinie gemäß dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html).

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "AllowIfExternalIdMatches",
               "Effect": "Allow",
               "Principal": {
                   "Service": "cleanrooms.amazonaws.com"
               },
               "Action": "sts:AssumeRole",
               "Condition": {
                   "ArnLike": {
                       "sts:ExternalId": "arn:aws:*:region:*:dbuser:*/a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa*"
                   }
               }
           },
           {
               "Sid": "AllowIfSourceArnMatches",
               "Effect": "Allow",
               "Principal": {
                   "Service": "cleanrooms.amazonaws.com"
               },
               "Action": "sts:AssumeRole",
               "Condition": {
                   "ForAnyValue:ArnEquals": {
                       "aws:SourceArn": [
                           "arn:aws:cleanrooms:us-east-1:555555555555:membership/a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa"
                       ]
                   
                   }
               }
           }
       ]
   }
   ```

------

1. Verwenden Sie die folgende Berechtigungsrichtlinie gemäß dem Verfahren [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html).
**Anmerkung**  
Die folgende Beispielrichtlinie unterstützt die Berechtigungen, die zum Lesen von AWS Glue Metadaten und den entsprechenden Amazon S3 S3-Daten erforderlich sind. Je nachdem, wie Sie Ihre S3-Daten eingerichtet haben, müssen Sie diese Richtlinie jedoch möglicherweise ändern.  
Ihre AWS Glue Ressourcen und die zugrunde liegenden Amazon S3 S3-Ressourcen müssen sich in derselben Weise AWS-Region wie die AWS Clean Rooms Zusammenarbeit befinden.

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

****  

   ```
   {
   
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "s3:GetBucketLocation", 
                   "s3:ListBucket"
               ],
               "Resource": [
                   "arn:aws:s3:::bucket_name"
               ],
               "Condition": {
                   "StringEquals": {
                       "aws:ResourceAccount":"accountId"
                   }
               }
           },
           {
               "Effect": "Allow",
               "Action": [
                   "s3:PutObject"
               ],
               "Resource": [
                   "arn:aws:s3:::bucket_name/optional_key_prefix/*"
               ],
               "Condition": {
                   "StringEquals": {
                       "aws:ResourceAccount":"accountId"
                   }
               }
           }
       ]
   }
   ```

------

1. Ersetzen Sie jede *placeholder* durch Ihre eigenen Informationen:
   + *region* – Der Name des AWS-Region. Beispiel, **us-east-1**.
   + *a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa*— Die **Mitglieds-ID** des Mitglieds, das Abfragen durchführen kann. Die **Mitglieds-ID** finden Sie auf der Registerkarte **Details** der Kollaboration. Dadurch AWS Clean Rooms wird sichergestellt, dass die Rolle nur übernommen wird, wenn dieses Mitglied die Analyse in dieser Kollaboration ausführt.
   + *arn:aws:cleanrooms:us-east-1:555555555555:membership/a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa*— Der einzige **Mitgliedschafts-ARN** des Mitglieds, das Abfragen durchführen kann. Die **Mitgliedschafts-ARN** finden Sie auf der Registerkarte **Details** der Kollaboration. Dadurch AWS Clean Rooms wird sichergestellt, dass die Rolle nur übernommen wird, wenn dieses Mitglied die Analyse in dieser Kollaboration ausführt.
   + *bucket\$1name*— Der **Amazon-Ressourcenname (ARN)** des S3-Buckets. Den **Amazon-Ressourcennamen (ARN)** finden Sie auf der Registerkarte **Eigenschaften** des Buckets in Amazon S3.
   + *accountId*— Die AWS-Konto ID, in der sich der S3-Bucket befindet.

     *bucket\$1name/optional\$1key\$1prefix*— Der **Amazon-Ressourcenname (ARN)** des Ergebnisziels in Amazon S3. Den **Amazon-Ressourcennamen (ARN)** finden Sie auf der Registerkarte **Eigenschaften** des Buckets in Amazon S3.

1. Folgen Sie weiterhin dem Verfahren zum [Erstellen einer Rolle mithilfe benutzerdefinierter Vertrauensrichtlinien (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html), um die Rolle zu erstellen.