Configurazione dell’autenticazione Kerberos per le istanze database Amazon RDS per Db2 - 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à.

Configurazione dell’autenticazione Kerberos per le istanze database Amazon RDS per Db2

Si utilizza AWS Directory Service for Microsoft Active Directory (AWS Managed Microsoft AD) per configurare Kerberos l'autenticazione per un'istanza DB RDS for Db2. Per configurare l’autenticazione Kerberos, segui questa procedura:

Passaggio 1: creare una directory utilizzando AWS Managed Microsoft AD

Directory Service crea un file completamente gestito Active Directory in Cloud AWS. Quando crei una AWS Managed Microsoft AD directory, Directory Service crea automaticamente due controller di dominio e server DNS. I server di directory vengono creati in sottoreti diverse in un VPC. Questa ridondanza assicura che la directory rimanga accessibile anche se si verifica un errore.

Quando crei una AWS Managed Microsoft AD directory, Directory Service esegue le seguenti attività per tuo conto:

  • Configura una Active Directory all’interno del VPC.

  • Crea un account amministratore della directory con il nome utente Admin e la password specificata. Puoi utilizzare questo account per gestire le directory.

    Importante

    Assicurati di salvare questa password. Directory Service non memorizza questa password e non può essere recuperata o reimpostata.

  • Crea un gruppo di sicurezza per i controller della directory. Il gruppo di sicurezza deve consentire la comunicazione con l’istanza database RDS per Db2.

All'avvio AWS Directory Service for Microsoft Active Directory, AWS crea un'unità organizzativa (OU) che contiene tutti gli oggetti della directory. Questa unità organizzativa, che ha lo stesso nome NetBIOS che hai immesso al momento della creazione della directory, si trova nella radice del dominio. La radice del dominio è di proprietà e gestita da AWS.

L'Adminaccount creato con la AWS Managed Microsoft AD directory dispone delle autorizzazioni per le attività amministrative più comuni dell'unità organizzativa:

  • creazione, aggiornamento o eliminazione di utenti;

  • aggiunta di risorse al dominio, come file server o server di stampa, e assegnazione delle autorizzazioni per tali risorse a utenti dell’unità organizzativa;

  • Crea contenitori aggiuntivi OUs e.

  • delega dell'autorità;

  • ripristino degli oggetti eliminati dal Cestino di Active Directory;

  • esecuzione dei moduli Active Directory e DNS (Domain Name Service) per Windows PowerShell in Directory Service.

