Configurazione dell'autenticazione Windows per le istanze SQL del database del server - 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 Windows per le istanze SQL del database del server

Si utilizza AWS Directory Service for Microsoft Active Directory, chiamata anche AWS Managed Microsoft AD, per configurare l'autenticazione di Windows per un'istanza di SQL Server DB. Per configurare l'autenticazione di Windows, attieniti alla seguente procedura.

Passaggio 1: creare una directory utilizzando il AWS Directory Service for Microsoft Active Directory

AWS Directory Service crea una Microsoft Active Directory nel AWS cloud completamente gestita. Quando crei una AWS Managed Microsoft AD directory, AWS Directory Service crea due controller di dominio e server Domain Name Service (DNS) per tuo conto. I server di directory vengono creati in due sottoreti in due diverse zone di disponibilità all'interno di un. VPC Questa ridondanza assicura che la directory rimanga accessibile anche se si verifica un errore.

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

  • Configura un Microsoft Active Directory all'interno diVPC.

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

  • Crea un gruppo di sicurezza per i controller della directory.

Quando si avvia un AWS Directory Service for Microsoft Active Directory, AWS crea un'unità organizzativa (OU) che contiene tutti gli oggetti della directory. Questa unità organizzativa, con il BIOS nome di rete digitato al momento della creazione della directory, si trova nella radice del dominio. La radice del dominio è di proprietà e gestita da AWS.

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

  • Creazione, aggiornamento o eliminazione di utenti, gruppi e computer.

  • Aggiunta di risorse al tuo dominio, come file o server di stampa, quindi assegnazione delle autorizzazioni per tali risorse a utenti e gruppi dell'UO;

  • Crea contenitori aggiuntivi OUs e.

  • delega dell'autorità;

  • creazione e collegamento policy di gruppo;

  • ripristino degli oggetti eliminati dal cestino riciclaggio di Active Directory;

  • Esegui PowerShell i moduli AD e DNS Windows sul servizio Web Active Directory.

L'account admin dispone inoltre dei diritti per eseguire le seguenti attività estese a tutto il dominio:

  • Gestisci DNS le configurazioni (aggiungi, rimuovi o aggiorna record, zone e server d'inoltro).

  • Visualizza i registri DNS degli eventi.

  • visualizzazione di log di eventi di sicurezza.

Per creare una directory con AWS Managed Microsoft AD
  1. Nel riquadro di navigazione della console AWS Directory Service, scegliere Directories (Directory), quindi selezionare Set up directory (Configurazione della directory).

  2. Scegliere AWS Managed Microsoft AD. Questa è l'unica opzione attualmente supportata per l'uso con AmazonRDS.

  3. Scegli Next (Successivo).

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

    Edizione

    Scegliere l'edizione più adatta alle proprie esigenze.

    DNSNome della directory

    Il nome completo della directory, ad esempio corp.example.com. I nomi più lunghi di 47 caratteri non sono supportati dal SQL Server.

    Directory Net BIOS name

    Nome breve opzionale della directory, ad esempio CORP.

    Descrizione della directory

    Descrizione opzionale della directory.

    Password amministratore

    La password dell'amministratore della directory. Con il processo di creazione della directory viene generato un account amministratore con il 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 (~!@#$%^&*_-+=`|\(){}[]:;"'<>,.?/)

    Confirm password (Conferma password)

    Digitare di nuovo la password dell'amministratore.

  5. Scegli Next (Successivo).

  6. Nella pagina Scegli VPC e sottoreti, fornisci le seguenti informazioni:

    VPC

    Scegli la cartella VPC per la cartella.

    Nota

    Puoi localizzare la directory e l'istanza DB in modo diversoVPCs, ma se lo fai, assicurati di abilitare il VPC traffico incrociato. Per ulteriori informazioni, consulta Passaggio 4: abilitare il VPC traffico incrociato tra la directory e l'istanza DB.

    Sottoreti

    Seleziona le sottoreti per i server di directory. Le due sottoreti devono trovarsi in diverse zone di disponibilità.

  7. Scegli Next (Successivo).

  8. Verificare le informazioni della directory Se sono necessarie modifiche, selezionare Previous (Precedente). Quando le informazioni sono corrette, scegli Create Directory (Crea directory).

    Revisione e creazione della pagina

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

Per consultare le informazioni sulla directory, selezionare l’ID della directory nell'elenco di directory. Prendere nota del valore Directory ID (ID directory). Questo valore è necessario quando si crea o si modifica l'istanza di SQL Server DB.

Pagina dei dettagli della directory

