Lake-Formation-Personas und IAM-Berechtigungen – Referenz - 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.

Lake-Formation-Personas und IAM-Berechtigungen – Referenz

In diesem Abschnitt werden einige vorgeschlagene Lake-Formation-Personas und ihre vorgeschlagenen AWS Identity and Access Management (IAM)-Berechtigungen aufgeführt. Weitere Informationen zu Lake-Formation-Berechtigungen finden Sie unter Referenz zu Lake-Formation-Berechtigungen.

AWS Lake Formation Personas

In der folgenden Tabelle sind die vorgeschlagenen AWS Lake Formation Personas aufgeführt.

Lake-Formation-Personas
Persona Beschreibung
IAM-Administrator (Superuser) (Erforderlich) Benutzer, der IAM-Benutzer und -Rollen erstellen kann. Hat die -AdministratorAccess AWS verwaltete Richtlinie. Hat alle Berechtigungen für alle Lake-Formation-Ressourcen. Kann Data-Lake-Administratoren hinzufügen. Lake-Formation-Berechtigungen können nicht erteilt werden, wenn nicht auch ein Data-Lake-Administrator festgelegt ist.
Data-Lake-Administrator (Erforderlich) Benutzer, der Amazon S3-Speicherorte registrieren, auf den Data Catalog zugreifen, Datenbanken erstellen, Workflows erstellen und ausführen, anderen Benutzern Lake-Formation-Berechtigungen erteilen und AWS CloudTrail Protokolle anzeigen kann. Hat weniger IAM-Berechtigungen als der IAM-Administrator, aber genügend, um den Data Lake zu verwalten. Andere Data-Lake-Administratoren können nicht hinzugefügt werden.
Schreibgeschützter Administrator (Optional) Benutzer, der Prinzipale, Data-Catalog-Ressourcen, -Berechtigungen und - AWS CloudTrail Protokolle anzeigen kann, ohne über die Berechtigungen zum Vornehmen von Aktualisierungen verfügen zu müssen.
Dateningenieur (Optional) Benutzer, der Datenbanken erstellen, Crawler und Workflows erstellen und ausführen und Lake-Formation-Berechtigungen für die Data-Catalog-Tabellen erteilen kann, die die Crawler und Workflows erstellen. Wir empfehlen Ihnen, alle Datenbankersteller für Dateningenieure zu machen. Weitere Informationen finden Sie unter Erstellen einer Datenbank.
Datenanalyst (Optional) Benutzer, der Abfragen für den Data Lake ausführen kann, z. B. Amazon Athena. Hat nur genügend Berechtigungen zum Ausführen von Abfragen.
Workflow-Rolle (Erforderlich) Rolle, die einen Workflow im Namen eines Benutzers ausführt. Sie geben diese Rolle an, wenn Sie einen Workflow aus einem Blueprint erstellen.

AWS Von verwaltete Richtlinien für Lake Formation

Sie können die AWS Identity and Access Management (IAM)-Berechtigungen erteilen, die für die Arbeit mit erforderlich sind, AWS Lake Formation indem Sie AWS verwaltete Richtlinien und Inline-Richtlinien verwenden. Die folgenden AWS verwalteten Richtlinien sind für Lake Formation verfügbar.

AWS Von verwaltete Richtlinie:AWSLakeFormationDataAdmin

AWSLakeFormationDataAdmin Die -Richtlinie gewährt administrativen Zugriff auf AWS Lake Formation und verwandte -Services, z. B. AWS Glue zur Verwaltung von Data Lakes.

Sie können AWSLakeFormationDataAdmin an Ihre Benutzer, Gruppen und Rollen anfügen.

