Configurazione dell’autenticazione IAM per Server proxy per RDS - Amazon Aurora

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

Configurazione dell’autenticazione IAM per Server proxy per RDS

Per configurare l'autenticazione AWS Identity and Access Management (IAM) per RDS Proxy in Amazon RDS, crea e configura una policy IAM che conceda le autorizzazioni necessarie.

Questo argomento fornisce i passaggi per configurare l’autenticazione IAM per Server proxy per RDS, inclusa la creazione della policy IAM richiesta e il suo collegamento a un ruolo IAM.

Suggerimento

Questa procedura è necessaria solo se desideri creare il tuo ruolo IAM. Altrimenti, RDS può creare automaticamente il ruolo richiesto quando configuri il proxy, quindi puoi saltare questi passaggi.

Prerequisiti

Prima di configurare l’autenticazione IAM per Server proxy per RDS, assicurati di disporre di quanto segue:

  • Gestione dei segreti AWS: almeno un segreto archiviato che contiene le credenziali del database. Per istruzioni su come creare segreti, consulta Impostazione delle credenziali del database per RDS Proxy.

    Questo non è necessario se utilizzi l'autenticazione IAM. end-to-end

  • Autorizzazioni IAM: un ruolo o un utente IAM con autorizzazioni per creare e gestire policy, ruoli e segreti IAM in Gestione dei segreti AWS.

Creazione di una policy IAM per l'autenticazione end-to-end IAM

Quando si utilizza l'autenticazione end-to-end IAM, RDS Proxy si connette al database utilizzando l'autenticazione IAM anziché recuperare le credenziali da Secrets Manager. Ciò richiede la configurazione del ruolo IAM con rds-db:connect le autorizzazioni per gli account di database che desideri utilizzare con il proxy.

Per autenticare il proxy RDS nel database utilizzando IAM, crea un ruolo IAM con una policy che conceda le autorizzazioni di connessione al database necessarie.

Per creare un ruolo per l'autenticazione end-to-end IAM con il tuo proxy
  1. Accedi Console di gestione AWS e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Creazione di una policy delle autorizzazioni per il ruolo. Per i passaggi generali, consulta Creare policy IAM (console).

    Incolla la seguente policy nell’editor JSON ed effettua le seguenti modifiche:

    • Sostituisci il tuo ID account.

    • Sostituiscilo us-east-2 con il luogo in cui deve risiedere il proxy.

    • Sostituisci la risorsa del database IDs e i nomi utente con quelli che desideri utilizzare. Il formato dell'ID della risorsa è diverso tra le istanze RDS e. Aurora clusters

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "rds-db:connect", "Resource": [ "arn:aws:rds-db:us-east-2:account_id:dbuser:db_instance_resource_id/db_user_name_1", "arn:aws:rds-db:us-east-2:account_id:dbuser:db_instance_resource_id/db_user_name_2" ] } ] }
  3. Crea il ruolo e collega ad esso una policy delle autorizzazioni. Per i passaggi generali, consulta Creare un ruolo per delegare le autorizzazioni a un servizio. AWS

    Per Tipo di entità attendibile, scegli AWS Servizio. In Caso d’uso, seleziona RDS e scegli RDS - Aggiungi ruolo al database per il caso d’uso.

  4. In Policy di autorizzazione, scegli la policy creata.

  5. In Seleziona entità attendibili, inserisci la seguente policy di attendibilità per il ruolo:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Per creare il ruolo utilizzando il AWS CLI, invia la seguente richiesta:

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

Quindi, collega tale policy al ruolo:

aws iam put-role-policy \ --role-name my_e2e_iam_role_name \ --policy-name e2e_iam_db_connect_policy \ --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "rds-db:connect", "Resource": [ "arn:aws:rds-db:us-east-2:account_id:dbuser:db_instance_resource_id/db_user_name_1", "arn:aws:rds-db:us-east-2:account_id:dbuser:db_instance_resource_id/db_user_name_2" ] } ] }'

