

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.

# Zugreifen auf Amazon-S3-Tabellen über den AWS GlueIceberg REST-Endpunkt
<a name="s3-tables-integrating-glue-endpoint"></a>

Sobald Ihre S3-Tabellen-Buckets in den integriert sind, können AWS Glue Data Catalog Sie den AWS GlueIceberg REST Endpunkt verwenden, um von Apache Iceberg -kompatiblen Clients wie oder aus eine Verbindung zu Ihren S3-Tabellen herzustellen. PyIceberg Spark Der AWS Glue Iceberg REST Endpunkt implementiert die [Iceberg RESTCatalog Open API-Spezifikation](https://github.com/apache/iceberg/blob/main/open-api/rest-catalog-open-api.yaml), die eine standardisierte Schnittstelle für die Interaktion mit Iceberg Tabellen bietet. Um über den Endpunkt auf S3-Tabellen zuzugreifen, müssen Sie Berechtigungen mithilfe einer Kombination aus IAM-Richtlinien und AWS Lake Formation Zuschüssen konfigurieren. In den folgenden Abschnitten wird erklärt, wie Sie den Zugriff einrichten, einschließlich der Erstellung der erforderlichen IAM-Rolle, der Definition der erforderlichen Richtlinien und der Einrichtung von Lake-Formation-Berechtigungen für den Zugriff auf Datenbank- und Tabellenebene. 

Eine Komplettlösung unter Verwendung von PyIceberg finden Sie unter [Zugreifen auf Daten in Amazon S3 Tables mithilfe von PyIceberg über den AWS GlueIceberg REST-Endpunkt](https://aws.amazon.com/blogs/storage/access-data-in-amazon-s3-tables-using-pyiceberg-through-the-aws-glue-iceberg-rest-endpoint/).

**Voraussetzungen**
+ [Integrieren Sie Ihre Tabellen-Buckets mit Analysediensten AWS](s3-tables-integrating-aws.md)
+ [Tabellen-Namespaces erstellen](s3-tables-namespace-create.md)
+ [Zugriff auf ein Data Lake-Administratorkonto haben](https://docs.aws.amazon.com//lake-formation/latest/dg/initial-lf-config.html#create-data-lake-admin)

## Erstellen Sie eine IAM-Rolle für Ihren Client.
<a name="glue-endpoint-create-iam-role"></a>

Um über AWS Glue Endpoints auf Tabellen zuzugreifen, müssen Sie eine IAM-Rolle mit Berechtigungen für AWS Glue und Lake Formation Formation-Aktionen erstellen. In diesem Verfahren wird das Erstellen dieser Rolle und die Konfiguration ihrer Berechtigungen erläutert.

1. Öffnen Sie unter [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) die IAM-Konsole.

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

1. Wählen Sie im Richtlinien-Editor **Richtlinie erstellen** und **JSON** aus.

1. Fügen Sie die folgende Inline-Richtlinie hinzu, die Zugriffsberechtigungen AWS Glue und Lake Formation Formation-Aktionen gewährt:

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "VisualEditor0",
               "Effect": "Allow",
               "Action": [
                   "glue:GetCatalog",
                   "glue:GetDatabase",
                   "glue:GetDatabases",
                   "glue:GetTable",
                   "glue:GetTables",
                   "glue:CreateTable",
                   "glue:UpdateTable"
               ],
               "Resource": [
                   "arn:aws:glue:us-east-1:111122223333:catalog",
                   "arn:aws:glue:us-east-1:111122223333:catalog/s3tablescatalog",
                   "arn:aws:glue:us-east-1:111122223333:catalog/s3tablescatalog/amzn-s3-demo-table-bucket",
                   "arn:aws:glue:us-east-1:111122223333:table/s3tablescatalog/amzn-s3-demo-table-bucket/<namespace>/*",
                   "arn:aws:glue:us-east-1:111122223333:database/s3tablescatalog/amzn-s3-demo-table-bucket/<namespace>"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "lakeformation:GetDataAccess"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

------

1. Nachdem Sie die Richtlinie erstellt haben, erstellen Sie eine IAM-Rolle und wählen Sie **Benutzerdefinierte Vertrauensrichtlinie** als **vertrauenswürdigen Entitätstyp** aus.

1. Geben Sie Folgendes für die **benutzerdefinierte Vertrauensrichtlinie** ein.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::111122223333:role/Admin_role"
               },
               "Action": "sts:AssumeRole",
               "Condition": {}
           }
       ]
   }
   ```

------

## Definieren Sie den Zugriff in Lake Formation
<a name="define-access-lakeformation"></a>

Lake Formation bietet eine differenzierte Zugriffskontrolle für Ihre Data-Lake-Tabellen. Als Sie Ihren S3-Bucket in den integriert haben AWS Glue Data Catalog, wurden Ihre Tabellen automatisch als Ressourcen in Lake Formation registriert. Um auf diese Tabellen zugreifen zu können, müssen Sie Ihrer IAM-Identität zusätzlich zu den IAM-Richtlinienberechtigungen bestimmte Lake Formation-Berechtigungen gewähren.

In den folgenden Schritten wird erklärt, wie Sie Lake Formation-Zugriffskontrollen anwenden, damit Ihr Iceberg-Client eine Verbindung zu Ihren Tabellen herstellen kann. Sie müssen sich als Data-Lake-Administrator anmelden, um diese Berechtigungen anwenden zu können.

### Erlauben Sie externen Engines den Zugriff auf Tabellendaten
<a name="allow-external-engines"></a>

In Lake Formation müssen Sie den vollständigen Tabellenzugriff für externe Engines aktivieren, um auf Daten zugreifen zu können. Auf diese Weise können Drittanbieteranwendungen temporäre Anmeldeinformationen von Lake Formation abrufen, wenn sie eine IAM-Rolle verwenden, die über volle Berechtigungen für die angeforderte Tabelle verfügt.

Öffnen Sie die Lake Formation Formation-Konsole unter [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/).

1. Öffnen Sie die Lake Formation Formation-Konsole unter [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/)und melden Sie sich als Data Lake-Administrator an.

1. Wählen Sie im Navigationsbereich unter **Administration** die Option **Einstellungen für die Anwendungsintegration** aus.

1. Wählen Sie **Externen Engines den Zugriff auf Daten an Amazon-S3-Standorten mit vollständigem Tabellenzugriff erlauben**. Wählen Sie dann **Speichern**.

### Lake Formation Berechtigungen für Ihre Tabellenressourcen erteilen
<a name="grant-lakeformation-permissions"></a>

Als Nächstes gewähren Sie Lake Formation-Berechtigungen für die IAM-Rolle, die Sie für Ihren Iceberg-kompatiblen Client erstellt haben. Diese Berechtigungen ermöglichen es der Rolle, Tabellen in Ihrem Namespace zu erstellen und zu verwalten. Sie müssen sowohl Berechtigungen auf Datenbank- als auch auf Tabellenebene bereitstellen. Weitere Informationen finden Sie unter [Erteilen der Lake Formation-Berechtigung für eine Tabelle oder Datenbank](grant-permissions-tables.md#grant-lf-table).

## So richten Sie Ihre Umgebung für die Verwendung des Endpunkts ein
<a name="setup-client-glue-irc"></a>

Nachdem Sie die IAM-Rolle mit den für den Tabellenzugriff erforderlichen Berechtigungen eingerichtet haben, können Sie sie verwenden, um Iceberg Clients von Ihrem lokalen Computer aus auszuführen, indem Sie sie AWS CLI mit dem folgenden Befehl mit Ihrer Rolle konfigurieren:

```
aws sts assume-role --role-arn "arn:aws:iam::<accountid>:role/<glue-irc-role>" --role-session-name <glue-irc-role>
```

Um über den AWS Glue REST Endpunkt auf Tabellen zuzugreifen, müssen Sie einen Katalog in Ihrem Iceberg -kompatiblen Client initialisieren. Diese Initialisierung erfordert die Angabe benutzerdefinierter Eigenschaften, einschließlich SigV4-Eigenschaften, der Endpunkt-URI und des Warehouse-Standorts. Geben Sie diese Eigenschaften wie folgt an:
+ SigV4-Eigenschaften – SigV4 muss aktiviert sein, der Signaturname lautet `glue`
+ Warehouse-Ort – Dies ist Ihr Tabellen-Bucket, angegeben in diesem Format: `<accountid>:s3tablescatalog/<table-bucket-name>`
+ Endpunkt-URI — Informationen zum regionsspezifischen Endpunkt finden Sie im Referenzhandbuch für AWS Glue Service-Endpunkte

Die folgende Beispiel zeigt die Initialisierung eines pyIceberg-Katalogs.

```
rest_catalog = load_catalog(
        s3tablescatalog,
**{
"type": "rest",
"warehouse": "<accountid>:s3tablescatalog/<table-bucket-name>",
"uri": "https://glue.<region>.amazonaws.com/iceberg",
"rest.sigv4-enabled": "true",
"rest.signing-name": "glue",
"rest.signing-region": region
        }
)
```

Weitere Informationen zur AWS GlueIceberg REST-Endpunktimplementierung finden Sie unter [Herstellen einer Verbindung zum Datenkatalog mithilfe des AWS GlueIceberg REST-Endpunkts](https://docs.aws.amazon.com/glue/latest/dg/connect-glu-iceberg-rest.html) im *AWS Glue Benutzerhandbuch-*.