View a markdown version of this page

Cambia il controllo degli accessi da AWS Lake Formation a IAM - AWS Lake Formation

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Cambia il controllo degli accessi da AWS Lake Formation a IAM

Questa sezione descrive il flusso di lavoro per modificare il controllo degli accessi dalle AWS Lake Formation concessioni ai privilegi IAM per le tabelle Amazon S3 integrate con. AWS Glue Data Catalog

Importante

La modifica del controllo degli accessi dalle AWS Lake Formation sovvenzioni a IAM revocherà tutti gli accessi esistenti basati su Lake Formation alle risorse S3 Tables. Dopo aver completato la Fase 2, gli utenti e i ruoli che in precedenza avevano avuto accesso ai dati tramite le sovvenzioni di Lake Formation perderanno immediatamente l'accesso. È necessario concedere l'accesso a IAM nella fase 1 prima di aggiornare il catalogo. Pianifica questa migrazione durante una finestra di manutenzione e coordinati con il tuo team addetto ai dati.

Importante

I controlli di accesso dettagliati, come l'accesso a livello di colonna e i filtri delle celle di dati, con oggetti Data Catalog sono disponibili solo quando vengono utilizzati. AWS Lake Formation Prima di procedere alla migrazione dei controlli di accesso da IAM, verifica AWS Lake Formation le sovvenzioni esistenti di Lake Formation utilizzando aws lakeformation list-permissions e determina se policy IAM equivalenti possono fornire l'accesso di cui i tuoi utenti hanno bisogno. Qualsiasi ente che si sia basato su sovvenzioni dettagliate di Lake Formation richiederà l'accesso IAM completo a livello di tabella dopo la migrazione del controllo degli accessi.

Prerequisiti

Prima di iniziare, assicurati quanto segue:

  • Hai identificato tutte le sovvenzioni di Lake Formation attualmente in vigore per le risorse in fase di migrazione. Corri aws lakeformation list-permissions --resource-type TABLE a esaminarle.

  • Hai preparato delle policy IAM che forniscono un accesso equivalente a tutti i principali soggetti interessati.

  • Il ruolo IAM registrato presso Lake Formation è ancora valido lakeformation:GetDataAccess (necessario durante il periodo di transizione ibrida).

Usando AWS CLI

  1. Fase 1: concedere le autorizzazioni IAM ai dirigenti

    Allega le policy IAM agli utenti o ai ruoli che necessitano di accesso. La policy deve includere sia le autorizzazioni per i AWS Glue metadati che le autorizzazioni per i dati di S3 Tables.

    Nota

    La politica di esempio seguente fornisce solo l'accesso in lettura.

    aws iam put-user-policy \ --user-name GlueIAMAccessUser \ --policy-name S3TablesIAMAccessPolicy \ --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Sid": "GlueMetadataAccess", "Effect": "Allow", "Action": [ "glue:GetCatalog", "glue:GetDatabase", "glue:GetTable" ], "Resource": [ "arn:aws:glue:us-east-1:AWSAccountID:catalog/s3tablescatalog", "arn:aws:glue:us-east-1:AWSAccountID:database/s3tablescatalog/table-bucket-name/namespace", "arn:aws:glue:us-east-1:AWSAccountID:table/s3tablescatalog/table-bucket-name/namespace/*" ] }, { "Sid": "S3TablesDataAccess", "Effect": "Allow", "Action": [ "s3tables:GetTableBucket", "s3tables:GetTable", "s3tables:GetTableMetadataLocation", "s3tables:GetTableData" ], "Resource": [ "arn:aws:s3tables:us-east-1:AWSAccountID:bucket/table-bucket-name", "arn:aws:s3tables:us-east-1:AWSAccountID:bucket/table-bucket-name/table/*" ] } ] }'

    Verifica che tutti gli utenti e i ruoli interessati possano accedere alle tabelle previste utilizzando le proprie credenziali IAM prima di procedere.

  2. Passaggio 2: aggiorna il catalogo per ripristinare le autorizzazioni predefinite di IAM

    Aggiorna il catalogo in questo modo CreateDatabaseDefaultPermissions e CreateTableDefaultPermissions concedi ALL aIAM_ALLOWED_PRINCIPALS. Imposta Accept in OverwriteChildResourcePermissionsWithDefault modo che la modifica si propaghi a tutte le risorse secondarie esistenti, non solo a quelle appena create.

    aws glue update-catalog \ --catalog-id "s3tablescatalog" \ --catalog-input '{ "FederatedCatalog": { "Identifier": "arn:aws:s3tables:us-east-1:AWSAccountID:bucket/*", "ConnectionName": "aws:s3tables" }, "CreateDatabaseDefaultPermissions": [{ "Principal": {"DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS"}, "Permissions": ["ALL"] }], "CreateTableDefaultPermissions": [{ "Principal": {"DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS"}, "Permissions": ["ALL"] }], "OverwriteChildResourcePermissionsWithDefault": "Accept" }'
  3. Fase 3: Annullare la registrazione della risorsa da Lake Formation

    Dopo aver verificato che tutti gli accessi funzionano secondo le policy IAM e che nessun committente dipende dalle sovvenzioni di Lake Formation, puoi annullare la registrazione della risorsa da Lake Formation per completare la migrazione.

    aws lakeformation deregister-resource \ --resource-arn "arn:aws:s3tables:us-east-1:AWSAccountID:bucket/*"
    Nota

    Dopo aver annullato la registrazione della risorsa, rimuovi lakeformation:GetDataAccess dai principali IAM che non ne hanno più bisogno.

Non è richiesto alcun revoke-permissions passaggio.