Verwaltung eines Data Lakes mithilfe der Tag-basierten Zugriffskontrolle von Lake Formation - AWS Lake Formation

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.

Verwaltung eines Data Lakes mithilfe der Tag-basierten Zugriffskontrolle von Lake Formation

Tausende von Kunden bauen darauf Data Lakes im Petabyte-Bereich auf. AWS Viele dieser Kunden nutzen die Möglichkeit AWS Lake Formation , ihre Data Lakes einfach aufzubauen und unternehmensweit gemeinsam zu nutzen. Angesichts der steigenden Anzahl von Tabellen und Benutzern suchen Data Stewards und Administratoren nach Möglichkeiten, Berechtigungen für Data Lakes einfach und skalierbar zu verwalten. Lake Formation Tag-Based Access Control (LF-TBAC) löst dieses Problem, indem Data Stewards ermöglicht wird, LF-Tags (basierend auf ihrer Datenklassifizierung und Ontologie) zu erstellen, die dann an Ressourcen angehängt werden können.

LF- TBAC ist eine Autorisierungsstrategie, die Berechtigungen auf der Grundlage von Attributen definiert. In Lake Formation werden diese Attribute als LF-Tags bezeichnet. Sie können LF-Tags an Datenkatalogressourcen und Lake Formation-Prinzipale anhängen. Data Lake-Administratoren können mithilfe von LF-Tags Berechtigungen für Lake Formation Formation-Ressourcen zuweisen und widerrufen. Weitere Informationen dazu finden Sie unter. Tag-basierte Zugangskontrolle von Lake Formation

In diesem Tutorial wird gezeigt, wie Sie mithilfe eines AWS öffentlichen Datensatzes eine auf Lake Formation-Tags basierende Zugriffskontrollrichtlinie erstellen. Darüber hinaus wird gezeigt, wie Tabellen, Datenbanken und Spalten abgefragt werden, denen auf Lake Formation-Tags basierende Zugriffsrichtlinien zugeordnet sind.

Sie können LF- TBAC für die folgenden Anwendungsfälle verwenden:

  • Sie haben eine große Anzahl von Tabellen und Prinzipalen, auf die der Data Lake-Administrator Zugriff gewähren muss

  • Sie möchten Ihre Daten auf der Grundlage einer Ontologie klassifizieren und auf der Grundlage der Klassifizierung Berechtigungen gewähren

  • Der Data Lake-Administrator möchte Berechtigungen dynamisch, also lose gekoppelt, zuweisen

Im Folgenden sind die allgemeinen Schritte zur Konfiguration von Berechtigungen mit LF- aufgeführt: TBAC

  1. Der Data Steward definiert die Tag-Ontologie mit zwei LF-Tags: und. Confidential Sensitive Für Daten mit gelten strengere Confidential=True Zugriffskontrollen. Daten mit Sensitive=True erfordern eine spezifische Analyse durch den Analysten.

  2. Der Data Steward weist dem Dateningenieur verschiedene Berechtigungsstufen zu, um Tabellen mit unterschiedlichen LF-Tags zu erstellen.

  3. Der Dateningenieur erstellt zwei Datenbanken: und. tag_database col_tag_database Alle Tabellen in tag_database sind mit konfiguriertConfidential=True. Alle Tabellen in der col_tag_database sind mit konfiguriertConfidential=False. Einige Spalten der Tabelle in col_tag_database sind Sensitive=True für spezielle Analyseanforderungen mit gekennzeichnet.

  4. Der Dateningenieur erteilt dem Analysten Leseberechtigungen für Tabellen mit bestimmten Ausdrucksbedingungen Confidential=True undConfidential=False,Sensitive=True.

  5. Mit dieser Konfiguration kann sich der Datenanalyst darauf konzentrieren, Analysen mit den richtigen Daten durchzuführen.

Zielgruppe

Dieses Tutorial richtet sich an Datenverwalter, Dateningenieure und Datenanalysten. Wenn es um die Verwaltung AWS Glue Data Catalog und Verwaltung von Berechtigungen in Lake Formation geht, haben die Data Stewards innerhalb der produzierenden Konten die funktionale Verantwortung, basierend auf den Funktionen, die sie unterstützen, und können verschiedenen Verbrauchern, externen Organisationen und Konten Zugriff gewähren.