Con il ruolo e le autorizzazioni end-to-end IAM configurati per l'autenticazione IAM, ora puoi creare un proxy con DefaultAuthScheme set toIAM_AUTH. Questo proxy si autentica direttamente nel database utilizzando IAM senza richiedere i segreti di Secrets Manager. Per istruzioni, consulta Creazione di un proxy per Amazon Aurora.

Quando utilizzi l'autenticazione end-to-end IAM, assicurati che gli utenti del database siano configurati per l'autenticazione IAM come descritto in. Creazione di un account database tramite l’autenticazione IAM

Creazione di una policy IAM per l’accesso a Secrets Manager

Per consentire a Server proxy per RDS di recuperare le credenziali del database da Secrets Manager, devi creare un ruolo IAM con una policy che concede le autorizzazioni necessarie.

Per creare un ruolo che acceda ai segreti da utilizzare con il proxy
  1. Accedi a Console di gestione AWS e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Creazione di una policy delle autorizzazioni per il ruolo. Per i passaggi generali, consulta Creare policy IAM (console).

    Incolla la seguente policy nell’editor JSON ed effettua le seguenti modifiche:

    • Sostituisci il tuo ID account.

    • Sostituisci us-east-2 con la Regione in cui risiederà il proxy.

    • Sostituisci i nomi segreti con quelli che hai creato. Per ulteriori informazioni, consulta Specificazione delle chiavi KMS nelle istruzioni della policy IAM.

    • Sostituisci l’ID della chiave KMS con quello utilizzato per crittografare i segreti di Secrets Manager, la chiave di default o la propria chiave.

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "secretsmanager:GetSecretValue", "Resource": [ "arn:aws:secretsmanager:us-east-2:111122223333:secret:secret_name_1", "arn:aws:secretsmanager:us-east-2:111122223333:secret:secret_name_2" ] }, { "Effect": "Allow", "Action": "kms:Decrypt", "Resource": "arn:aws:kms:us-east-2:111122223333:key/key_id", "Condition": { "StringEquals": { "kms:ViaService": "secretsmanager.us-east-2.amazonaws.com" } } } ] }
  3. Crea il ruolo e collega ad esso una policy delle autorizzazioni. Per i passaggi generali, consulta Creare un ruolo per delegare le autorizzazioni a un AWS servizio.

    Per Tipo di entità attendibile, scegli AWS Servizio. In Caso d’uso, seleziona RDS e scegli RDS - Aggiungi ruolo al database per il caso d’uso.

  4. In Policy di autorizzazione, scegli la policy creata.

  5. In Seleziona entità attendibili, inserisci la seguente policy di attendibilità per il ruolo:

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Per creare il ruolo utilizzando il AWS CLI, invia la seguente richiesta:

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

Quindi, collega tale policy al ruolo:

aws iam put-role-policy \ --role-name my_role_name \ --policy-name secret_reader_policy \ --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "secretsmanager:GetSecretValue", "Resource": [ "arn:aws:secretsmanager:us-east-2:account_id:secret:secret_name_1", "arn:aws:secretsmanager:us-east-2:account_id:secret:secret_name_2" ] }, { "Sid": "VisualEditor1", "Effect": "Allow", "Action": "kms:Decrypt", "Resource": "arn:aws:kms:us-east-2:account_id:key/key_id", "Condition": { "StringEquals": { "kms:ViaService": "secretsmanager.us-east-2.amazonaws.com" } } } ] }'

Con il ruolo e le autorizzazioni IAM configurati, ora puoi creare un proxy e associarlo a questo ruolo. Ciò consente al proxy di recuperare le credenziali del database in modo sicuro Gestione dei segreti AWS e di abilitare l'autenticazione IAM per le applicazioni. Per istruzioni, consulta Creazione di un proxy per Amazon Aurora.