L'account Admin dispone anche dei diritti per eseguire queste attività in tutto il dominio:

  • gestione delle configurazioni DNS (aggiunta, eliminazione o aggiornamento di record, zone e server d'inoltro);

  • visualizzazione di log di eventi DNS;

  • visualizzazione di log di eventi di sicurezza.

Per creare una directory con AWS Managed Microsoft AD
  1. Accedi a Console di gestione AWS e apri la Directory Service console all'indirizzo https://console.aws.amazon.com/directoryservicev2/.

  2. Scegli Configura directory.

  3. Scegli AWS Managed Microsoft AD. AWS Managed Microsoft AD è l'unica opzione attualmente supportata per l'uso con Amazon RDS.

  4. Scegli Next (Successivo).

  5. Nella pagina Enter directory information (Inserisci le informazioni sulla directory) inserisci le seguenti informazioni:

    • Edizione: scegli l’edizione che soddisfa i tuoi requisiti.

    • Nome DNS della directory: il nome completo della directory, ad esempio corp.example.com.

    • Nome NetBIOS della directory: un nome breve opzionale per la directory, ad esempio CORP.

    • Descrizione della directory: una descrizione opzionale della directory.

    • Password amministratore: la password per l’amministratore della directory. Durante il processo di creazione della directory viene generato un account amministratore con nome utente Admin e questa password.

      La password dell'amministratore della directory non può includere il termine "admin". La password distingue tra maiuscole e minuscole e la lunghezza deve essere compresa tra 8 e 64 caratteri. Deve anche contenere un carattere di almeno tre delle seguenti quattro categorie:

      • Lettere minuscole (a–z)

      • Lettere maiuscole (A–Z)

      • Numeri (0–9)

      • Caratteri non alfanumerici (~!@#$%^&*_-+=`|\(){}[]:;"'<>,.?/)

      • Conferma la password: digita di nuovo la password di amministratore.

        Importante

        Assicurati di salvare questa password. Directory Service non memorizza questa password e non può essere recuperata o reimpostata.

  6. Scegli Next (Successivo).

  7. Nella pagina Choose VPC and subnets (Scegli VPC e sottoreti) fornire le seguenti informazioni:

    • VPC: scegli il VPC per la directory. L’istanza database RDS per Db2 può essere creata in questo VPC o in uno diverso.

    • Sottoreti: seleziona le sottoreti per i server di directory. Le due sottoreti devono trovarsi in diverse zone di disponibilità.

  8. Seleziona Next (Successivo).

  9. Verificare le informazioni della directory Se sono necessarie modifiche, seleziona Previous (Precedente) e apporta le modifiche. Quando le informazioni sono corrette, scegli Create Directory (Crea directory).

    La finestra Rivedi e crea durante la creazione della directory nella Directory Service console.

Per creare la directory sono necessari alcuni minuti. Una volta creata correttamente la directory, il valore Status (Stato) viene modificato in Active (Attivo).

Per visualizzare informazioni sulla tua directory, seleziona l’ID della directory in ID directory. Prendere nota del valore Directory ID (ID directory). Questo valore è necessario per creare o modificare l’istanza database RDS per Db2.

La sezione dei dettagli della directory con l'ID della directory nella Directory Service console.

Fase 2: creazione di un trust

Se prevedi di utilizzare solo AWS Managed Microsoft AD, passa aFase 3: creare un ruolo IAM a cui accedere ad Amazon RDS Directory Service.

Per abilitare l’autenticazione Kerberos utilizzando Active Directory autogestito, devi creare una relazione di trust tra foreste tra Active Directory autogestito e . Un forest trust è una relazione di trust tra Microsoft AD e un Active Directory autogestito e quella AWS Managed Microsoft AD creata nel passaggio precedente. Il trust può anche essere bidirezionale, in cui entrambe le Active Directory si considerano reciprocamente attendibili. Per ulteriori informazioni sulla configurazione dei trust delle foreste utilizzando Directory Service, vedere Quando creare una relazione di trust nella AWS Directory Service Administration Guide.

Fase 3: creare un ruolo IAM a cui accedere ad Amazon RDS Directory Service

Affinché Amazon RDS possa Directory Service chiamarti, hai Account AWS bisogno di un ruolo IAM che utilizzi la policy AmazonRDSDirectoryServiceAccess IAM gestita. Questo ruolo permette ad Amazon RDS di effettuare chiamate a Directory Service.

Quando crei un'istanza DB utilizzando Console di gestione AWS e l'account utente della console dispone dell'iam:CreateRoleautorizzazione, la console crea automaticamente il ruolo IAM necessario. In questo caso, il nome del ruolo è rds-directoryservice-kerberos-access-role. In caso contrario, è necessario creare manualmente il ruolo IAM. Quando crei questo ruolo IAMDirectory Service, scegli e allega la policy AWS gestita AmazonRDSDirectoryServiceAccess ad esso.

Per ulteriori informazioni sulla creazione di ruoli IAM per un servizio, consulta Creating a role to delegate permissions to an AWS service nella IAM User Guide.

Nota

Il ruolo IAM utilizzato per l’autenticazione Windows per RDS per Microsoft SQL Server non può essere utilizzato per RDS per Db2.

Facoltativamente, puoi creare policy con le autorizzazioni richieste anziché utilizzare la policy AmazonRDSDirectoryServiceAccess gestita. In questo caso, il ruolo IAM deve avere la seguente policy di attendibilità IAM:

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

Il ruolo deve anche disporre della seguente policy del ruolo IAM:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Action": [ "ds:DescribeDirectories", "ds:AuthorizeApplication", "ds:UnauthorizeApplication", "ds:GetAuthorizedApplicationDetails" ], "Effect": "Allow", "Resource": "*" } ] }

Fase 4: creazione e configurazione di utenti

Puoi creare utenti utilizzando lo strumento Active Directory Users and Computers. Si tratta di uno degli strumenti di Active Directory Domain Services e Active Directory Lightweight Directory Services. Per ulteriori informazioni, consulta Add Users and Computers to the Active Directory domain nella documentazione di Microsoft. In questo caso, gli utenti sono persone o altre entità, ad esempio i loro computer, che fanno parte del dominio e le cui identità vengono conservate nella directory.

Per creare utenti in una Directory Service directory, devi essere connesso a un' EC2 istanza Amazon Windows basata su Amazon che fa parte della Directory Service directory. Allo stesso tempo, devi avere effettuato l’accesso come un utente che dispone dei privilegi per creare utenti. Per ulteriori informazioni, consulta Creazione di un utente nella Guida di amministrazione di AWS Directory Service .

Passaggio 5: crea un gruppo di amministratori RDS for Db2 in AWS Managed Microsoft AD

RDS per Db2 non supporta l’autenticazione Kerberos per l’utente principale o per i due utenti riservati di Amazon RDS rdsdb e rdsadmin. Invece, devi creare un nuovo gruppo chiamato masterdba in AWS Managed Microsoft AD. Per ulteriori informazioni, consulta Create a Group Account in Active Directory nella documentazione Microsoft. Tutti gli utenti aggiunti a questo gruppo avranno i privilegi dell’utente principale.

Dopo aver abilitato l’autenticazione Kerberos, l’utente principale perde il ruolo masterdba. Di conseguenza, l’utente principale non sarà in grado di accedere all’appartenenza al gruppo di utenti locali dell’istanza a meno che venga disabilitata l’autenticazione Kerberos. Per continuare a utilizzare l’utente principale con accesso tramite password, crea un utente AWS Managed Microsoft AD con lo stesso nome dell’utente principale. Quindi, aggiungi entrambi gli utenti al gruppo masterdba.

Fase 6: modifica del parametro di database

Se prevedi di utilizzarlo AWS Managed Microsoft AD solo, vai aFase 7: creazione o modifica di un’istanza database RDS per Db2.

Per abilitare l’autenticazione Kerberos utilizzando Active Directory autogestito, devi impostare il parametro AWS_MANAGED_AD_WITH_TRUST su rds.active_directory_configuration nel gruppo di parametri. Per impostazione predefinita, questo parametro è impostato solo AWS_MANAGED_AD per l'utilizzo di AWS Managed Microsoft AD.

Per informazioni sulla modifica dei parametri di database, consulta Modifica dei parametri nei gruppi di parametri.

Fase 7: creazione o modifica di un’istanza database RDS per Db2

Crea o modifica un’istanza database RDS per Db2 per l’utilizzo con la directory. Puoi utilizzare la Console di gestione AWS, la AWS CLI o l’API RDS per associare un’istanza database a una directory. Questa operazione può essere eseguita in uno dei seguenti modi:

L’autenticazione Kerberos è supportata solo per istanze database RDS per Db2 in un VPC. L’istanza database può trovarsi nello stesso VPC della directory o in un VPC diverso. L’istanza database deve utilizzare un gruppo di sicurezza che accetta traffico in ingresso e in uscita all’interno del VPC della directory, in modo che l’istanza database possa comunicare con la directory.

Quando utilizzi la console per creare, modificare o ripristinare un’istanza database, scegli Autenticazione di password e Kerberos nella sezione Autenticazione database. Quindi scegli Sfoglia directory. Seleziona la directory o scegli Crea directory per utilizzare il servizio directory.

La sezione Autenticazione database con l’opzione Autenticazione di password e Kerberos selezionata nella console Amazon RDS.

Quando si utilizza il AWS CLI, sono necessari i seguenti parametri affinché l'istanza DB possa utilizzare la directory creata:

  • Per il parametro --domain, utilizza l’identificatore di dominio (identificatore “d-*”) generato durante la creazione della directory.

  • Per il parametro --domain-iam-role-name, utilizza il ruolo creato che utilizza la policy IAM gestita AmazonRDSDirectoryServiceAccess.

Il comando seguente modifica un’istanza database per utilizzare una directory. Sostituisci i segnaposto seguenti con i tuoi valori:

  • db_instance_name— Il nome dell'istanza DB RDS for Db2.

  • directory_id— L'ID della AWS Directory Service for Microsoft Active Directory directory che hai creato.

  • role_name— Il nome del ruolo IAM che hai creato.

aws rds modify-db-instance --db-instance-identifier db_instance_name --domain d-directory_id --domain-iam-role-name role_name
Importante

Se modifichi un’istanza database per abilitare l’autenticazione Kerberos, riavvia l’istanza database dopo aver apportato la modifica.

Passaggio 8: recuperare il SID del gruppo Active Directory in PowerShell

Un ID di sicurezza (SID) identifica in modo univoco un principale di sicurezza o un gruppo di sicurezza. Quando si crea un account o un gruppo di sicurezza in Active Directory, Active Directory assegna un SID al gruppo. Per recuperare il SID del gruppo di sicurezza AD da Active Directory, usa il cmdlet Get-ADGroup in un computer client Windows che fa parte del dominio Active Directory. Il parametro Identity specifica il nome del gruppo Active Directory per cui recuperare il SID.

L’esempio seguente restituisce il SID del gruppo Active Directory adgroup1.

C:\Users\Admin> Get-ADGroup -Identity adgroup1 | select SID SID ----------------------------------------------- S-1-5-21-3168537779-1985441202-1799118680-1612

È necessario generare questa mappatura per tutti i gruppi rilevanti per il database.

Passaggio 9: aggiungere il SID alle GroupName mappature all'istanza DB RDS for Db2

È necessario aggiungere il SID alle GroupName mappature create nel passaggio precedente all'istanza DB RDS for Db2. Per ogni mappatura, chiama la seguente stored procedure. Sostituisci SID e con le tue informazioni. group_name

db2 connect to rdsadmin db2 "call rdsadmin.set_sid_group_mapping(?, 'SID','group_name')"

Per ulteriori informazioni, consulta rdsadmin.set_sid_group_mapping.

Per informazioni sulla verifica dello stato delle attività, consulta rdsadmin.get_task_status.

Fase 10: configurazione di un client Db2

Per configurare un client Db2
  1. Crea un file /etc/krb5.conf (o equivalente) che punti al dominio.

    Nota

    Per i sistemi operativi Windows, crea un file C:\windows\krb5.ini.

  2. Verifica che il traffico possa fluire tra l'host del client e Directory Service. Utilizza un’utilità di rete come Netcat per le seguenti attività:

    1. Verifica il traffico su DNS per la porta 53.

    2. Verifica il traffico verso TCP/UDP la porta 53 e versoKerberos, che include le porte 88 e 464 per Directory Service.

  3. Verifica che il traffico scorra senza problemi tra l'host client e l'istanza database sulla porta del database. Puoi utilizzare il comando db2 per connetterti e accedere al database.

L'esempio seguente è il contenuto del file /etc/krb5.conf per: AWS Managed Microsoft AD

[libdefaults] default_realm = EXAMPLE.COM [realms] EXAMPLE.COM = { kdc = example.com admin_server = example.com } [domain_realm] .example.com = EXAMPLE.COM example.com = EXAMPLE.COM