¿Por qué aparece el error “Insufficient Lake Formation permissions on <ubicación de Amazon S3>” en Amazon Athena a pesar de que el usuario o rol de IAM tiene los permisos de S3 requeridos?

3 minutos de lectura
0

Cuando intento crear una base de datos o tabla en Amazon Athena con la ubicación de Amazon Simple Storage Service (Amazon S3) que está registrada en AWS Lake Formation, se produce el error “Insufficient Lake Formation permission(s) on

      ” (Permisos insuficientes de Lake Formation en <ubicación de Amazon S3>) y la consulta falla. Sin embargo, el usuario o rol de AWS Identity and Access Management (IAM) de Athena tiene los permisos de IAM necesarios.

Resolución

Este error aparece cuando se cumplen las siguientes condiciones:

  • El usuario o rol de IAM intenta crear o modificar un recurso del catálogo de datos (base de datos o tabla) en un bucket de Amazon S3 que está registrado en Lake Formation.
  • El usuario o rol de IAM no tienen los permisos de ubicación de datos adecuados de Lake Formation.

Para resolver este error, se deben conceder permisos de ubicación de datos adecuados al usuario o rol de IAM que se utilice para crear la base de datos o tabla. Cuando utilice Athena con Lake Formation, asegúrese de conceder los permisos de S3 requeridos al usuario o rol de IAM de Lake Formation, además de los permisos de acceso a datos requeridos por el usuario o rol de IAM. Los permisos de acceso a datos autorizan al usuario o rol de IAM a leer y escribir datos en la ubicación de Amazon S3 subyacente. Sin embargo, los permisos de ubicación de datos de Lake Formation autorizan a un usuario o rol de IAM a crear y modificar los recursos del catálogo de datos que apunten a la ubicación de Amazon S3 registrada.

Para resolver este error, haga lo siguiente:

  1. Verifique que la ruta de S3 de Athena está registrada en Lake Formation correctamente.
  2. Conceda los permisos de ubicación de datos requeridos al usuario o rol de IAM para acceder a la ruta de S3.

Verificar que la ubicación del lago de datos está registrada en Lake Formation

  1. Inicie sesión en la consola de AWS Lake Formation con el rol de administrador del lago de datos.
  2. En el panel de navegación, en Register and Ingest (Registrar e ingerir), elija Data lake Locations (Ubicaciones de lagos de datos).
    En la lista Data lake locations (Ubicaciones de lagos de datos), verifique que la ruta de S3 a la que apuntan los recursos del catálogo de datos está registrada en Lake Formation.

Conceder permisos de ubicación de datos desde la consola de AWS Lake Formation

  1. En el panel de navegación, elija Data locations (Ubicaciones de datos).
  2. Seleccione Grant (Conceder).
  3. En el cuadro de diálogo Grant permissions (Conceder permisos), seleccione My account (Mi cuenta).
  4. En IAM users and roles (Usuarios y roles de IAM), seleccione el usuario o rol de IAM al que desea conceder permisos.
  5. En Storage locations (Ubicaciones de almacenamiento), seleccione la ruta de S3 de la que recibe el error.
  6. Elija Grant (Conceder).

Nota: Siga estos pasos solo si la ruta de S3 está en la misma cuenta. Si la ruta de S3 está en otra cuenta, asegúrese de que se cumplan todos los requisitos previos de acceso entre cuentas. Luego, siga las instrucciones proporcionadas en Concesión de permisos de ubicación de datos (cuenta externa).


Información relacionada

Concesión de permisos de ubicación de datos

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 2 años