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.
Kaskadierende kontoübergreifende Berechtigungen
Gehen Sie wie folgt vor, um die kontoübergreifende Berechtigungskaskadierung einzurichten und zu testen:
-
Erstellen Sie mit der Lake Formation Formation-Konsole ein LF-Tag:
Tag-Schlüssel:
c175912681300719Tag-Werte:
[all,public]
-
Ordnen Sie dem Tag und dem Wert eine Tabelle zu:
Schlüssel:
c175912681300719Value (Wert):
all
-
Erteilen Sie eine kontoübergreifende Tag-Policy-Berechtigung. Erteilen Sie die
SELECTErlaubnis für die Tag-Richtlinie von Kontozu Konto111122223333:444455556666aws lakeformation grant-permissions \ --cli-input-json '{ "Principal": { "DataLakePrincipalIdentifier": "444455556666" }, "Resource": { "LFTagPolicy": { "CatalogId": "111122223333", "ResourceType": "TABLE", "Expression": [{ "TagKey": "c175912681300719", "TagValues": [ "all" ] }] } }, "Permissions": [ "SELECT" ] }'Der Administrator des Verbraucherkontos (
444455556666) kann auf Tabellen zugreifen, die mit dem Tag gekennzeichnet sind. Das Verbraucherkonto kann keine Zugriffsberechtigungen an andere Benutzer mit einem der Tag-Werte kaskadieren.c175912681300719:all -
Erteilen Sie die
DESCRIBEErlaubnis. Der Administrator des Produzentenkontos erteiltDESCRIBEfür den Tag-Schlüssel und beide Werte für das Kundenkonto:aws lakeformation grant-permissions \ --cli-input-json '{ "Principal": { "DataLakePrincipalIdentifier": "444455556666" }, "Resource": { "LFTag": { "CatalogId": "111122223333", "TagKey": "c175912681300719", "TagValues": ["all","public"] } }, "Permissions": [ "DESCRIBE" ] }'Der Administrator des Verbraucherkontos versucht, die Rechte mithilfe des Tags
und des Werts "c175912681300719all" an andere Benutzer weiterzugeben (identische Richtlinie):aws lakeformation grant-permissions --region us-east-1 --cli-input-json '{ "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::444455556666:role/AccessAnalyzerTrustedService" }, "Resource": { "LFTagPolicy": { "CatalogId": "111122223333", "ResourceType": "TABLE", "Expression": [ { "TagKey": "c175912681300719", "TagValues": [ "all" ] } ] } }, "Permissions": [ "SELECT" ] }'Ergebnis: AccessDeniedException
Die Gewährung schlägt fehl, weil Lake Formation feststellt, dass die LF-Tag-Richtlinie genau der LF-Tag-Richtlinie entspricht, die vom Produzentenkonto verwendet wird, um Ressourcen mit dem Verbraucherkonto zu teilen, und nur prüft, ob der Benutzer über erteilbare Berechtigungen verfügt, nicht Regel #2 (DESCRIBE-Berechtigungen).
Grant mit mehreren Tag-Werten:
aws lakeformation grant-permissions --region us-east-1 --cli-input-json '{ "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::444455556666:role/AccessAnalyzerTrustedService" }, "Resource": { "LFTagPolicy": { "CatalogId": "111122223333", "ResourceType": "TABLE", "Expression": [ { "TagKey": "c175912681300719", "TagValues": [ "all","public" ] } ] } }, "Permissions": [ "SELECT" ] }'Ergebnis — Erfolg — Die Richtlinie ist nicht identisch, daher gilt Regel #2 und die DESCRIBE-Berechtigungen sind ausreichend.
Der Verbraucher versucht,
publiceinen einzigen Nutzen zu erzielen — erfolgreich:aws lakeformation grant-permissions --cli-input-json '{ "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::444455556666:role/AccessAnalyzerTrustedService" }, "Resource": { "LFTagPolicy": { "CatalogId": "111122223333", "ResourceType": "TABLE", "Expression": [ { "TagKey": "c175912681300719", "TagValues": [ "public" ] } ] } }, "Permissions": [ "SELECT" ] }'Die Richtlinie ist nicht identisch, daher gilt Regel #2.