Berechtigungsdetails

  • CloudTrail – Ermöglicht es Prinzipalen, AWS CloudTrail Protokolle anzuzeigen. Dies ist erforderlich, um alle Fehler in der Einrichtung des Data Lake zu überprüfen.

  • Glue – Ermöglicht es Prinzipalen, Metadatentabellen und Datenbanken im Data Catalog anzuzeigen, zu erstellen und zu aktualisieren. Dazu gehören API-Operationen, die mit Get, List, Create, UpdateDelete, und beginnenSearch. Dies ist erforderlich, um die Metadaten der Data-Lake-Tabellen zu verwalten.

  • IAM – Ermöglicht es Prinzipalen, Informationen über IAM-Benutzer, -Rollen und -Richtlinien abzurufen, die den Rollen zugeordnet sind. Dies ist erforderlich, damit der Datenadministrator IAM-Benutzer und -Rollen überprüfen und auflisten kann, um Lake-Formation-Berechtigungen zu erteilen.

  • Lake Formation – Gewährt Data-Lake-Administratoren die erforderlichen Lake-Formation-Berechtigungen zum Verwalten von Data Lakes.

  • S3 – Ermöglicht es Prinzipalen, Informationen zu Amazon S3-Buckets und ihren Speicherorten abzurufen, um den Datenspeicherort für Data Lakes einzurichten.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lakeformation:*", "cloudtrail:DescribeTrails", "cloudtrail:LookupEvents", "glue:GetDatabase", "glue:GetDatabases", "glue:CreateDatabase", "glue:UpdateDatabase", "glue:DeleteDatabase", "glue:GetConnections", "glue:SearchTables", "glue:GetTable", "glue:CreateTable", "glue:UpdateTable", "glue:DeleteTable", "glue:GetTableVersions", "glue:GetPartitions", "glue:GetTables", "glue:GetWorkflow", "glue:ListWorkflows", "glue:BatchGetWorkflows", "glue:DeleteWorkflow", "glue:GetWorkflowRuns", "glue:StartWorkflowRun", "glue:GetWorkflow", "s3:ListBucket", "s3:GetBucketLocation", "s3:ListAllMyBuckets", "s3:GetBucketAcl", "iam:ListUsers", "iam:ListRoles", "iam:GetRole", "iam:GetRolePolicy" ], "Resource": "*" }, { "Effect": "Deny", "Action": [ "lakeformation:PutDataLakeSettings" ], "Resource": "*" } ] }
Anmerkung

Die AWSLakeFormationDataAdmin Richtlinie gewährt Data Lake-Administratoren nicht alle erforderlichen Berechtigungen. Zusätzliche Berechtigungen sind erforderlich, um Workflows zu erstellen und auszuführen und Standorte mit der serviceverknüpften Rolle zu registrierenAWSServiceRoleForLakeFormationDataAccess. Weitere Informationen finden Sie unter Erstellen eines Data-Lake-Administrators und Verwenden von serviceverknüpften Rollen für Lake Formation.

AWS Von verwaltete Richtlinie:AWSLakeFormationCrossAccountManager

AWSLakeFormationCrossAccountManager Die -Richtlinie bietet kontoübergreifenden Zugriff auf - AWS Glue Ressourcen über Lake Formation und gewährt Lesezugriff auf andere erforderliche Services wie AWS Organizations und AWS RAM.

Sie können AWSLakeFormationCrossAccountManager an Ihre Benutzer, Gruppen und Rollen anfügen.

Berechtigungsdetails