In der folgenden Tabelle sind die Rollen aufgeführt, die in diesem Tutorial verwendet werden:

Rolle Beschreibung
Datenverwalter (Administrator) Der lf-data-steward Benutzer hat folgenden Zugriff:
  • Lesezugriff auf alle Ressourcen im Datenkatalog

  • Kann LF-Tags erstellen und sie der Rolle des Dateningenieurs zuordnen, um anderen Prinzipalen Berechtigungen zu erteilen

Dateningenieur

lf-data-engineerDer Benutzer hat folgenden Zugriff:

  • Vollständiger Lese-, Schreib- und Aktualisierungszugriff auf alle Ressourcen im Datenkatalog

  • Berechtigungen zum Speicherort von Daten im Data Lake

  • Kann LF-Tags zuordnen und eine Verbindung zum Datenkatalog herstellen

  • Kann LF-Tags an Ressourcen anhängen, was den Zugriff auf Prinzipale auf der Grundlage von Richtlinien ermöglicht, die von Data Stewards erstellt wurden

Datenanalyst Der lf-data-analyst Benutzer hat folgenden Zugriff:
  • Präziser Zugriff auf Ressourcen, die von Tag-basierten Zugriffsrichtlinien von Lake Formation gemeinsam genutzt werden

Voraussetzungen

Bevor Sie mit diesem Tutorial beginnen, benötigen Sie eine AWS-Konto , mit der Sie sich als Administratorbenutzer mit den richtigen Berechtigungen anmelden können. Weitere Informationen finden Sie unter Erledigen Sie die Aufgaben zur AWS Erstkonfiguration.

In der Anleitung wird davon ausgegangen, dass Sie mit vertraut sindIAM. Informationen zu IAM finden Sie im IAMBenutzerhandbuch.

Schritt 1: Stellen Sie Ihre Ressourcen bereit

Dieses Tutorial enthält eine AWS CloudFormation Vorlage für eine schnelle Einrichtung. Sie können es überprüfen und an Ihre Bedürfnisse anpassen. Die Vorlage erstellt drei verschiedene Rollen (aufgeführt unterZielgruppe), um diese Übung durchzuführen, und kopiert den nyc-taxi-data Datensatz in Ihren lokalen Amazon S3 S3-Bucket.

  • Ein Amazon-S3-Bucket

  • Die entsprechenden Lake Formation Formation-Einstellungen

  • Die entsprechenden EC2 Amazon-Ressourcen

  • Drei IAM Rollen mit Referenzen

Erstellen Sie Ihre Ressourcen
  1. Melden Sie sich bei der AWS CloudFormation Konsole unter https://console.aws.amazon.com/cloudformation in der Region USA Ost (Nord-Virginia) an.

  2. Wählen Sie Launch Stack.

  3. Wählen Sie Weiter.

  4. Geben Sie im Abschnitt Benutzerkonfiguration das Passwort für drei Rollen ein:DataStewardUserPassword, DataEngineerUserPassword undDataAnalystUserPassword.

  5. Überprüfen Sie die Details auf der letzten Seite und wählen Sie Ich bestätige, dass AWS CloudFormation möglicherweise IAM Ressourcen erstellt werden.

  6. Wählen Sie Create (Erstellen) aus.

    Die Erstellung des Stacks kann bis zu fünf Minuten dauern.

Anmerkung

Nachdem Sie das Tutorial abgeschlossen haben, möchten Sie möglicherweise den Stack löschen, AWS CloudFormation um zu vermeiden, dass weiterhin Gebühren anfallen. Stellen Sie sicher, dass die Ressourcen im Ereignisstatus für den Stack erfolgreich gelöscht wurden.

Schritt 2: Registrieren Sie Ihren Datenstandort, erstellen Sie eine LF-Tag-Ontologie und gewähren Sie Berechtigungen

In diesem Schritt definiert der Data Steward-Benutzer die Tag-Ontologie mit zwei LF-Tags: Confidential und und gibt bestimmten IAM Prinzipalen die MöglichkeitSensitive, neu erstellte LF-Tags an Ressourcen anzuhängen.

