Salta al contenuto

Come posso risolvere i problemi dell'autenticazione di Windows in Amazon RDS per SQL Server con Microsoft AD gestito da AWS?

6 minuti di lettura
0

Ho configurato Servizio di directory AWS per Microsoft Active Directory per il mio account AWS. Riscontro problemi quando provo a creare un Amazon Relational Database Service (Amazon RDS) per l'istanza database di Microsoft SQL Server.

Breve descrizione

Quando crei un'istanza database Amazon RDS per SQL Server, potresti riscontrare uno dei seguenti problemi:

  • Microsoft AD gestito da AWS non è disponibile.
  • Ricevi il messaggio di errore "Failed to join a host to a domain" oppure lo stato della directory sulla console Amazon Aurora e RDS indica Failed (Non riuscito).
  • Non riesci a utilizzare l'autenticazione di Windows per accedere all'istanza database.

Puoi utilizzare l'autenticazione di Windows per istanze database RDS per SQL Server in più account AWS e cloud privati virtuali (VPC). Puoi anche condividere una directory di Microsoft AD gestito da AWS in più account e VPC per gestire carichi di lavoro del database consapevoli della directory. Tuttavia, le istanze database RDS per SQL Server devono trovarsi nella stessa Regione AWS della directory di Microsoft AD gestito da AWS.

Risoluzione

Nota: se ricevi errori quando esegui i comandi dell’Interfaccia della linea di comando AWS (AWS CLI), consulta Risoluzione degli errori relativi a AWS CLI. Inoltre, assicurati di utilizzare la versione più recente di AWS CLI.

Microsoft AD gestito da AWS non è elencato o non è disponibile quando crei un'istanza database

Importante: per elencare Microsoft AD gestito da AWS sulla console Aurora e RDS, il tipo di dominio gestito deve essere Active Directory gestito da AWS.

Se Microsoft AD gestito da AWS si trova in una Regione diversa dall'istanza database, Amazon RDS non elencherà la directory quando crei o modifichi l'istanza database. Per risolvere il problema, assicurati che l'istanza database si trovi nella stessa Regione della directory.

Per verificare che l'istanza database si trovi nella stessa Regione della directory, completa i seguenti passaggi:

  1. Apri la console Aurora e RDS.
  2. Nel pannello di navigazione scegli Databases (Database).
  3. Seleziona l'istanza database.
  4. Nella sezione Summary (Riepilogo) annota la Region (Regione) in cui si trova l'istanza database.
  5. Utilizza la console Servizio di directory AWS per verificare che la directory si trovi nella stessa Regione dell'istanza database.

Se Microsoft AD gestito da AWS si trova in un account diverso rispetto all'istanza database, completa i seguenti passaggi:

  1. Condividi la directory con l'account AWS in cui desideri creare l'istanza database.
  2. Apri la console Servizio di directory AWS utilizzando l'account per l'istanza database.
  3. Verifica che il dominio sia nello stato SHARED (CONDIVISO).
  4. Utilizza il valore Directory ID (ID directory) per unire l'istanza database al dominio.

Ricevi un errore o Directory Status (Stato della directory) mostra Failed (Non riuscito) quando unisci un'istanza database a un dominio

Quando aggiungi un'istanza database a un dominio, potresti ricevere il messaggio d'errore "Failed to join a host to a domain. Domain membership status for instance XXXXXXX has been set to Failed". Oppure lo stato della directory potrebbe apparire come Failed (Non riuscito).

Per risolvere l'errore di aggiunta al dominio, completa i seguenti passaggi:

  1. Verifica di aver configurato il gruppo di sicurezza dell'istanza RDS per SQL Server per consentire il seguente traffico in uscita:
    Porta TCP e UDP 53
    Porta TCP e UDP 88
    Porta TCP e UDP 135
    Porta TCP e UDP 389
    Porta TCP e UDP 445
    Porta TCP e UDP 464
    Porta TCP 636
    Porta TCP 3268
    Porta TCP 3269
    Porta TCP 9389
    Porte TCP 49152-65535
    Porta UDP 123
    Porta UDP 138
  2. Verifica di aver configurato il gruppo di sicurezza di Microsoft AD gestito da AWS per consentire il traffico in entrata corretto.
    Nota: quando crei un gruppo Microsoft AD gestito da AWS, Servizio di directory AWS crea un gruppo di sicurezza. Per l'elenco delle regole in entrata e in uscita aggiunte al gruppo di sicurezza, consulta Cosa viene creato con il tuo AWS Microsoft AD gestito.
  3. Verifica se l'istanza database e Microsoft AD gestito da AWS si trovano in VPC o account diversi.
    Nota: in tal caso, assicurati che esista una route corretta per connettere l'istanza database a Microsoft AD gestito da AWS. Inoltre, assicurati che esista una route corretta per consentire a Microsoft AD gestito di raggiungere l'istanza database.