Diese Richtlinie umfasst die folgenden Berechtigungen.

  • Glue – Ermöglicht es Prinzipalen, die Data-Catalog-Ressourcenrichtlinie für die Zugriffskontrolle festzulegen oder zu löschen.

  • Organizations – Ermöglicht es Prinzipalen, Konto- und Organisationseinheitsinformationen (OU) für eine Organisation abzurufen.

  • ram:CreateResourceShare – Ermöglicht es Prinzipalen, eine Ressourcenfreigabe zu erstellen.

  • ram:UpdateResourceShare – Ermöglicht es Prinzipalen, einige Eigenschaften der angegebenen Ressourcenfreigabe zu ändern.

  • ram:DeleteResourceShare – Ermöglicht es Prinzipalen, die angegebene Ressourcenfreigabe zu löschen.

  • ram:AssociateResourceShare – Ermöglicht es Prinzipalen, die angegebene Liste von Prinzipalen und Ressourcen zu einer Ressourcenfreigabe hinzuzufügen.

  • ram:DisassociateResourceShare – Ermöglicht es Prinzipalen, die angegebenen Prinzipale oder Ressourcen aus der Teilnahme an der angegebenen Ressourcenfreigabe zu entfernen.

  • ram:GetResourceShares– Ermöglicht es Prinzipalen, Details zu den Ressourcenfreigaben abzurufen, die Sie besitzen oder die für Sie freigegeben sind.

  • ram:RequestedResourceType – Ermöglicht es Prinzipalen, den Ressourcentyp (Datenbank, Tabelle oder Katalog) abzurufen.

  • AssociateResourceSharePermission – Ermöglicht es Prinzipalen, die AWS RAM Berechtigung für einen Ressourcentyp, der in einer Ressourcenfreigabe enthalten ist, hinzuzufügen oder zu ersetzen. Sie können jedem Ressourcentyp in der Ressourcenfreigabe genau eine Berechtigung zugeordnet haben.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ram:CreateResourceShare" ], "Resource": "*", "Condition": { "StringLikeIfExists": { "ram:RequestedResourceType": [ "glue:Table", "glue:Database", "glue:Catalog" ] } } }, { "Effect": "Allow", "Action": [ "ram:UpdateResourceShare", "ram:DeleteResourceShare", "ram:AssociateResourceShare", "ram:DisassociateResourceShare", "ram:GetResourceShares" ], "Resource": "*", "Condition": { "StringLike": { "ram:ResourceShareName": [ "LakeFormation*" ] } } }, { "Effect": "Allow", "Action": [ "ram:AssociateResourceSharePermission" ], "Resource": "*", "Condition": { "StringLike": { "ram:PermissionArn": [ "arn:aws:ram::aws:permission/AWSRAMLFEnabled*" ] } } }, { "Effect": "Allow", "Action": [ "glue:PutResourcePolicy", "glue:DeleteResourcePolicy", "organizations:DescribeOrganization", "organizations:DescribeAccount", "ram:Get*", "ram:List*" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "organizations:ListRoots", "organizations:ListAccountsForParent", "organizations:ListOrganizationalUnitsForParent" ], "Resource": "*" } ] }

AWS Von verwaltete Richtlinie:AWSGlueConsoleFullAccess

AWSGlueConsoleFullAccess Die -Richtlinie gewährt vollen Zugriff auf - AWS Glue Ressourcen, wenn eine Identität, der die Richtlinie angefügt ist, die verwendet AWS Management Console. Wenn Sie die Namenskonvention für Ressourcen befolgen, die in dieser Richtlinie angegeben sind, haben Benutzer alle Konsolenfunktionalitäten. Diese Richtlinie wird typischerweise mit Benutzern der - AWS Glue Konsole verknüpft.

Darüber hinaus übernehmen AWS Glue und Lake Formation die Servicerolle, AWSGlueServiceRole um den Zugriff auf verwandte -Services zu ermöglichen, einschließlich Amazon Elastic Compute Cloud (Amazon EC2), Amazon Simple Storage Service (Amazon S3) und Amazon CloudWatch.

AWS managed policy:LakeFormationDataAccessServiceRolePolicy

Diese Richtlinie ist an eine serviceverknüpfte Rolle namens angehängtServiceRoleForLakeFormationDataAccess, die es dem Service ermöglicht, Aktionen für Ressourcen auf Ihre Anfrage durchzuführen. Sie können diese Richtlinie nicht an Ihre IAM-Identitäten anfügen.

