Usare Microsoft Entra ID per l'autenticazione con PostgreSQL

SI APPLICA A: Database di Azure per PostgreSQL - Server singolo

Importante

Database di Azure per PostgreSQL - Server singolo si trova nel percorso di ritiro. È consigliabile eseguire l'aggiornamento a Database di Azure per PostgreSQL - Server flessibile. Per altre informazioni sulla migrazione a Database di Azure per PostgreSQL - Server flessibile, vedere What's happening to Database di Azure per PostgreSQL Single Server?.

L'autenticazione di Microsoft Entra è un meccanismo di connessione a Database di Azure per PostgreSQL tramite identità definite in Microsoft Entra ID. Con l'autenticazione di Microsoft Entra, è possibile gestire le identità utente del database e altre servizi Microsoft in una posizione centrale, semplificando la gestione delle autorizzazioni.

I vantaggi dell'uso di Microsoft Entra ID includono:

  • Autenticazione degli utenti nei servizi di Azure in modo uniforme
  • Gestione dei criteri delle password e della rotazione delle password in un'unica posizione
  • Più forme di autenticazione supportate da Microsoft Entra ID, che possono eliminare la necessità di archiviare le password
  • I clienti possono gestire le autorizzazioni del database usando gruppi esterni (Microsoft Entra ID).
  • L'autenticazione di Microsoft Entra usa i ruoli del database PostgreSQL per autenticare le identità a livello di database
  • Supporto dell'autenticazione basata su token per le applicazioni che si connettono al database di Azure per PostgreSQL

Per configurare e usare l'autenticazione di Microsoft Entra, utilizzare il processo seguente:

  1. Creare e popolare l'ID Microsoft Entra con le identità utente in base alle esigenze.
  2. Associare o modificare facoltativamente l'istanza di Active Directory attualmente associata alla sottoscrizione di Azure.
  3. Creare un amministratore di Microsoft Entra per il server Database di Azure per PostgreSQL.
  4. Creare utenti di database nel database mappati alle identità di Microsoft Entra.
  5. Connessione al database recuperando un token per un'identità e l'accesso di Microsoft Entra.

Nota

Per informazioni su come creare e popolare Microsoft Entra ID e quindi configurare l'ID Di Microsoft Entra con Database di Azure per PostgreSQL, vedere Configurare e accedere con Microsoft Entra ID per Database di Azure per PostgreSQL.

Architettura

Il diagramma generale seguente riepiloga il funzionamento dell'autenticazione usando l'autenticazione di Microsoft Entra con Database di Azure per PostgreSQL. Le frecce indicano i percorsi di comunicazione.

flusso di autenticazione

Struttura dell'account amministratore

Quando si usa l'autenticazione di Microsoft Entra, sono disponibili due account Amministrazione istrator per il server PostgreSQL, ovvero l'amministratore postgreSQL originale e l'amministratore di Microsoft Entra. Solo l'amministratore basato su un account Microsoft Entra può creare il primo utente di database indipendente di Microsoft Entra ID in un database utente. L'account di accesso dell'amministratore di Microsoft Entra può essere un utente di Microsoft Entra o un gruppo Microsoft Entra. Quando l'amministratore è un account di gruppo, può essere usato da qualsiasi membro del gruppo, abilitando più amministratori di Microsoft Entra per il server PostgreSQL. L'uso di un account di gruppo come amministratore migliora la gestibilità consentendo di aggiungere e rimuovere centralmente i membri del gruppo in Microsoft Entra ID senza modificare gli utenti o le autorizzazioni nel server PostgreSQL. È possibile configurare un solo amministratore di Microsoft Entra (utente o gruppo) alla volta.

struttura di amministrazione

Nota

L'entità servizio o l'identità gestita non possono fungere da microsoft Entra Amministrazione istrator completamente funzionante nel server singolo e questa limitazione è fissa nel server flessibile

Autorizzazioni

Per creare nuovi utenti che possono eseguire l'autenticazione con Microsoft Entra ID, è necessario avere il azure_ad_admin ruolo nel database. Questo ruolo viene assegnato configurando l'account microsoft Entra Amministrazione istrator per un server Database di Azure per PostgreSQL specifico.

