Configurar permisos en recursos compartidos de datos de Amazon Redshift - AWS Lake Formation

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Configurar permisos en recursos compartidos de datos de Amazon Redshift

En este tema se describen los pasos que debe seguir para aceptar una invitación a compartir datos, crear una base de datos federada y conceder permisos. Puede utilizar la consola de Lake Formation o AWS Command Line Interface (AWS CLI). Los ejemplos de este tema muestran el clúster de productores, el Catálogo de datos y el consumidor de datos en la misma cuenta.

Para obtener más información sobre las capacidades entre cuentas de Lake Formation, consulte Compartir datos entre cuentas en Lake Formation.

Para configurar los permisos de un recurso compartido de datos
  1. Revise una invitación al recurso compartido de datos y acéptela.

    Console
    1. Inicie sesión en la consola de Lake Formation como administrador del lago de datos en https://console.aws.amazon.com/lakeformation/. Acceda a la página Intercambio de datos.

    2. Revise los recursos compartidos de datos para los que tiene autorización de acceso. La columna Estado indica su estado de participación actual en el recurso compartido de datos. El estado Pendiente indica que se le ha agregado a un recurso compartido de datos, pero que aún no lo ha aceptado o ha rechazado la invitación.

    3. Para responder a la invitación al recurso compartido de datos, seleccione el nombre del recurso compartido de datos y elija Revisar la invitación. En Aceptar o rechazar recurso compartido de datos, revise los detalles de la invitación. Seleccione Aceptar para aceptar la invitación o Rechazar para rechazarla. Si rechaza la invitación, no obtendrá acceso al recurso compartido de datos.

    AWS CLI

    En los ejemplos siguientes se muestra cómo ver, aceptar y registrar la invitación. Sustituya el ID de Cuenta de AWS por un ID de Cuenta de AWS válido. Sustituya data-share-arn por el nombre de recurso de Amazon (ARN) real que hace referencia al recurso compartido de datos.

    1. Consulte una invitación pendiente.

      aws redshift describe-data-shares \ --data-share-arn 'arn:aws:redshift:us-east-1:111122223333:datashare:abcd1234-1234-ab12-cd34-1a2b3c4d5e6f/federatedds' \
    2. Acepte un recurso compartido de datos.

      aws redshift associate-data-share-consumer \ --data-share-arn 'arn:aws:redshift:us-east-1:111122223333:datashare:abcd1234-1234-ab12-cd34-1a2b3c4d5e6f/federatedds' \ --consumer-arn 'arn:aws:glue:us-east-1:111122223333:catalog
    3. Registre el recurso compartido de datos en la cuenta de Lake Formation. Utilice la operación de la API RegisterResource para registrar el recurso compartido de datos en Lake Formation DataShareArnes el parámetro de entrada de ResourceArn.

      nota

      Este es un paso obligatorio.

      aws lakeformation register-resource \ --resource-arn 'arn:aws:redshift:us-east-1:111122223333:datashare:abcd1234-1234-ab12-cd34-1a2b3c4d5e6f/federatedds'
  2. Cree una base de datos.

    Tras aceptar una invitación para un recurso compartido de datos, debe crear una base de datos que apunte a la base de datos de Amazon Redshift asociada al recurso compartido de datos. Debe ser administrador de un lago de datos para crear una base de datos.

    Console
    1. Seleccione el recurso compartido de datos en el panel Invitaciones y elija Establecer los detalles de la base de datos.

    2. En Establecer los detalles de la base de datos, introduzca un nombre e identificador únicos para el recurso compartido de datos. Este identificador se utiliza para asignar el recurso compartido de datos internamente en la jerarquía de metadatos (dbname.schema.Table).

    3. Seleccione Siguiente para conceder permisos a otros usuarios en la base de datos y las tablas compartidas.

    AWS CLI

    Utilice el siguiente código de ejemplo para crear una base de datos que apunte a la base de datos de Amazon Redshift compartida con Lake Formation mediante AWS CLI.

    aws glue create-database --cli-input-json \ '{ "CatalogId": "111122223333", "DatabaseInput": { "Name": "tahoedb", "FederatedDatabase": { "Identifier": "arn:aws:redshift:us-east-1:111122223333:datashare:abcd1234-1234-ab12-cd34-1a2b3c4d5e6f/federatedds", "ConnectionName": "aws:redshift" } } }'
  3. Concesión de permisos.

    Una vez creada la base de datos, puede conceder permisos a otros usuarios de su cuenta o a Cuentas de AWS y organizaciones externas. No podrá conceder permisos de escritura de datos (insertar, eliminar) ni permisos de metadatos (modificar, eliminar, crear) en la base de datos federada asignada a un recurso compartido de datos de Amazon Redshift. Para obtener más información sobre cómo conceder permisos, consulte Administrar los permisos de Lake Formation.

    nota

    Como administrador del lago de datos, solo puede ver las tablas de las bases de datos federadas. Para realizar cualquier otra acción, debe concederse más permisos sobre dichas tablas.

    Console
    1. En la pantalla Conceder permisos, seleccione los usuarios a los que va a conceder los permisos.

    2. Elija Conceder.

    AWS CLI

    Utilice los siguientes ejemplos para conceder permisos de bases de datos y tablas mediante AWS CLI:

    aws lakeformation grant-permissions --input-cli-json file://input.json { "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/non-admin" }, "Resource": { "Database": { "CatalogId": "111122223333", "Name": "tahoedb" } }, "Permissions": [ "DESCRIBE" ], "PermissionsWithGrantOption": [ ] }
    aws lakeformation grant-permissions --input-cli-json file://input.json { "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/non-admin" }, "Resource": { "Table": { "CatalogId": "111122223333", "DatabaseName": "tahoedb", "Name": "public.customer" } }, "Permissions": [ "SELECT" ], "PermissionsWithGrantOption": [ "SELECT" ] }