Diese Richtlinie ermöglicht es den integrierten Lake-Formation- AWS Services wie Amazon Athena oder Amazon Redshift, die serviceverknüpfte Rolle zu verwenden, um Amazon S3-Ressourcen zu erkennen.

Weitere Informationen finden Sie unter Verwenden von serviceverknüpften Rollen für Lake Formation.

Berechtigungsdetails

Diese Richtlinie enthält die folgende Berechtigung.

  • s3:ListAllMyBuckets – Gibt eine Liste aller Buckets zurück, die dem authentifizierten Sender der Anforderung gehören.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "LakeFormationDataAccessServiceRolePolicy", "Effect": "Allow", "Action": [ "s3:ListAllMyBuckets" ], "Resource": [ "arn:aws:s3:::*" ] } ] }
Aktualisierungen von Lake Formation für - AWS verwaltete Richtlinien

Anzeigen von Details zu Aktualisierungen für - AWS verwaltete Richtlinien für Lake Formation, seit dieser Service mit der Verfolgung dieser Änderungen begonnen hat.

Änderung Beschreibung Datum
Lake Formation hat die LakeFormationDataAccessServiceRolePolicy Richtlinie aktualisiert. Lake Formation hat die LakeFormationDataAccessServiceRolePolicy Richtlinie durch Hinzufügen eines Sid-Elements zur Richtlinienanweisung erweitert. Februar 2024
Lake Formation hat die AWSLakeFormationCrossAccountManager Richtlinie aktualisiert. Lake Formation hat die AWSLakeFormationCrossAccountManager Richtlinie erweitert, indem eine neue Berechtigung hinzugefügt wurde, um die kontoübergreifende Datenfreigabe im Hybrid-Zugriffsmodus zu aktivieren. Oktober 2023
Lake Formation hat die AWSLakeFormationCrossAccountManager Richtlinie aktualisiert. Lake Formation hat die AWSLakeFormationCrossAccountManager Richtlinie erweitert, um nur eine Ressourcenfreigabe pro Empfängerkonto zu erstellen, wenn die Ressource zum ersten Mal freigegeben wird. Alle Ressourcen, die danach mit demselben Konto geteilt werden, werden an dieselbe Ressourcenfreigabe angehängt. 6. Mai 2022
Lake Formation hat mit der Verfolgung von Änderungen begonnen. Lake Formation hat mit der Verfolgung von Änderungen für seine AWS -verwalteten Richtlinien begonnen. 6. Mai 2022

Personas vorgeschlagene Berechtigungen

Im Folgenden finden Sie die vorgeschlagenen Berechtigungen für jede Persona. Der IAM-Administrator ist nicht enthalten, da dieser Benutzer über alle Berechtigungen für alle Ressourcen verfügt.

Data-Lake-Administratorberechtigungen

Wichtig

Ersetzen Sie in den folgenden Richtlinien <account-id> durch eine gültige AWS Kontonummer und <workflow_role> durch den Namen einer Rolle, die über Berechtigungen zum Ausführen eines Workflows verfügt, wie in definiertWorkflow-Rollenberechtigungen.

Richtlinientyp Richtlinie
AWS Von verwaltete Richtlinien
  • AWSLakeFormationDataAdmin

  • LakeFormationDataAccessServiceRolePolicy (serviceverknüpfte Rollenrichtlinie)

  • AWSGlueConsoleFullAccess (Optional)

  • CloudWatchLogsReadOnlyAccess (Optional)

  • AWSLakeFormationCrossAccountManager (Optional)

  • AmazonAthenaFullAccess (Optional)

Informationen zu den optionalen AWS verwalteten Richtlinien finden Sie unter Erstellen eines Data-Lake-Administrators.