Per creare un nuovo utente del database Microsoft Entra, è necessario connettersi come amministratore di Microsoft Entra. Questo è illustrato in Configurare e accedere con Microsoft Entra ID per Database di Azure per PostgreSQL.

Qualsiasi autenticazione di Microsoft Entra è possibile solo se l'amministratore di Microsoft Entra è stato creato per Database di Azure per PostgreSQL. Se l'amministratore di Microsoft Entra è stato rimosso dal server, gli utenti esistenti di Microsoft Entra creati in precedenza non possono più connettersi al database usando le credenziali di Microsoft Entra.

Connessione ing con le identità di Microsoft Entra

L'autenticazione di Microsoft Entra supporta i seguenti metodi per la connessione a un database usando le identità di Microsoft Entra:

  • Password di Microsoft Entra
  • Integrato in Microsoft Entra
  • Microsoft Entra Universal con MFA
  • Uso di certificati dell'applicazione o segreti client di Active Directory
  • Identità gestita

Dopo avere eseguito l'autenticazione con Active Directory, è possibile recuperare un token. Questo token è la password per l'accesso.

Si noti che le operazioni di gestione, ad esempio l'aggiunta di nuovi utenti, sono supportate solo per i ruoli utente di Microsoft Entra a questo punto.

Nota

Per altre informazioni su come connettersi con un token di Active Directory, vedere Configurare e accedere con Microsoft Entra ID for Database di Azure per PostgreSQL.

Considerazioni aggiuntive

  • Per migliorare la gestibilità, è consigliabile effettuare il provisioning di un gruppo di Microsoft Entra dedicato come amministratore.
  • È possibile configurare un solo amministratore di Microsoft Entra (un utente o un gruppo) per un server Database di Azure per PostgreSQL in qualsiasi momento.
  • Solo un amministratore di Microsoft Entra per PostgreSQL può inizialmente connettersi al Database di Azure per PostgreSQL usando un account Microsoft Entra. L'amministratore di Active Directory può configurare gli utenti successivi del database Microsoft Entra.
  • Se un utente viene eliminato dall'ID Microsoft Entra, tale utente non sarà più in grado di eseguire l'autenticazione con Microsoft Entra ID e pertanto non sarà più possibile acquisire un token di accesso per tale utente. In questo caso, anche se il ruolo corrispondente sarà ancora nel database, non sarà possibile connettersi al server con tale ruolo.

Nota

L'accesso con l'utente Microsoft Entra eliminato può comunque essere eseguito fino alla scadenza del token (fino a 60 minuti dall'emissione del token). Se si rimuove l'utente anche dal database di Azure per PostgreSQL, questo accesso verrà revocato immediatamente.

  • Se l'amministratore di Microsoft Entra viene rimosso dal server, il server non sarà più associato a un tenant di Microsoft Entra e pertanto tutti gli account di accesso di Microsoft Entra verranno disabilitati per il server. L'aggiunta di un nuovo amministratore di Microsoft Entra dallo stesso tenant riabiliterà gli account di accesso di Microsoft Entra.
  • Database di Azure per PostgreSQL corrisponde ai token di accesso al ruolo Database di Azure per PostgreSQL usando l'ID utente Microsoft Entra univoco dell'utente, anziché usare il nome utente. Ciò significa che se un utente di Microsoft Entra viene eliminato in Microsoft Entra ID e un nuovo utente creato con lo stesso nome, Database di Azure per PostgreSQL considera che un utente diverso. Pertanto, se un utente viene eliminato da Microsoft Entra ID e quindi un nuovo utente con lo stesso nome aggiunto, il nuovo utente non sarà in grado di connettersi con il ruolo esistente. A tale scopo, l'amministratore Database di Azure per PostgreSQL Microsoft Entra deve revocare e quindi concedere il ruolo "azure_ad_user" all'utente per aggiornare l'ID utente di Microsoft Entra.

Passaggi successivi