Passaggio 2: creare il IAM ruolo per l'utilizzo da parte di Amazon RDS

Se utilizzi la console per creare l'istanza di SQL Server DB, puoi saltare questo passaggio. Se utilizzi CLI o RDS API per creare l'istanza SQL Server DB, devi creare un IAM ruolo che utilizzi la IAM policy AmazonRDSDirectoryServiceAccess gestita. Questo ruolo consente RDS ad Amazon di effettuare chiamate al AWS Directory Service posto tuo.

Se utilizzi una politica personalizzata per l'aggiunta a un dominio, anziché utilizzare la AmazonRDSDirectoryServiceAccess politica AWS-managed, assicurati di consentire l'ds:GetAuthorizedApplicationDetailsazione. Questo requisito entrerà in vigore a partire da luglio 2019, a causa di una modifica del AWS Directory Service API.

La seguente IAM politica fornisce AmazonRDSDirectoryServiceAccess l'accesso a AWS Directory Service.

Esempio IAMpolitica per fornire l'accesso a AWS Directory Service
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ds:DescribeDirectories", "ds:AuthorizeApplication", "ds:UnauthorizeApplication", "ds:GetAuthorizedApplicationDetails" ], "Effect": "Allow", "Resource": "*" } ] }

Si consiglia di utilizzare le chiavi di contesto delle condizioni globali aws:SourceArn e aws:SourceAccount nelle relazioni di trust basate sulle risorse per limitare le autorizzazioni del servizio relative a una risorsa specifica. Questo è il modo più efficace per proteggersi dal problema di deputy confused.

Puoi usare le chiavi di contesto delle condizioni globali e avere il valore aws:SourceArn che contiene l'ID dell'account. In questo caso, il valore aws:SourceAccount e l'account nel valore aws:SourceArn deve utilizzare lo stesso ID account quando viene utilizzato nella stessa istruzione.

  • Utilizzare aws:SourceArn se si desidera un accesso cross-service per una singola risorsa.

  • Utilizzare aws:SourceAccount se si desidera consentire l'associazione di qualsiasi risorsa in tale account all'uso cross-service.

Nella relazione di fiducia, assicurati di utilizzare la chiave aws:SourceArn global condition context con l'Amazon Resource Name completo (ARN) delle risorse che accedono al ruolo. Per l'autenticazione Windows, assicurati di includere le istanze database, come mostrato nell'esempio seguente.

Esempio relazione di affidabilità con la chiave di contesto delle condizioni globali per l'autenticazione di Windows
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceArn": [ "arn:aws:rds:Region:my_account_ID:db:db_instance_identifier" ] } } } ] }

Crea un IAM ruolo utilizzando questa IAM politica e questa relazione di fiducia. Per ulteriori informazioni sulla creazione di IAM ruoli, vedere Creazione di politiche gestite dai clienti nella Guida IAM per l'utente.

Fase 3: creazione e configurazione di utenti e gruppi

Puoi creare utenti e gruppi con lo strumento Utenti Active Directory e computer. Questo è uno degli strumenti Active Directory Domain Services e Active Directory Lightweight Directory Services. Gli utenti possono essere individui singoli o entità che hanno accesso alla tua directory. I gruppi sono molto utili per concedere o negare privilegi ai gruppi di utenti, piuttosto che dover applicare tali privilegi a ogni singolo utente.

Per creare utenti e gruppi in una AWS Directory Service directory, devi essere connesso a un'EC2istanza di Windows che fa parte della AWS Directory Service directory. Devi anche essere connesso come un utente che dispone dei privilegi per creare utenti e gruppi. Per ulteriori informazioni, consulta Aggiungere utenti e gruppi (Simple AD e AWS Managed Microsoft AD) nella Guida all'AWS Directory Service amministrazione.

Passaggio 4: abilitare il VPC traffico incrociato tra la directory e l'istanza DB

Se intendi collocare la directory e l'istanza DB nella stessa posizioneVPC, salta questo passaggio e passa aPassaggio 5: creare o modificare un'istanza SQL Server DB.

Se prevedi di localizzare la directory e l'istanza DB in modo diversoVPCs, configura il VPC traffico incrociato utilizzando il VPC peering o il AWS Transit Gateway.

La procedura seguente abilita il traffico tra un VPCs utilizzo e l'altro del VPC peering. Segui le istruzioni riportate in Cos'è il VPC peering? nella Amazon Virtual Private Cloud Peering Guide.

