Integración de Amazon Redshift con Concesiones de acceso a Amazon S3
Gracias a la integración con Concesiones de acceso a Amazon S3, puede propagar sin problemas sus identidades de IAM Identity Center para controlar el acceso a los datos de Amazon S3. Esta integración le permite autorizar el acceso a los datos de Amazon S3 en función de los usuarios y grupos de IAM Identity Center.
Para obtener información sobre Concesiones de acceso a Amazon S3, consulte Administración del acceso con Concesiones de acceso a Amazon S3.
El uso de Concesiones de acceso a Amazon S3 ofrece a su aplicación las siguientes ventajas:
Control de acceso pormenorizado a los datos de Amazon S3, basado en las identidades de IAM Identity Center.
Administración centralizada de las identidades de IAM Identity Center en Amazon Redshift y Amazon S3.
Puede evitar tener que administrar permisos de IAM por separado para el acceso a Amazon S3.
Funcionamiento
Para integrar su aplicación con Concesiones de acceso a Amazon S3, haga lo siguiente:
En primer lugar, debe configurar Amazon Redshift para que se integre con Concesiones de acceso a Amazon S3 mediante AWS Management Console o AWS CLI.
A continuación, un usuario con privilegios de administrador de IdC concede acceso al bucket o prefijo de Amazon S3 a usuarios o grupos de IdC específicos mediante el servicio Concesiones de acceso a Amazon S3. Para obtener más información, consulte Trabajo con concesiones en Concesiones de acceso a S3.
Cuando un usuario de IdC autenticado en Redshift ejecuta una consulta para acceder a S3 (como una operación COPY, UNLOAD o Spectrum), Amazon Redshift recupera las credenciales de acceso temporales de S3 que tienen como ámbito esa identidad de IdC del servicio Concesiones de acceso a Amazon S3.
A continuación, Amazon Redshift utiliza las credenciales temporales recuperadas para acceder a las ubicaciones de Amazon S3 autorizadas para esa consulta.
Configuración de la integración con Concesiones de acceso a Amazon S3
Para configurar la integración con Concesiones de acceso a Amazon S3 para Amazon Redshift, haga lo siguiente:
Temas
Configuración de la integración con Concesiones de acceso a Amazon S3 utilizando la AWS Management Console
Abra la consola de Amazon Redshift.
Elija el clúster en el panel Clústeres.
En la página de detalles de su clúster, en la sección Integración con proveedores de identidad, habilite la integración con el servicio Concesiones de acceso a Amazon S3.
nota
La sección Integración con proveedores de identidad no aparece si no tiene configurado IAM Identity Center. Para obtener más información, consulte Enabling AWS IAM Identity Center.
Habilitación de la integración con Concesiones de acceso a Amazon S3 utilizando la AWS CLI
Para crear una nueva aplicación de IdC de Amazon Redshift con la integración de S3 habilitada, haga lo siguiente:
aws redshift create-redshift-idc-application <other parameters> --service-integrations '[ {"S3AccessGrants": [{"ReadWriteAccess": {"Authorization": "Enabled"}}]} ]'
Para modificar una aplicación existente para habilitar la integración con Concesiones de acceso a Amazon S3, haga lo siguiente:
aws redshift modify-redshift-idc-application <other parameters> --service-integrations '[ {"S3AccessGrants": [{"ReadWriteAccess": {"Authorization": "Enabled"}}]} ]'
Para modificar una aplicación existente para deshabilitar la integración con Concesiones de acceso a Amazon S3, haga lo siguiente:
aws redshift modify-redshift-idc-application <other parameters> --service-integrations '[ {"S3AccessGrants": [{"ReadWriteAccess": {"Authorization": "Disabled"}}]} ]'
Uso de la integración con Concesiones de acceso a Amazon S3
Después de configurar la integración con Concesiones de acceso a Amazon S3, las consultas que acceden a los datos de S3 (como las consultas COPY
, UNLOAD
o de Spectrum) utilizan la identidad de IdC como autorización. Los usuarios que no estén autenticados mediante IdC también pueden ejecutar estas consultas, pero esas cuentas de usuario no se benefician de la administración centralizada que proporciona IdC.
El siguiente ejemplo muestra las consultas que se ejecutan con la integración de Concesiones de acceso a Amazon S3:
COPY table FROM 's3://mybucket/data'; // -- Redshift uses IdC identity UNLOAD ('SELECT * FROM table') TO 's3://mybucket/unloaded/' // -- Redshift uses IdC identity