Configuración de la autorización para el almacenamiento de datos de Amazon Redshift - Amazon Redshift

Configuración de la autorización para el almacenamiento de datos de Amazon Redshift

Para replicar datos desde el origen de integración en su almacenamiento de datos de Amazon Redshift, debe agregar inicialmente las dos entidades siguientes:

  • Entidad principal autorizada: identifica al usuario o rol que puede crear integraciones sin ETL en el almacenamiento de datos.

  • Origen de integración autorizado: identifica la base de datos de origen que puede actualizar el almacenamiento de datos.

Puede configurar las entidades principales autorizadas y los orígenes de integración autorizados desde la pestaña Política de recursos de la consola de Amazon Redshift o mediante la operación de la API de PutResourcePolicy Amazon Redshift.

Agregar entidades principales autorizadas

Para crear una integración sin ETL en el grupo de trabajo de Redshift sin servidor o el clúster aprovisionado, autorice el acceso al espacio de nombres asociado o al clúster aprovisionado.

Puede omitir este paso si se cumplen las dos condiciones siguientes:

  • La Cuenta de AWS propietaria del grupo de trabajo de Redshift sin servidor o el clúster aprovisionado también son propietarias de la base de datos de origen.

  • Esa entidad principal está asociada a una política de IAM basada en identidad con permisos para crear integraciones sin ETL en este espacio de nombres de Redshift sin servidor o clúster aprovisionado.

Agregar entidades principales autorizadas a un espacio de nombres de Amazon Redshift sin servidor

  1. En la consola de Amazon Redshift, elija Redshift sin servidor en el panel de navegación de la izquierda.

  2. Elija Configuración del espacio de nombres, luego escoja su espacio de nombres y vaya a la pestaña Política de recursos.

  3. Elija Agregar entidades principales autorizadas.

  4. Para cada entidad principal autorizada que desee agregar, introduzca el ARN del usuario o rol de AWS o el ID de cuenta de Cuenta de AWS al que desee conceder acceso para crear integraciones sin ETL en el espacio de nombres. Un ID de cuenta se almacena como un ARN.

  5. Elija Guardar cambios.

Agregar entidades principales autorizadas a un clúster aprovisionado de Amazon Redshift

  1. En la consola de Amazon Redshift, en el panel de navegación de la izquierda, elija Panel de clústeres aprovisionados.

  2. Elija Clústeres y seleccione el clúster. Vaya a la pestaña Política de recursos.

  3. Elija Agregar entidades principales autorizadas.

  4. Para cada entidad principal autorizada que desee agregar, introduzca el ARN del usuario o rol de AWS o el ID de cuenta de la Cuenta de AWS al que desee conceder acceso para crear integraciones sin ETL en el clúster. Un ID de cuenta se almacena como un ARN.

  5. Elija Guardar cambios.

Agregar orígenes de integración autorizados

Para permitir que el origen actualice el almacenamiento de datos de Amazon Redshift, debe agregarlo como origen de integración autorizado al espacio de nombres.

Agregar un origen de integración autorizado a un espacio de nombres de Amazon Redshift sin servidor

  1. En la consola de Amazon Redshift, vaya al Panel sin servidor.

  2. Elija el nombre del espacio de nombres.

  3. Vaya a la pestaña Política de recursos.

  4. Seleccione Agregar un origen de integración autorizado.

  5. Especifique el ARN del origen para la integración sin ETL.

nota

La eliminación de un origen de integración autorizado impide que los datos se repliquen en el espacio de nombres. Esta acción desactiva todas las integraciones sin ETL de ese origen en este espacio de nombres.

Agregar un origen de integración autorizado a un clúster aprovisionado de Amazon Redshift

  1. En la consola de Amazon Redshift, vaya al Panel de clústeres aprovisionados.

  2. Elija el nombre del clúster aprovisionado.

  3. Vaya a la pestaña Política de recursos.

  4. Seleccione Agregar un origen de integración autorizado.

  5. Especifique el ARN del origen que es el origen de datos para la integración sin ETL.

nota

La eliminación de un origen de integración autorizado impide que los datos se repliquen en el clúster aprovisionado. Esta acción desactiva todas las integraciones sin ETL de ese origen en este clúster aprovisionado de Amazon Redshift.

Configuración de la autorización con la API de Amazon Redshift

Puede utilizar las operaciones de la API de Amazon Redshift para configurar políticas de recursos que funcionen con las integraciones sin ETL.

Para controlar el origen que puede crear una integración entrante en el espacio de nombres, cree una política de recursos y asóciela al espacio de nombres. Con la política de recursos, puede especificar el origen que tiene acceso a la integración. La política de recursos se adjunta al espacio de nombres del almacenamiento de datos de destino para permitir que el origen cree una integración entrante para replicar los datos activos del origen en Amazon Redshift.

La siguiente es una política de recursos de ejemplo.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "redshift.amazonaws.com" }, "Action": "redshift:AuthorizeInboundIntegration", "Condition": { "StringEquals": { "aws:SourceArn": "source_arn" } } }, { "Effect": "Allow", "Principal": { "AWS": "source_principal" }, "Action": "redshift:CreateInboundIntegration" } ] }

A continuación, se resumen las operaciones de la API de Amazon Redshift aplicables a la configuración de las políticas de recursos para las integraciones:

  • Utilice la operación de la API PutResourcePolicy para conservar la política de recursos. Al proporcionar otra política de recursos, se reemplaza la política de recursos anterior del recurso. Utilice el ejemplo de política de recursos anterior, que concede permisos para las siguientes acciones:

    • CreateInboundIntegration: permite a la entidad principal de origen crear una integración entrante para que los datos se repliquen desde el origen en el almacenamiento de datos de destino.

    • AuthorizeInboundIntegration: permite a Amazon Redshift validar continuamente que el almacenamiento de datos de destino pueda recibir datos replicados desde el ARN de origen.

  • Utilice la operación de la API GetResourcePolicy para ver las políticas de recursos existentes.

  • Utilice la operación de la API DeleteResourcePolicy para eliminar una política de recursos del recurso.

Para actualizar una política de recursos, también puede usar el comando put-resource-policy de la AWS CLI. Por ejemplo, para incluir una política de recursos en el ARN del espacio de nombres de Amazon Redshift para una fuente de DynamoDB, ejecute un comando de la AWS CLI similar al siguiente.

aws redshift put-resource-policy \ --policy file://rs-rp.json \ --resource-arn "arn:aws:redshift-serverless:us-east-1:123456789012:namespace/cc4ffe56-ad2c-4fd1-a5a2-f29124a56433"

Donde rs-rp.json contiene:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "redshift.amazonaws.com" }, "Action": "redshift:AuthorizeInboundIntegration", "Resource": "arn:aws:redshift-serverless:us-east-1:123456789012:namespace/cc4ffe56-ad2c-4fd1-a5a2-f29124a56433", "Condition": { "StringEquals": { "aws:SourceArn": "arn:aws:dynamodb:us-east-1:123456789012:table/test_ddb" } } }, { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:root" }, "Action": "redshift:CreateInboundIntegration", "Resource": "arn:aws:redshift-serverless:us-east-1:123456789012:namespace/cc4ffe56-ad2c-4fd1-a5a2-f29124a56433" } ] }