Registrieren Sie einen Datenstandort und definieren Sie die LF-Tag-Ontologie
  1. Führen Sie den ersten Schritt als Data Steward-Benutzer (lf-data-steward) aus, um die Daten in Amazon S3 und den Datenkatalog in Lake Formation zu überprüfen.

    1. Melden Sie sich bei der Lake Formation Formation-Konsole unter https://console.aws.amazon.com/lakeformation/as lf-data-steward mit dem Passwort an, das Sie bei der Bereitstellung des AWS CloudFormation Stacks verwendet haben.

    2. Wählen Sie im Navigationsbereich unter Berechtigungen die Option Administrative Rollen und Aufgaben aus.

    3. Wählen Sie im Abschnitt Data Lake-Administratoren die Option Hinzufügen aus.

    4. Wählen Sie auf der Seite Administrator hinzufügen für IAMBenutzer und Rollen den Benutzer auslf-data-steward.

    5. Wählen Sie Speichern, um es lf-data-steward als Lake Formation-Administrator hinzuzufügen.

  2. Aktualisieren Sie als Nächstes die Datenkatalogeinstellungen, um die Lake Formation Formation-Berechtigung zur Steuerung der Katalogressourcen anstelle der IAM basierten Zugriffskontrolle zu verwenden.

    1. Wählen Sie im Navigationsbereich unter Verwaltung die Option Datenkatalogeinstellungen aus.

    2. Deaktivieren Sie die Option Nur IAM Zugriffskontrolle für neue Datenbanken verwenden.

    3. Deaktivieren Sie die Option Nur IAM Zugriffskontrolle für neue Tabellen in neuen Datenbanken verwenden.

    4. Klicken Sie auf Speichern.

  3. Als Nächstes registrieren Sie den Datenstandort für den Data Lake.

    1. Wählen Sie im Navigationsbereich unter Administration die Option Data Lake-Standorte aus.

    2. Wählen Sie Standort registrieren aus.

    3. Geben Sie auf der Seite Speicherort registrieren für den Amazon S3 S3-Pfad eins3://lf-tagbased-demo-Account-ID.

    4. Lassen Sie für IAMdie Rolle den Standardwert AWSServiceRoleForLakeFormationDataAccess unverändert.

    5. Wählen Sie Lake Formation als Berechtigungsmodus.

    6. Wählen Sie Standort registrieren.

  4. Als Nächstes erstellen Sie die Ontologie, indem Sie ein LF-Tag definieren.

    1. Wählen Sie im Navigationsbereich unter Berechtigungen die Option LF-Tags und Berechtigungen aus. .

    2. Wählen Sie LF-Tag hinzufügen.

    3. Geben Sie für Key (Schlüssel) Confidential ein.

    4. Fügen Sie für Werte und hinzuTrue. False

    5. Wählen Sie „LF-Tag hinzufügen“.

    6. Wiederholen Sie die Schritte, um das LF-Tag Sensitive mit dem Wert zu erstellen. True

    Sie haben alle erforderlichen LF-Tags für diese Übung erstellt.