Inline-Richtlinie (zum Erstellen der serviceverknüpften Lake-Formation-Rolle)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "*", "Condition": { "StringEquals": { "iam:AWSServiceName": "lakeformation.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "iam:PutRolePolicy" ], "Resource": "arn:aws:iam::<account-id>:role/aws-service-role/lakeformation.amazonaws.com/AWSServiceRoleForLakeFormationDataAccess" } ] }
(Optional) Inline-Richtlinie (Passrollenrichtlinie für die Workflow-Rolle). Dies ist nur erforderlich, wenn der Data-Lake-Administrator Workflows erstellt und ausführt.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "PassRolePermissions", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::<account-id>:role/<workflow_role>" ] } ] }
(Optional) Inline-Richtlinie (wenn Ihr Konto kontoübergreifende Lake-Formation-Berechtigungen erteilt oder erhält). Diese Richtlinie dient zum Annehmen oder Ablehnen von Einladungen zur gemeinsamen Nutzung von AWS RAM Ressourcen und zum Aktivieren der Erteilung von kontoübergreifenden Berechtigungen für Organisationen. ram:EnableSharingWithAwsOrganization ist nur für Data-Lake-Administratoren im AWS Organizations Verwaltungskonto erforderlich.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ram:AcceptResourceShareInvitation", "ram:RejectResourceShareInvitation", "ec2:DescribeAvailabilityZones", "ram:EnableSharingWithAwsOrganization" ], "Resource": "*" } ] }

Schreibgeschützte Administratorberechtigungen

Richtlinientyp Richtlinie
Inline-Richtlinie (grundlegend)
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "lakeformation:GetEffectivePermissionsForPath", "lakeformation:ListPermissions", "lakeformation:ListDataCellsFilter", "lakeformation:GetDataCellsFilter", "lakeformation:SearchDatabasesByLFTags", "lakeformation:SearchTablesByLFTags", "lakeformation:GetLFTag", "lakeformation:ListLFTags", "lakeformation:GetResourceLFTags", "lakeformation:ListLakeFormationOptin", "cloudtrail:DescribeTrails", "cloudtrail:LookupEvents", "glue:GetDatabase", "glue:GetDatabases", "glue:GetConnections", "glue:SearchTables", "glue:GetTable", "glue:GetTableVersions", "glue:GetPartitions", "glue:GetTables", "glue:GetWorkflow", "glue:ListWorkflows", "glue:BatchGetWorkflows", "glue:GetWorkflowRuns", "glue:GetWorkflow", "s3:ListBucket", "s3:GetBucketLocation", "s3:ListAllMyBuckets", "s3:GetBucketAcl", "iam:ListUsers", "iam:ListRoles", "iam:GetRole", "iam:GetRolePolicy" ], "Resource":"*" }, { "Effect":"Deny", "Action":[ "lakeformation:PutDataLakeSettings" ], "Resource":"*" } ] }

Data-Engineering-Berechtigungen

Wichtig

Ersetzen Sie in den folgenden Richtlinien <account-id> durch eine gültige AWS Kontonummer und <workflow_role> durch den Namen der Workflow-Rolle.

