Wie teile ich AWS-Glue-Datenkatalog-Datenbanken und -Tabellen mit AWS Lake Formation kontoübergreifend?
Ich möchte AWS Lake Formation verwenden, um AWS-Glue-Datenkatalog-Datenbanken und -Tabellen über AWS-Konten hinweg zu teilen.
Lösung
Mit der kontoübergreifenden Funktion von Lake Formation kannst du anderen AWS-Konten Zugriff gewähren, um Daten in den oder aus dem Data Lake zu schreiben und zu teilen. Die Ressourcen können entweder anhand der tagbasierten Zugriffskontrolle oder über benannte Ressourcen gemeinsam genutzt werden.
Um die kontoübergreifende Freigabe zu nutzen, verwende einen der folgenden Ansätze:
- Hybrider Zugriffsmodus
- Standardmodus für Berechtigungen von AWS Identity and Access Management (IAM) Lake Formation
Voraussetzungen:
- Füge für den kontoübergreifenden Zugriff erforderliche Berechtigungen hinzu. Weitere Informationen findest du unter Sharing Data Catalog tables and databases across AWS accounts or IAM principals from external accounts (Datenkatalog-Tabellen und -Datenbanken über AWS-Konten oder IAM-Prinzipale aus externen Konten hinweg teilen) und AWSLakeFormationCrossAccountManager.
- Aktiviere die Freigabe mit AWS Organizations.
- Die Voraussetzungen für die kontoübergreifende Freigabe müssen erfüllt sein.
- Aktualisiere für den hybriden Zugriffsmodus die Versionseinstellungen für die kontoübergreifende Freigabe auf Version 4. Weitere Informationen findest du unter Common hybrid access mode use cases (Häufige Anwendungsfälle für den hybriden Zugriffsmodus).
- Widerrufe für den standardmäßigen Berechtigungsmodus von AWS IAM Lake Formation alle Lake-Formation-Berechtigungen der Gruppe IAMAllowedPrincipals für die Datenkatalog-Ressource. Ändere außerdem die Standardberechtigungen für Datenkataloge so, dass diese keine Super-Berechtigungen haben. Weitere Informationen findest du unter Changing the default settings for your data lake (Ändern der Standardeinstellungen für den Data Lake).
Hinweis: Um entweder den hybriden Zugriffsmodus oder den Standardmodus für IAM-Lake-Formation-Berechtigungen zu verwenden, musst du die Datenbank und Datenbanktabellen mit dem Zielkonto außerhalb der Organisation teilen. Wenn du alle Tabellen im Quellkonto teilst, werden neue Tabellen, die du im Quellkonto erstellst, automatisch mit dem Zielkonto geteilt.
Hybrider Zugriffsmodus
Führe im Quellkonto die folgenden Aufgaben aus.
Den Amazon-S3-Standort im hybriden Zugriffsmodus registrieren
Gehe wie folgt vor:
- Öffne die Lake-Formation-Konsole und melde dich als Data-Lake-Administrator an.
- Wähle im Navigationsbereich unter „Administration“ die Option Data lake locations (Data-Lake-Standorte) aus.
- Wähle auf der Seite „Data lake locations“ (Data-Lake-Standorte) die Option Register location (Standort registrieren) aus.
- Gib auf der Seite „Register location“ (Standort registrieren) die folgenden Informationen ein:
Gib für Amazon S3 location (Amazon-S3-Standort) den Amazon Simple Storage Service (Amazon S3)-Standort der Datenbank und Tabellen an.
Gib für IAM role (IAM-Rolle) eine AWS Identity and Access Management (IAM)-Rolle an, die auf die Daten am Amazon-S3-Standort zugreifen kann. Weitere Details zu dieser Rollenanforderung findest du unter Requirements for roles used to register locations (Anforderungen für Rollen, die zum Registrieren von Standorten verwendet werden).
Wähle für Permission mode (Berechtigungsmodus) die Option Hybrid access mode (Hybrider Zugriffsmodus) aus. - Wähle Register location (Standort registrieren) aus.
Nachdem du den Amazon-S3-Standort registriert hast, überprüfe die Standortinformationen für den Data Lake. Stelle sicher, dass der Berechtigungsmodus der hybride Zugriffsmodus ist.
Kontoübergreifende Berechtigungen für die Datenbank und Tabelle gewähren
Gehe wie folgt vor:
- Öffne die Lake-Formation-Konsole und melde dich als Data-Lake-Administrator an.
- Wähle im Navigationsbereich Database (Datenbank) und dann die Datenbank aus.
- Wähle Actions (Aktionen) und dann Grant (Gewähren) aus.
- Wähle auf dem Bildschirm zum Gewähren von Berechtigungen unter „Principals“ (Prinzipale) die Option External account (Externes Konto) aus.
- Gib unter AWS account ID (AWS-Konto-ID) oder AWS organization ID (AWS-Organisations-ID) die Konto-ID des Zielkontos ein.
- Wähle unter „Hybrid access mode“ (Hybrider Zugriffsmodus) die Option Make Lake Formation permissions effective immediately (Lake-Formation-Berechtigungen als sofort wirksam festlegen) aus.
- Wähle Grant (Gewähren) aus.
- Um kontoübergreifende Berechtigungen für die Tabelle zu gewähren, wiederhole die vorherigen Schritte. Stelle sicher, dass du die Option All tables (Alle Tabellen) oder Specific table (Bestimmte Tabelle) auswählst.
Hinweis: Diese Konfiguration meldet die Administratorrollen für Lake Formation im Consumer-Konto an, um Lake-Formation-Berechtigungen zu verwenden. Dieses Update unterbricht nicht den IAM- und S3-Zugriff des Consumer-Kontos für dieselbe Datenbank. Diese Freigabe widerruft nicht den Zugriff auf die Gruppe IAMAllowedPrincipal.
Standardmodus für IAM-Lake-Formation-Berechtigungen
Führe im Quellkonto die folgenden Aufgaben aus.
Eine Datenbank und deren Tabellen mit dem Zielkonto teilen
Gehe wie folgt vor:
- Öffne die Lake-Formation-Konsole und melde dich als Data-Lake-Administrator an.
- Wähle im Navigationsbereich Database (Datenbank) und dann die Datenbank aus.
- Wähle Actions (Aktionen) und dann Grant (Gewähren) aus.
- Wähle auf dem Bildschirm zum Gewähren von Berechtigungen unter „Principals“ (Prinzipale) die Option External account (Externes Konto) aus.
- Gib unter AWS account ID (AWS-Konto-ID) oder AWS organization ID (AWS-Organisations-ID) die Konto-ID des Zielkontos ein.
- Wähle für Table (Tabelle) die Option All tables (Alle Tabellen) aus.
- Wähle für Table permissions (Tabellenberechtigungen) und Grantable permissions (Erteilbare Berechtigungen) die Zugriffsberechtigungen aus, die du erteilen möchtest.
- Wähle Grant (Gewähren) aus.
Ressourcen konfigurieren
Für das Zielkonto ist der Vorgang sowohl für den hybriden Modus als auch für den Standardmodus für IAM-Lake-Formation-Berechtigungen bei den folgenden Konfigurationen gleich:
- Akzeptieren gemeinsam genutzter Ressourcen
- Erteilen von Berechtigungen für IAM-Benutzer oder -Rollen
- Erstellen von Ressourcen-Links
Gehe wie folgt vor, um die Ressourcen zu konfigurieren:
- Akzeptiere die mit dir geteilten Ressourcen. Weitere Informationen findest du unter Access AWS resources shared with you (Zugriff auf mit dir geteilte AWS-Ressourcen).
- Erstelle einen Ressourcen-Link zu einer gemeinsam genutzten Datenkatalog-Datenbank. Weitere Informationen zu Ressourcen-Links findest du unter Creating resource links (Ressourcenlinks erstellen).
- Gewähre IAM-Benutzern oder -Prinzipalen die erforderlichen Berechtigungen für den Ressourcenlink und die gemeinsam genutzte Datenbank.
Hinweis: IAM-Benutzer können die Datenbank und den Ressourcenlink auch in der Amazon-Athena-Konsole oder in Amazon Redshift Spectrum anzeigen. IAM-Benutzer und -Prinzipale des Zielkontos müssen Zugriff auf den Amazon-S3-Pfad im Quellkonto haben.
Gehe wie folgt vor, um den IAM-Benutzern Zugriff auf die gemeinsam genutzten Datenbanken zu gewähren:
- Öffne die Lake-Formation-Konsole und melde dich als Data-Lake-Administrator an.
- Wähle im Navigationsbereich Databases (Datenbanken) aus.
- Wähle die gemeinsam genutzte Datenbank aus.
- Wähle Actions (Aktionen) und dann Grant (Gewähren) aus.
- Wähle unter „Principals“ (Prinzipale) die Option IAM users and roles (IAM-Benutzer und -Rollen) aus. Wähle dann den IAM-Benutzer oder -Prinzipal aus, für den du Zugriffsberechtigungen gewähren möchtest.
- Wähle unter Database permissions (Datenbankberechtigungen) die Option Describe (Beschreiben) aus.
- Wähle Grant (Gewähren) aus.
Hinweis: Dieser Schritt bietet Benutzern die Mindestberechtigungen zum Anzeigen der gemeinsam genutzten Datenbank.
Um Zugriff auf alle oder bestimmte Tabellen in der Datenbank zu gewähren, wähle die Option All tables (Alle Tabellen) aus:
- Wähle unter „All tables“ (Alle Tabellen) den Ressourcen-Link aus.
- Wähle Actions (Aktionen) und dann Grant (Gewähren) aus.
- Wähle IAM users and roles (IAM-Benutzer und -Rollen) aus. Wähle dann den IAM-Benutzer oder -Prinzipal aus, für den du Zugriffsberechtigungen gewähren möchtest.
- Gehe unter LF-Tags or catalog resources (LF-Tags oder Katalogressourcen) wie folgt vor:
Um Zugriff auf alle Tabellen in der Datenbank zu gewähren, wähle für Tables - optional (Tabellen – optional) die Option All tables (Alle Tabellen) aus.
Um nur Zugriff auf bestimmte Tabellen in der Datenbank zu gewähren, wähle die Tabellen unter Tables - optional (Tabellen – optional) aus. - Wähle für Table permissions (Tabellenberechtigungen) und Grantable permissions (Erteilbare Berechtigungen) die Option Select (Auswählen) und dann Describe (Beschreiben) aus.
- Wähle Grant (Gewähren) aus.
Hinweis: Du kannst nur die Berechtigungen erteilen, die du als Grantable permissions (Erteilbare Berechtigungen) im Quellkonto ausgewählt hast.
Nachdem du die erforderlichen Berechtigungen erteilt hast, kannst du die Tabelle in Athena über das Zielkonto abfragen.
Hinweis: Wenn du dem Quellkonto die zuvor erteilten Berechtigungen entziehst, kann das Zielkonto nicht auf die gemeinsam genutzte Datenbank oder Tabelle zugreifen. Der Ressourcen-Link, den du im Zielkonto erstellt hast, wird jedoch nicht automatisch gelöscht. Du musst den Ressourcen-Link manuell löschen.
Nur Tabellen mit dem Zielkonto teilen
Um einzelne Tabellen mit dem Zielkonto zu teilen, führe die Schritte im Abschnitt „Ressourcen konfigurieren“ aus. Aktualisiere als Teil der Schritte die folgenden Ressourcen:
Quellkonto
Um von der Lake-Formation-Konsole aus Zugriff auf das Zielkonto zu gewähren, wähle die einzelnen Tabellen aus, anstatt die Datenbank auszuwählen.
Zielkonto
Akzeptiere die Ressourcenfreigabe in der AWS Resource Access Manager (AWS RAM)-Konsole, um auf die gemeinsam genutzte Tabelle in der Lake-Formation-Konsole zuzugreifen. Erstelle dann einen Ressourcen-Link für die gemeinsam genutzte Tabelle. Nachdem der Ressourcen-Link erstellt wurde, kannst du die gemeinsam genutzte Tabelle mit dem Data-Lake-Administratorzugriff abfragen.
Um den IAM-Benutzern und -Prinzipalen Zugriff auf die gemeinsam genutzte Tabelle zu gewähren, musst du Berechtigungen für den Ressourcen-Link gewähren.
Hinweis: Wenn du Berechtigungen für die Tabelle gewährst, kannst du den Zugriff nur für die bestimmten Spalten in der Tabelle einschränken. Wenn du den Zugriff einschränkst, kann das Zielkonto nur diese Spalten in der gemeinsam genutzten Tabelle sehen.
Wenn du eine Datenbank oder Tabelle löschst, löscht Lake Formation die Ressourcenfreigaben in AWS RAM nicht automatisch. Bevor du eine gemeinsam genutzte Datenbank oder Tabelle löschst, musst du kontoübergreifende Berechtigungen manuell widerrufen.
Weitere Informationen
Granting permissions on Data Catalog resources (Erteilen von Berechtigungen für Datenkatalog-Ressourcen)
So funktioniert die kontoübergreifende Funktion von AWS Lake Formation
Updating cross-account data sharing version settings (Aktualisieren der Versionseinstellungen für die kontoübergreifende Datenfreigabe)
Setting up hybrid access mode - common scenarios (Einrichten des hybriden Zugriffsmodus - häufige Szenarien)
- Sprache
- Deutsch
Ähnliche Videos


Relevanter Inhalt
AWS OFFICIALAktualisiert vor 3 Jahren