Integrazione di un'istanza database Amazon RDS for Db2 con Amazon S3 - Amazon Relational Database Service

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à.

Integrazione di un'istanza database Amazon RDS for Db2 con Amazon S3

Puoi trasferire file tra la tua istanza database Amazon RDS for Db2 e un bucket Amazon Simple Storage Service (Amazon S3) con le procedure memorizzate di Amazon. RDS Per ulteriori informazioni, consulta Riferimento alla procedura memorizzata di Amazon RDS per Db2.

Nota

L'istanza database e il bucket Amazon S3 devono trovarsi nella stessa Regione AWS.

RDSAffinché Db2 possa integrarsi con Amazon S3, l'istanza DB deve avere accesso a un bucket Amazon S3 in cui risiede l'istanza for Db2. RDS Se al momento non disponi di un bucket S3, crea un bucket.

Fase 1: creare una policy IAM

In questo passaggio, crei una policy AWS Identity and Access Management (IAM) con le autorizzazioni necessarie per trasferire file dal bucket Amazon S3 all'RDSistanza DB. Questo passaggio presuppone che tu abbia già creato un bucket S3. Per ulteriori informazioni, consulta Creare un bucket nella Guida per l'utente di Amazon S3.

Prima di creare la policy, prendi nota delle seguenti informazioni:

  • L'Amazon Resource Name (ARN) per il tuo bucket

  • La chiave ARN for your AWS Key Management Service (AWS KMS), se il tuo bucket utilizza SSE-KMS oppure SSE-S3 crittografia.

Crea una IAM politica che includa le seguenti autorizzazioni:

"kms:GenerateDataKey", "kms:Decrypt", "s3:PutObject", "s3:GetObject", "s3:AbortMultipartUpload", "s3:ListBucket", "s3:DeleteObject", "s3:GetObjectVersion", "s3:ListMultipartUploadParts"

È possibile creare una IAM politica utilizzando il AWS Management Console o il AWS Command Line Interface (AWS CLI).

Per creare una IAM policy che consenta ad Amazon RDS di accedere al tuo bucket Amazon S3
  1. Accedi a AWS Management Console e apri la IAM console all'indirizzo. https://console.aws.amazon.com/iam/

  2. Nel riquadro di navigazione, seleziona Policy.

  3. Scegli Crea politica, quindi scegli JSON.

  4. Aggiungi azioni per servizio. Per trasferire file da un bucket Amazon S3 ad AmazonRDS, devi selezionare le autorizzazioni del bucket e le autorizzazioni degli oggetti.

  5. Espandi Resources (Risorse). È necessario specificare le risorse del bucket e dell'oggetto.

  6. Scegli Next (Successivo).

  7. Per Nome della politica, inserisci un nome per questa politica.

  8. (Facoltativo) In Descrizione, inserire una descrizione per questa politica.

  9. Scegli Create Policy (Crea policy).