Dopo aver identificato e risolto le potenziali cause dell'errore di unione al dominio, completa i seguenti passaggi per unire nuovamente l'istanza database al dominio:

  1. Apri la console Aurora e RDS.
  2. Nel pannello di navigazione scegli Databases (Database).
  3. Seleziona l'istanza database che non si è unita al dominio, quindi scegli Modify (Modifica).
  4. Nella sezione Microsoft SQL Server Windows Authentication (Autenticazione Microsoft SQL Server Windows), per Directory (Directory), scegli None (Nessuna).
  5. Scegli Apply immediately (Applica immediatamente).
    Nota: una volta completata la modifica, l'istanza database si riavvia automaticamente.
  6. Nel pannello di navigazione scegli Databases (Database).
  7. Seleziona l'istanza database, quindi scegli Modify (Modifica).
  8. Nella sezione Microsoft SQL Server Windows Authentication (Autenticazione Microsoft SQL Server Windows), per Directory (Directory), scegli la directory.
  9. Scegli Apply immediately (Applica immediatamente).
    Nota: al termine della modifica, l'istanza database si riavvia nuovamente.

Si verifica un errore InvalidParameterCombination quando chiami l'operazione ModifyDBInstance

Quando chiami l'operazione ModifyDBInstance, potresti ricevere il messaggio di errore "IAM role provided is not valid, check that the role exists and has the correct policies".

Utilizza il ruolo AWS Identity and Access Management (AWS IAM) rds-directoryservice-access-role predefinito quando colleghi un servizio di directory all'istanza database con AWS CLI.

Se utilizzi un ruolo personalizzato, collega la policy predefinita AmazonRDSDirectoryServiceAccess al ruolo personalizzato.

Impossibile utilizzare l'autenticazione di Windows per accedere all'istanza database

L'autenticazione di Windows richiede un accesso SQL all'istanza per l'utente o il gruppo Microsoft AD gestito da AWS. L'accesso SQL utilizza le credenziali dell'utente principale dell'istanza database. Se utilizzi gruppi o utenti in Microsoft Active Directory on-premises, devi creare una relazione di attendibilità.

Per creare una relazione di attendibilità, completa i seguenti passaggi:

  1. Accedi all'istanza database come utente principale utilizzando SQL Server Management Studio (SSMS).
  2. Esegui questo comando per creare l'accesso di autenticazione di Windows:
    CREATE LOGIN [Domain Name\user or group] FROM WINDOWS WITH DEFAULT_DATABASE = [master], DEFAULT_LANGUAGE = [us_english];
    Nota: sostituisci Domain Name\user or group (Nome di dominio\utente o gruppo) con il tuo nome di dominio e l'utente o il gruppo che desideri utilizzare. Quando crei un accesso dell'autenticazione di Windows su un'istanza RDS per SQL Server, devi utilizzare T-SQL. Non puoi utilizzare l'interfaccia utente grafica (GUI) per creare un accesso in SQL SSMS.
  3. Utilizza l'autenticazione di Windows per connetterti all'istanza database.

Informazioni correlate

Utilizzo di Active Directory AWS gestita con RDS per SQL Server

Impossibile connettersi all'istanza database di Amazon RDS

Joining your Amazon RDS DB instances across accounts to a single shared domain (Unione di istanze database Amazon RDS multi-account a un unico dominio condiviso)

Migrating Microsoft SQL Server databases to the AWS Cloud (Migrazione dei database Microsoft SQL Server sul cloud AWS)