Erteilen Sie Benutzern Berechtigungen IAM
  1. Geben Sie als Nächstes bestimmten IAM Prinzipalen die Möglichkeit, neu erstellte LF-Tags an Ressourcen anzuhängen.

    1. Wählen Sie im Navigationsbereich unter Berechtigungen die Option LF-Tags und Berechtigungen aus.

    2. Wählen Sie im Abschnitt LF-Tag-Berechtigungen die Option Berechtigungen gewähren aus.

    3. Wählen Sie als Berechtigungstyp die Option LF-Tag-Schlüsselwertpaar-Berechtigungen aus.

    4. Wählen Sie Benutzer IAM und Rollen aus.

    5. Suchen Sie für IAMBenutzer und Rollen nach der lf-data-engineer Rolle und wählen Sie sie aus.

    6. Fügen Sie im Abschnitt LF-Tags den Schlüssel Confidential mit den Werten True und und False den key Sensitive mit dem Wert hinzu. True

    7. Wählen Sie unter Berechtigungen die Option Describe and Associate für Berechtigungen und Gewährbare Berechtigungen aus.

    8. Wählen Sie Gewähren.

  2. Erteilen Sie als Nächstes Berechtigungen lf-data-engineer zum Erstellen von Datenbanken in unserem Datenkatalog und im zugrunde liegenden Amazon S3 S3-Bucket, der von erstellt wurde AWS CloudFormation.

    1. Wählen Sie im Navigationsbereich unter Administration die Option Administrative Rollen und Aufgaben aus.

    2. Wählen Sie im Abschnitt Datenbankersteller die Option Grant aus.

    3. Wählen Sie für IAMBenutzer und Rollen die lf-data-engineer Rolle aus.

    4. Wählen Sie für Katalogberechtigungen die Option Datenbank erstellen aus.

    5. Wählen Sie Gewähren.

  3. Als Nächstes gewähren Sie dem lf-data-engineer Benutzer Berechtigungen für den Amazon S3 S3-Bucket(s3://lf-tagbased-demo-Account-ID).

    1. Wählen Sie im Navigationsbereich unter Berechtigungen die Option Datenspeicherorte aus.

    2. Wählen Sie Gewähren.

    3. Wählen Sie Mein Konto aus.

    4. Wählen Sie für IAMBenutzer und Rollen die lf-data-engineer Rolle aus.

    5. Geben Sie für Speicherorte den Amazon S3 S3-Bucket ein, der mit der AWS CloudFormation Vorlage erstellt wurde(s3://lf-tagbased-demo-Account-ID).

    6. Wählen Sie Gewähren.

  4. Als Nächstes lf-data-engineer gewähren Sie erteilbare Berechtigungen für Ressourcen, die mit dem LF-Tag-Ausdruck verknüpft sind. Confidential=True

    1. Wählen Sie im Navigationsbereich unter Berechtigungen die Option Data Lake-Berechtigungen aus.

    2. Wählen Sie Gewähren.

    3. Wählen Sie IAMBenutzer und Rollen aus.

    4. Wählen Sie die Rolle auslf-data-engineer.

    5. Wählen Sie im Abschnitt LF-Tags oder Katalogressourcen die Option Ressourcen aus, denen LF-Tags zugeordnet sind.

    6. Wählen Sie LF-Tag-Schlüssel-Wert-Paar hinzufügen.

    7. Fügen Sie den Schlüssel Confidential mit den Werten hinzu. True

    8. Wählen Sie im Abschnitt Datenbankberechtigungen für Datenbankberechtigungen und Grantable Permissions die Option Describe aus.

    9. Wählen Sie im Abschnitt Tabellenberechtigungen sowohl für Tabellenberechtigungen als auch für Grantable-Berechtigungen die Optionen Beschreiben, Auswählen und Ändern aus.

    10. Wählen Sie Gewähren.

  5. Erteilen Sie als Nächstes lf-data-engineer erteilbare Berechtigungen für Ressourcen, die mit dem LF-Tag-Ausdruck verknüpft sind. Confidential=False

    1. Wählen Sie im Navigationsbereich unter Berechtigungen die Option Data Lake-Berechtigungen aus.

    2. Wählen Sie Gewähren.

    3. Wählen Sie IAMBenutzer und Rollen aus.

    4. Wählen Sie die Rolle auslf-data-engineer.

    5. Wählen Sie Ressourcen aus, denen LF-Tags zugeordnet sind.

    6. Wählen Sie LF-Tag hinzufügen.

    7. Fügen Sie den Schlüssel Confidential mit dem Wert hinzu. False

    8. Wählen Sie im Abschnitt Datenbankberechtigungen für Datenbankberechtigungen und Grantable Permissions die Option Describe aus.

    9. Wählen Sie im Abschnitt Tabellen- und Spaltenberechtigungen nichts aus.

    10. Wählen Sie Gewähren.

  6. Als Nächstes lf-data-engineer gewähren wir erteilbare Berechtigungen für Ressourcen, die den LF-Tag-Schlüssel-Wert-Paaren und zugeordnet sind. Confidential=False Sensitive=True

    1. Wählen Sie im Navigationsbereich unter Berechtigungen die Option Datenberechtigungen aus.

    2. Wählen Sie Gewähren.

    3. Wählen Sie IAMBenutzer und Rollen aus.

    4. Wählen Sie die Rolle auslf-data-engineer.

    5. Wählen Sie im Abschnitt LF-Tags oder Katalogressourcen die Option Ressourcen aus, denen LF-Tags zugeordnet sind.

    6. Wählen Sie LF-Tag hinzufügen.

    7. Fügen Sie den Schlüssel Confidential mit dem Wert hinzu. False

    8. Wählen Sie „LF-Tag-Schlüssel-Wert-Paar hinzufügen“.

    9. Fügen Sie den Schlüssel Sensitive mit dem Wert hinzu. True

    10. Wählen Sie im Abschnitt Datenbankberechtigungen für Datenbankberechtigungen und Grantable Permissions die Option Describe aus.

    11. Wählen Sie im Abschnitt Tabellenberechtigungen sowohl für Tabellenberechtigungen als auch für Grantable-Berechtigungen die Optionen Beschreiben, Auswählen und Ändern aus.

    12. Wählen Sie Gewähren.

Schritt 3: Lake Formation Formation-Datenbanken erstellen

In diesem Schritt erstellen Sie zwei Datenbanken und fügen den Datenbanken und bestimmten Spalten zu Testzwecken LF-Tags hinzu.

Erstellen Sie Ihre Datenbanken und Tabellen für den Zugriff auf Datenbankebene
  1. Erstellen Sie zunächst die Datenbank tag_database und die Tabelle und fügen Sie die entsprechenden source_data LF-Tags hinzu.

    1. Wählen Sie in der Lake Formation Formation-Konsole (https://console.aws.amazon.com/lakeformation/) unter Datenkatalog die Option Datenbanken aus.

    2. Wählen Sie Datenbank erstellen aus.

    3. Geben Sie unter Name tag_database ein.

    4. Geben Sie für Standort den Amazon S3 S3-Standort ein, der mit der AWS CloudFormation Vorlage erstellt wurde(s3://lf-tagbased-demo-Account-ID/tag_database/).

    5. Deaktivieren Sie die Option Nur IAM Zugriffskontrolle für neue Tabellen in dieser Datenbank verwenden.

    6. Wählen Sie Datenbank erstellen aus.

  2. Erstellen Sie als Nächstes eine neue Tabelle darintag_database.

    1. Wählen Sie auf der Seite Datenbanken die Datenbank austag_database.

    2. Wählen Sie Tabellen anzeigen und klicken Sie auf Tabelle erstellen.

    3. Geben Sie unter Name source_data ein.

    4. Für Datenbank wählen Sie die tag_database-Datenbank aus.

    5. Wählen Sie als Tabellenformat die Option AWS Glue Standardtabelle aus.

    6. Wählen Sie für Daten befinden sich in die Option Angegebener Pfad in meinem Konto aus.

    7. Geben Sie unter Pfad einschließen den Pfad ein, der von der AWS CloudFormation Vorlage tag_database erstellt wurde(s3://lf-tagbased-demoAccount-ID/tag_database/).

    8. Wählen Sie für Datenformat die Option CSV.

    9. Geben Sie unter Schema hochladen das folgende JSON Array mit Spaltenstruktur ein, um ein Schema zu erstellen:

      [ { "Name": "vendorid", "Type": "string" }, { "Name": "lpep_pickup_datetime", "Type": "string" }, { "Name": "lpep_dropoff_datetime", "Type": "string" }, { "Name": "store_and_fwd_flag", "Type": "string" }, { "Name": "ratecodeid", "Type": "string" }, { "Name": "pulocationid", "Type": "string" }, { "Name": "dolocationid", "Type": "string" }, { "Name": "passenger_count", "Type": "string" }, { "Name": "trip_distance", "Type": "string" }, { "Name": "fare_amount", "Type": "string" }, { "Name": "extra", "Type": "string" }, { "Name": "mta_tax", "Type": "string" }, { "Name": "tip_amount", "Type": "string" }, { "Name": "tolls_amount", "Type": "string" }, { "Name": "ehail_fee", "Type": "string" }, { "Name": "improvement_surcharge", "Type": "string" }, { "Name": "total_amount", "Type": "string" }, { "Name": "payment_type", "Type": "string" } ]
    10. Klicken Sie auf Hochladen. Nach dem Hochladen des Schemas sollte das Tabellenschema wie im folgenden Screenshot aussehen:

      Table schema with 18 columns showing column names and data types, all set to string.
    11. Wählen Sie Absenden aus.

  3. Als Nächstes hängen Sie LF-Tags auf Datenbankebene an.

    1. Suchen Sie auf der Seite Datenbanken nach und wählen Sie es aus. tag_database

    2. Wählen Sie im Menü Aktionen die Option LF-Tags bearbeiten aus.

    3. Wählen Sie „Neues LF-Tag zuweisen“.

    4. Wählen Sie unter Zugewiesene Schlüssel den Confidential LF-Tag aus, den Sie zuvor erstellt haben.

    5. Wählen Sie für Werte die Option. True

    6. Wählen Sie Save (Speichern) aus.

    Damit ist die LF-Tag-Zuweisung zur tag_database-Datenbank abgeschlossen.

Erstellen Sie Ihre Datenbank und Tabelle für den Zugriff auf Spaltenebene

Wiederholen Sie die folgenden Schritte, um die Datenbank col_tag_database und die Tabelle source_data_col_lvl zu erstellen und LF-Tags auf Spaltenebene anzuhängen.

  1. Wählen Sie auf der Seite Datenbanken die Option Datenbank erstellen aus.

  2. Geben Sie unter Name col_tag_database ein.

  3. Geben Sie für Standort den Amazon S3 S3-Standort ein, der mit der AWS CloudFormation Vorlage erstellt wurde(s3://lf-tagbased-demo-Account-ID/col_tag_database/).

  4. Deaktivieren Sie die Option Nur IAM Zugriffskontrolle für neue Tabellen in dieser Datenbank verwenden.

  5. Wählen Sie Datenbank erstellen aus.

  6. Wählen Sie auf der Seite Datenbanken Ihre neue Datenbank (col_tag_database) aus.

  7. Wählen Sie Tabellen anzeigen und klicken Sie auf Tabelle erstellen.

  8. Geben Sie unter Name source_data_col_lvl ein.

  9. Wählen Sie unter Datenbank Ihre neue Datenbank aus(col_tag_database).

  10. Wählen Sie als Tabellenformat die Option AWS Glue Standardtabelle aus.

  11. Wählen Sie für Daten befinden sich in die Option Angegebener Pfad in meinem Konto aus.

  12. Geben Sie den Amazon S3 S3-Pfad für ein col_tag_database(s3://lf-tagbased-demo-Account-ID/col_tag_database/).

  13. Wählen Sie für Datenformat die OptionCSV.

  14. Geben Sie Upload schema unter das folgende Schema einJSON:

    [ { "Name": "vendorid", "Type": "string" }, { "Name": "lpep_pickup_datetime", "Type": "string" }, { "Name": "lpep_dropoff_datetime", "Type": "string" }, { "Name": "store_and_fwd_flag", "Type": "string" }, { "Name": "ratecodeid", "Type": "string" }, { "Name": "pulocationid", "Type": "string" }, { "Name": "dolocationid", "Type": "string" }, { "Name": "passenger_count", "Type": "string" }, { "Name": "trip_distance", "Type": "string" }, { "Name": "fare_amount", "Type": "string" }, { "Name": "extra", "Type": "string" }, { "Name": "mta_tax", "Type": "string" }, { "Name": "tip_amount", "Type": "string" }, { "Name": "tolls_amount", "Type": "string" }, { "Name": "ehail_fee", "Type": "string" }, { "Name": "improvement_surcharge", "Type": "string" }, { "Name": "total_amount", "Type": "string" }, { "Name": "payment_type", "Type": "string" } ]
  15. Wählen Sie Upload. Nach dem Hochladen des Schemas sollte das Tabellenschema wie im folgenden Screenshot aussehen.

    Table schema with 18 columns showing column names and data types, all set to string.
  16. Wählen Sie Submit, um die Erstellung der Tabelle abzuschließen.

  17. Ordnen Sie nun das Sensitive=True LF-Tag den Spalten vendorid und zu. fare_amount

    1. Wählen Sie auf der Seite Tabellen die Tabelle aus, die Sie erstellt haben. (source_data_col_lvl)

    2. Wählen Sie im Menü Aktionen die Option Schema aus.

    3. Wählen Sie die Spalte aus vendorid und klicken Sie auf LF-Tags bearbeiten.

    4. Wählen Sie für Zugewiesene Schlüssel die Option Sensitiv aus.

    5. Wählen Sie für Werte die Option True aus.

    6. Wählen Sie Save (Speichern) aus.

  18. Ordnen Sie als Nächstes das Confidential=False LF-Tag zu. col_tag_database Dies ist erforderlichlf-data-analyst, um die Datenbank beschreiben zu können, col_tag_database wenn Sie von dort aus angemeldet sind. Amazon Athena

    1. Suchen Sie auf der Seite Datenbanken nach und wählen Siecol_tag_database.

    2. Wählen Sie im Menü Aktionen die Option LF-Tags bearbeiten aus.

    3. Wählen Sie „Neues LF-Tag zuweisen“.

    4. Wählen Sie unter Zugewiesene Schlüssel den Confidential LF-Tag aus, den Sie zuvor erstellt haben.

    5. Wählen Sie für Werte die Option. False

    6. Wählen Sie Save (Speichern) aus.

Schritt 4: Erteilen Sie Tabellenberechtigungen

Erteilen Sie Datenanalysten Berechtigungen für die Nutzung der Datenbanken tag_database und der Tabelle col_tag_database mithilfe von LF-Tags Confidential und. Sensitive

  1. Gehen Sie wie folgt vor, um dem lf-data-analyst Benutzer Berechtigungen für die Objekte zu erteilen, die mit dem LF-Tag Confidential=True (Database:TAG_Database) verknüpft sind, sodass er über die Datenbank und Berechtigungen für Tabellen verfügt. Describe Select

    1. Melden Sie sich bei der Lake Formation Formation-Konsole unter https://console.aws.amazon.com/lakeformation/as anlf-data-engineer.

    2. Wählen Sie unter Berechtigungen die Option Data Lake-Berechtigungen aus.

    3. Wählen Sie Gewähren.

    4. Wählen Sie unter Principals IAM Benutzer und Rollen aus.

    5. Wählen lf-data-analyst Sie für IAMBenutzer und Rollen aus.

    6. Wählen Sie unter LF-Tags oder Katalogressourcen die Option Ressourcen aus, denen LF-Tags zugeordnet sind.

    7. Wählen Sie LF-Tag hinzufügen.

    8. Wählen Sie als Schlüssel. Confidential

    9. Wählen Sie für Werte die OptionTrue.

    10. Wählen Sie für Datenbankberechtigungen die Option ausDescribe.

    11. Wählen Sie für Tabellenberechtigungen die Option Select and Describe aus.

    12. Wählen Sie Gewähren.

  2. Wiederholen Sie anschließend die Schritte, um Datenanalysten Berechtigungen für den LF-Tag-Ausdruck für zu erteilen. Confidential=False Dieses LF-Tag wird zur Beschreibung der Tabelle col_tag_database und der Tabelle verwendet, source_data_col_lvl wenn Sie über Amazon Athena lf-data-analyst angemeldet sind.

    1. Melden Sie sich bei der Lake Formation Formation-Konsole unter https://console.aws.amazon.com/lakeformation/as anlf-data-engineer.

    2. Wählen Sie auf der Seite Datenbanken die Datenbank auscol_tag_database.

    3. Wählen Sie Aktion und Grant aus.

    4. Wählen Sie unter Principals IAM Benutzer und Rollen aus.

    5. Wählen lf-data-analyst Sie für IAMBenutzer und Rollen aus.

    6. Wählen Sie Ressourcen aus, denen LF-Tags zugeordnet sind.

    7. Wählen Sie LF-Tag hinzufügen.

    8. Wählen Sie als Schlüssel. Confidential

    9. Wählen Sie für Werte die OptionFalse.

    10. Wählen Sie für Datenbankberechtigungen die OptionDescribe.

    11. Wählen Sie für Tabellenberechtigungen nichts aus.

    12. Wählen Sie Gewähren.

  3. Wiederholen Sie anschließend die Schritte, um Datenanalysten Berechtigungen für den LF-Tag-Ausdruck für Confidential=False und zu erteilen. Sensitive=True Dieses LF-Tag wird zur Beschreibung der col_tag_database und der Tabelle source_data_col_lvl (auf Spaltenebene) verwendet, wenn Sie über Amazon Athena angemeldet sind. lf-data-analyst

    1. Melden Sie sich bei der Lake Formation Formation-Konsole unter https://console.aws.amazon.com/lakeformation/as anlf-data-engineer.

    2. Wählen Sie auf der Seite Datenbanken die Datenbank auscol_tag_database.

    3. Wählen Sie Aktion und Grant aus.

    4. Wählen Sie unter Principals IAM Benutzer und Rollen aus.

    5. Wählen lf-data-analyst Sie für IAMBenutzer und Rollen aus.

    6. Wählen Sie Ressourcen aus, denen LF-Tags zugeordnet sind.

    7. Wählen Sie LF-Tag hinzufügen.

    8. Wählen Sie als Schlüssel. Confidential

    9. Wählen Sie für Werte die OptionFalse.

    10. Wählen Sie LF-Tag hinzufügen.

    11. Wählen Sie als Schlüssel. Sensitive

    12. Wählen Sie für Werte die OptionTrue.

    13. Wählen Sie für Datenbankberechtigungen die OptionDescribe.

    14. Wählen Sie für Tabellenberechtigungen die Option Select und ausDescribe.

    15. Wählen Sie Gewähren.

Schritt 5: Führen Sie eine Abfrage in Amazon Athena aus, um die Berechtigungen zu überprüfen

Verwenden Sie für diesen Schritt Amazon Athena, um SELECT Abfragen für die beiden Tabellen (source_data and source_data_col_lvl) auszuführen. Verwenden Sie den Amazon S3 S3-Pfad als Speicherort für die Abfrageergebnisse(s3://lf-tagbased-demo-Account-ID/athena-results/).

  1. Melden Sie sich bei der Athena-Konsole unter https://console.aws.amazon.com/athena/as lf-data-analyst an.

  2. Wählen Sie im Athena-Abfrage-Editor tag_database im linken Bereich.

  3. Wählen Sie das Symbol für zusätzliche Menüoptionen (drei vertikale Punkte) neben source_data und wählen Sie „Tabellenvorschau“.

  4. Wählen Sie Abfrage ausführen.

    Die Ausführung der Abfrage sollte einige Minuten dauern. Die Abfrage zeigt alle Spalten in der Ausgabe an, da das LF-Tag auf Datenbankebene verknüpft ist und die source_data Tabelle das automatisch LF-tag von der Datenbank übernommen hat. tag_database

  5. Führen Sie eine weitere Abfrage mit col_tag_database und aus. source_data_col_lvl

    Die zweite Abfrage gibt die beiden Spalten zurück, die als Non-Confidential und gekennzeichnet wurdenSensitive.

  6. Sie können auch überprüfen, ob das Verhalten der Tag-basierten Zugriffsrichtlinie von Lake Formation in Spalten angezeigt wird, für die Sie keine Richtlinienberechtigungen haben. Wenn eine Spalte ohne Tags aus der Tabelle ausgewählt wirdsource_data_col_lvl, gibt Athena einen Fehler zurück. Sie können beispielsweise die folgende Abfrage ausführen, um Spalten ohne Tags auszuwählen: geolocationid

    SELECT geolocationid FROM "col_tag_database"."source_data_col_lvl" limit 10;

Schritt 6: Ressourcen AWS bereinigen

Um zu verhindern, dass Ihnen unerwünschte Kosten entstehen AWS-Konto, können Sie die AWS Ressourcen löschen, die Sie für dieses Tutorial verwendet haben.

  1. Melden Sie sich bei der Lake Formation Console an lf-data-engineer und löschen Sie die Datenbanken tag_database undcol_tag_database.

  2. Melden Sie sich als Nächstes an lf-data-steward und bereinigen Sie alle LF-Tag-Berechtigungen, Datenberechtigungen und Datenspeicherberechtigungen, die oben gewährt wurden und gewährt lf-data-engineer wurden. lf-data-analyst.

  3. Melden Sie sich bei der Amazon S3-Konsole als Kontoinhaber mit den IAM Anmeldeinformationen an, die Sie für die Bereitstellung des AWS CloudFormation Stacks verwendet haben.

  4. Löschen Sie die folgenden Buckets:

    • lf-tagbased-demo-accesslogs-acct-id

    • lf-tagbased-demo-acct-id

  5. Melden Sie sich unter https://console.aws.amazon.com/cloudformation bei der AWS CloudFormation Konsole an und löschen Sie den von Ihnen erstellten Stack. Warten Sie, bis sich der Stack-Status auf ändert. DELETE_COMPLETE