Per creare una IAM policy che consenta ad Amazon RDS di accedere al tuo bucket Amazon S3
  1. Eseguire create-policycomando. Nell'esempio seguente, sostituisci iam_policy_name e s3_bucket_name con un nome per la tua IAM policy e il nome del bucket Amazon S3 in cui risiede il database RDS for Db2.

    In Linux, macOS, oppure Unix:

    aws iam create-policy \ --policy-name iam_policy_name \ --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt", "s3:PutObject", "s3:GetObject", "s3:AbortMultipartUpload", "s3:ListBucket", "s3:DeleteObject", "s3:GetObjectVersion", "s3:ListMultipartUploadParts" ], "Resource": [ "arn:aws:s3:::s3_bucket_name/*", "arn:aws:s3:::s3_bucket_name" ] } ] }'

    In Windows:

    aws iam create-policy ^ --policy-name iam_policy_name ^ --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:AbortMultipartUpload", "s3:ListBucket", "s3:DeleteObject", "s3:GetObjectVersion", "s3:ListMultipartUploadParts" ], "Resource": [ "arn:aws:s3:::s3_bucket_name/*", "arn:aws:s3:::s3_bucket_name" ] } ] }'
  2. Dopo aver creato il criterio, annota ARN il criterio. Ti serve il ARN perFase 2: Crea un IAM ruolo e allega la tua IAM policy.

Per informazioni sulla creazione di una IAM politica, vedere Creazione IAM di politiche nella Guida IAM per l'utente.

Fase 2: Crea un IAM ruolo e allega la tua IAM policy

Questo passaggio presuppone che tu abbia creato la IAM politica inFase 1: creare una policy IAM. In questo passaggio, crei un IAM ruolo per la tua istanza DB RDS for Db2 e quindi alleghi la tua IAM policy al ruolo.

Puoi creare un IAM ruolo per la tua istanza DB utilizzando AWS Management Console o il AWS CLI.

Per creare un IAM ruolo e allegare ad esso la tua IAM policy
  1. Accedi a AWS Management Console e apri la IAM console all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel pannello di navigazione, seleziona Roles (Ruoli).

  3. Selezionare Create role (Crea ruolo).

  4. Per Tipo di entità attendibile, seleziona Servizio AWS.

  5. Per Servizio o caso d'uso RDS, seleziona, quindi seleziona RDS Aggiungi ruolo al database.

  6. Scegli Next (Successivo).

  7. Per le politiche di autorizzazione, cerca e seleziona il nome della IAM politica che hai creato.

  8. Scegli Next (Successivo).

  9. In Role name, (Nome ruolo), inserisci un nome.

  10. (Facoltativo) In Description (Descrizione), inserisci una descrizione per il nuovo ruolo.

  11. Scegliere Crea ruolo.

Per creare un IAM ruolo e allegare ad esso la tua IAM politica
  1. Eseguire create-rolecomando. Nell'esempio seguente, sostituiscilo iam_role_name con un nome per il tuo IAM ruolo.

    In Linux, macOS, oppure Unix:

    aws iam create-role \ --role-name iam_role_name \ --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }'

    In Windows:

    aws iam create-role ^ --role-name iam_role_name ^ --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }'
  2. Dopo aver creato il ruolo, annota il ARN ruolo. Ti serve il ARN perPassaggio 3: aggiungi il tuo IAM ruolo alla tua istanza DB RDS for Db2.

  3. Eseguire attach-role-policycomando. Nell'esempio seguente, sostituiscilo iam_policy_arn ARN con il IAM criterio creato inFase 1: creare una policy IAM. Sostituisci iam_role_name con il nome del IAM ruolo appena creato.

    In Linux, macOS, oppure Unix:

    aws iam attach-role-policy \ --policy-arn iam_policy_arn \ --role-name iam_role_name

    In Windows:

    aws iam attach-role-policy ^ --policy-arn iam_policy_arn ^ --role-name iam_role_name

Per ulteriori informazioni, consulta Creazione di un ruolo per delegare le autorizzazioni a un IAM utente nella Guida per l'IAMutente.

Passaggio 3: aggiungi il tuo IAM ruolo alla tua istanza DB RDS for Db2

In questo passaggio, aggiungi il tuo IAM ruolo all'istanza DB RDS for Db2. Si notino i requisiti seguenti:

  • Devi avere accesso a un IAM ruolo a cui è associata la politica di autorizzazioni di Amazon S3 richiesta.

  • Puoi associare un solo IAM ruolo alla volta alla tua istanza DB RDS for Db2.

  • L'istanza DB RDS for Db2 deve essere nello stato Available.

È possibile aggiungere un IAM ruolo alla propria istanza DB utilizzando AWS Management Console o il AWS CLI.

Per aggiungere un IAM ruolo alla tua istanza DB RDS for Db2
  1. Accedi a AWS Management Console e apri la RDS console Amazon all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel riquadro di navigazione, scegli Databases (Database).

  3. Scegli il RDS nome dell'istanza DB Db2 che preferisci.

  4. Nella scheda Connettività e sicurezza, scorri verso il basso fino alla sezione Gestisci IAM ruoli nella parte inferiore della pagina.

  5. Per Aggiungi IAM ruoli a questa istanza, scegli il ruolo in cui hai creatoFase 2: Crea un IAM ruolo e allega la tua IAM policy.

  6. Per Feature, scegli S3_ INTEGRATION.

  7. Scegliere Add role (Aggiungi ruolo).

    La INTEGRATION funzionalità S3_ è stata aggiunta al IAM ruolo per un'istanza DB.

Per aggiungere un IAM ruolo alla tua istanza DB RDS for Db2, esegui add-role-to-db-instancecomando. Nell'esempio seguente, sostituisci db_instance_name e iam_role_arn con il nome dell'istanza DB e il ARN IAM ruolo in cui hai creatoFase 2: Crea un IAM ruolo e allega la tua IAM policy.

In Linux, macOS, oppure Unix:

aws rds add-role-to-db-instance \ --db-instance-identifier db_instance_name \ --feature-name S3_INTEGRATION \ --role-arn iam_role_arn \

In Windows:

aws rds add-role-to-db-instance ^ --db-instance-identifier db_instance_name ^ --feature-name S3_INTEGRATION ^ --role-arn iam_role_arn ^

Per confermare che il ruolo è stato aggiunto correttamente all'istanza database RDS for Db2, esegui il describe-db-instancescomando. Nell'esempio seguente, db_instance_name sostituiscilo con il nome dell'istanza DB.

In Linux, macOS, oppure Unix:

aws rds describe-db-instances \ --filters "Name=db-instance-id,Values=db_instance_name" \ --query 'DBInstances[].AssociatedRoles'

In Windows:

aws rds describe-db-instances ^ --filters "Name=db-instance-id,Values=db_instance_name" ^ --query 'DBInstances[].AssociatedRoles'

Questo comando produce un output simile all'esempio seguente:

[ [ { "RoleArn": "arn:aws:iam::0123456789012:role/rds-db2-s3-role", "FeatureName": "S3_INTEGRATION", "Status": "ACTIVE" } ] ]