Per abilitare il VPC traffico incrociato utilizzando il peering VPC
  1. Imposta le regole di VPC routing appropriate per garantire che il traffico di rete possa fluire in entrambe le direzioni.

  2. Assicurarsi che il gruppo di protezione dell'istanza database possa ricevere traffico in entrata dal gruppo di sicurezza della directory.

  3. Assicurati che non esista una regola della lista di controllo degli accessi alla rete (ACL) per bloccare il traffico.

Se la directory è di proprietà di un altro AWS account, è necessario condividerla.

Per condividere la cartella tra AWS account
  1. Inizia a condividere la directory con l' AWS account in cui verrà creata l'istanza DB seguendo le istruzioni riportate nel Tutorial: Sharing your AWS Managed Microsoft AD directory for seamless EC2 domain-join nella Administration Guide.AWS Directory Service

  2. Accedi alla AWS Directory Service console utilizzando l'account per l'istanza DB e assicurati che il dominio abbia lo stato prima di procedere. SHARED

  3. Dopo aver effettuato l'accesso alla AWS Directory Service console utilizzando l'account per l'istanza DB, annota il valore Directory ID. Utilizzare questo ID directory per aggiungere l'istanza database al dominio.

Passaggio 5: creare o modificare un'istanza SQL Server DB

Crea o modifica un'istanza di SQL Server DB da utilizzare con la tua directory. È possibile utilizzare la console o associare un'istanza DB RDS API a una directory. CLI Questa operazione può essere eseguita in uno dei seguenti modi:

L'autenticazione di Windows è supportata solo per le istanze SQL Server DB in aVPC.

Affinché l'istanza database sia in grado di utilizzare la directory del dominio creata, è richiesto quanto segue:

  • Per Directory, devi scegliere l'identificatore di dominio (d-ID) generato durante la creazione della directory.

  • Assicurati che il gruppo VPC di sicurezza disponga di una regola in uscita che consenta all'istanza DB di comunicare con la directory.

Directory di autenticazione Microsoft SQL Server Windows

Quando si utilizza la 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 (d-ID) generato durante la creazione della directory.

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

Ad esempio, il CLI comando seguente modifica un'istanza DB per utilizzare una directory.

In Linux, macOS, oppure Unix:

aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --domain d-ID \ --domain-iam-role-name role-name

In Windows:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --domain d-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 6: Creare gli accessi al SQL server di autenticazione Windows

Utilizza le credenziali dell'utente RDS master Amazon per connetterti all'istanza DB SQL Server come fai con qualsiasi altra istanza DB. Poiché l'istanza DB è aggiunta al AWS Managed Microsoft AD dominio, puoi fornire gli accessi e gli utenti SQL del server. Questa operazione viene eseguita dagli utenti e dai gruppi Active Directory nel dominio. Le autorizzazioni del database vengono gestite tramite le autorizzazioni standard SQL del server concesse e revocate a questi accessi Windows.

Affinché un utente di Active Directory possa autenticarsi con SQL Server, deve esistere un accesso a SQL Server Windows per l'utente o il gruppo di cui l'utente è membro. Il controllo granulare degli accessi viene gestito mediante la concessione e la revoca delle autorizzazioni su questi accessi al Server. SQL Un utente che non dispone di un accesso al SQL server o appartiene a un gruppo con tale accesso non può accedere all'istanza del database del server. SQL

L'ALTERANYLOGINautorizzazione è necessaria per creare un accesso al SQL server Active Directory. Se non hai creato alcun accesso con questa autorizzazione, connettiti come utente principale dell'istanza DB utilizzando l'autenticazione del SQL server.

Esegui un comando Data Definition Language (DDL) come nell'esempio seguente per creare un accesso al SQL server per un utente o un gruppo di Active Directory.

Nota

Specifica utenti o gruppi utilizzando il nome di accesso precedente a Windows 2000 nel formato domainName\login_name. Non è possibile utilizzare il nome principale di un utente (UPN) nel formato login_name@DomainName.

È possibile creare un accesso di autenticazione Windows solo su un'istanza RDS for SQL Server utilizzando le istruzioni T. SQL Non è possibile utilizzare SQL Server Management Studio per creare un accesso di autenticazione di Windows.

USE [master] GO CREATE LOGIN [mydomain\myuser] FROM WINDOWS WITH DEFAULT_DATABASE = [master], DEFAULT_LANGUAGE = [us_english]; GO

Per ulteriori informazioni, vedere CREATELOGIN(Transact-SQL) nella documentazione di Microsoft Developer Network.

Gli utenti (sia umani che applicazioni) del tuo dominio possono ora connettersi all'istanza RDS for SQL Server da un computer client aggiunto al dominio utilizzando l'autenticazione Windows.