Richtlinientyp Richtlinie
AWS Von verwaltete Richtlinie AWSGlueConsoleFullAccess
Inline-Richtlinie (grundlegend)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lakeformation:GetDataAccess", "lakeformation:GrantPermissions", "lakeformation:RevokePermissions", "lakeformation:BatchGrantPermissions", "lakeformation:BatchRevokePermissions", "lakeformation:ListPermissions", "lakeformation:AddLFTagsToResource", "lakeformation:RemoveLFTagsFromResource", "lakeformation:GetResourceLFTags", "lakeformation:ListLFTags", "lakeformation:GetLFTag", "lakeformation:SearchTablesByLFTags", "lakeformation:SearchDatabasesByLFTags", "lakeformation:GetWorkUnits", "lakeformation:GetWorkUnitResults", "lakeformation:StartQueryPlanning", "lakeformation:GetQueryState", "lakeformation:GetQueryStatistics" ], "Resource": "*" } ] }
Inline-Richtlinie (für Operationen in geregelten Tabellen, einschließlich Operationen innerhalb von Transaktionen)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lakeformation:StartTransaction", "lakeformation:CommitTransaction", "lakeformation:CancelTransaction", "lakeformation:ExtendTransaction", "lakeformation:DescribeTransaction", "lakeformation:ListTransactions", "lakeformation:GetTableObjects", "lakeformation:UpdateTableObjects", "lakeformation:DeleteObjectsOnCancel" ], "Resource": "*" } ] }
Inline-Richtlinie (für die Metadaten-Zugriffskontrolle mithilfe der tagbasierten LF-TBAC-Methode (Lake Formation))
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lakeformation:AddLFTagsToResource", "lakeformation:RemoveLFTagsFromResource", "lakeformation:GetResourceLFTags", "lakeformation:ListLFTags", "lakeformation:GetLFTag", "lakeformation:SearchTablesByLFTags", "lakeformation:SearchDatabasesByLFTags" ], "Resource": "*" } ] }
Inline-Richtlinie (Passrollenrichtlinie für die Workflow-Rolle)
{ "Version": "2012-10-17", "Statement": [ { "Sid": "PassRolePermissions", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::<account-id>:role/<workflow_role>" ] } ] }

Berechtigungen für Datenanalysten

Richtlinientyp Richtlinie
AWS Von verwaltete Richtlinie AmazonAthenaFullAccess
Inline-Richtlinie (grundlegend)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lakeformation:GetDataAccess", "glue:GetTable", "glue:GetTables", "glue:SearchTables", "glue:GetDatabase", "glue:GetDatabases", "glue:GetPartitions", "lakeformation:GetResourceLFTags", "lakeformation:ListLFTags", "lakeformation:GetLFTag", "lakeformation:SearchTablesByLFTags", "lakeformation:SearchDatabasesByLFTags" ], "Resource": "*" } ] }
(Optional) Inline-Richtlinie (für Operationen in geregelten Tabellen, einschließlich Operationen innerhalb von Transaktionen)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lakeformation:StartTransaction", "lakeformation:CommitTransaction", "lakeformation:CancelTransaction", "lakeformation:ExtendTransaction", "lakeformation:DescribeTransaction", "lakeformation:ListTransactions", "lakeformation:GetTableObjects", "lakeformation:UpdateTableObjects", "lakeformation:DeleteObjectsOnCancel" ], "Resource": "*" } ] }

Workflow-Rollenberechtigungen

Diese Rolle verfügt über die erforderlichen Berechtigungen zum Ausführen eines Workflows. Sie geben eine Rolle mit diesen Berechtigungen an, wenn Sie einen Workflow erstellen.

Wichtig

Ersetzen Sie in den folgenden Richtlinien <region> durch eine gültige AWS Regionskennung (z. B. us-east-1), <account-id> durch eine gültige AWS Kontonummer, <workflow_role> durch den Namen der Workflow-Rolle und <your-s3-cloudtrail-bucket> durch den Amazon S3-Pfad zu Ihren AWS CloudTrail Protokollen.

Richtlinientyp Richtlinie
AWS Von verwaltete Richtlinie AWSGlueServiceRole
Inline-Richtlinie (Datenzugriff)
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Lakeformation", "Effect": "Allow", "Action": [ "lakeformation:GetDataAccess", "lakeformation:GrantPermissions" ], "Resource": "*" } ] }
Inline-Richtlinie (Passrollenrichtlinie für die Workflow-Rolle)
{ "Version": "2012-10-17", "Statement": [ { "Sid": "PassRolePermissions", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::<account-id>:role/<workflow_role>" ] } ] }
Inline-Richtlinie (zum Erfassen von Daten außerhalb des Data Lake, z. B. AWS CloudTrail Protokolle)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["s3:GetObject", "s3:ListBucket"], "Resource": ["arn:aws:s3:::<your-s3-cloudtrail-bucket>/*"] } ] }