Condividi tramite


Configurare l'estensione Archiviazione di Azure in Database di Azure per PostgreSQL

Per poter usare l'estensione Archiviazione di Azure, è necessario seguire questa procedura:

  1. Identificare gli account di archiviazione di Azure
  2. Scegliere il tipo di autorizzazione
  3. Caricare la libreria dell'estensione
  4. Consenti l'estensione
  5. Creare l'estensione
  6. Usare l'estensione per importare ed esportare i dati

Identificare gli account di archiviazione di Azure

Identificare gli account di archiviazione di Azure in cui si vuole che gli utenti dell'estensione interagiscano, importare o esportare dati da o verso cui esportare i dati.

Scegliere il tipo di autorizzazione

Decidere quale tipo di autorizzazione si vuole usare per le richieste effettuate sul servizio BLOB di ognuno di questi account di archiviazione di Azure. azure_storage l'estensione supporta l'autorizzazione con chiave condivisa e l'autorizzazione con Microsoft Entra ID.

Di questi due tipi di autorizzazione, Microsoft Entra ID offre maggiore sicurezza e facilità d'uso tramite chiave condivisa ed è quello consigliato da Microsoft.

Per soddisfare i prerequisiti necessari in ogni caso, seguire le istruzioni nelle sezioni corrispondenti:

Per usare l'autorizzazione con Microsoft Entra ID

  1. Abilitare l'identità gestita assegnata dal sistema nell'istanza del server flessibile di Database di Azure per PostgreSQL.
  2. Riavviare l'istanza del server flessibile di Database di Azure per PostgreSQL dopo aver abilitato un'identità gestita assegnata dal sistema.
  3. Assegnare le autorizzazioni di controllo degli accessi in base al ruolo per l'accesso ai dati BLOB nell'account di archiviazione di Azure all'identità gestita assegnata dal sistema dell'istanza del server flessibile di Database di Azure per PostgreSQL.

Abilitare l'identità gestita assegnata dal sistema

Screenshot dell'abilitazione dell'identità gestita assegnata dal sistema.

Per usare l'autorizzazione con chiave condivisa

  1. Verificare che l'account di archiviazione consenta l'accesso alla chiave
  2. Recuperare una delle due chiavi di accesso dell'account di archiviazione

Verificare che l'account di archiviazione consenta l'accesso alla chiave

L'account di archiviazione di Azure deve avere l'opzione Consenti l'accesso alla chiave dell'account di archiviazione abilitata, ovvero non può avere la proprietà AllowSharedKeyAccess impostata su false.

Screenshot della conferma che l'opzione Consenti l'accesso alla chiave dell'account di archiviazione è abilitata.

Recuperare una delle due chiavi di accesso dell'account di archiviazione

Per passarlo alla funzione azure_storage.account_add , recuperare una delle due chiavi di accesso dell'account di archiviazione di Azure.

Screenshot della copia della chiave di accesso dell'account di archiviazione.

Caricare la libreria dell'estensione

Configurare il server in modo che carichi il azure_storage modulo binario all'avvio.

Screenshot della selezione di azure_storage in shared_preload_libraries nei parametri del server. shared_preload_libraries Poiché è statico, il server deve essere riavviato per rendere effettiva una modifica: screenshot della finestra di dialogo visualizzata quando si modifica shared_preload_libraries, per salvare e riavviare.

Consenti l'estensione

È necessario consentire l'elenco delle estensioni in modo che gli utenti possano eseguire CREATE EXTENSION, DROP EXTENSION, ALTER EXTENSION, COMMENT ON EXTENSION.

Screenshot della selezione di azure_storage in azure.extensions nei parametri del server.

Creare l'estensione

Usare il client delle preferenze, ad esempio PostgreSQL per Visual Studio Code (anteprima),psql o PgAdmin, per connettersi al database in cui si vuole usare l'estensione Archiviazione di Azure.

Per creare tutti gli oggetti SQL (tabelle, tipi, funzioni, viste e così via) con cui è possibile usare l'estensione azure_storage per interagire con le istanze degli account di archiviazione di Azure, eseguire l'istruzione seguente:

CREATE EXTENSION azure_storage;

Usare l'estensione per importare ed esportare i dati

A questo momento si è pronti per aggiungere gli account di archiviazione con cui si vuole interagire (usando la azure_storage.account_add funzione ). È quindi possibile importare i dati archiviati in file negli account di archiviazione di Azure usando la azure_storage.blob_get funzione o l'istruzione COPY FROM oppure è possibile esportare i dati da PostgreSQL in file in un account di archiviazione di Azure usando la azure_storage.blob_put funzione o l'istruzione COPY TO .

Vedere l'elenco degli esempi di avvio rapido:

Nel caso in cui sia necessario esaminare tutte le funzioni offerte dall'estensione e tutti i dettagli su ognuno di essi, esaminare il riferimento completo:

Inoltre, se è necessario eseguire alcune operazioni di risoluzione dei problemi, esaminare l'elenco degli errori che l'estensione può produrre e il contesto in cui possono essere generati.

Importante

Per i tipi di autenticazione per i quali è necessario fornire una chiave di accesso dell'account di archiviazione di Azure, si noti che le chiavi di accesso di Archiviazione di Azure sono simili a una password radice per l'account di archiviazione. Prestare sempre attenzione a proteggerli. Usare Azure Key Vault per gestire e ruotare le chiavi in modo sicuro. azure_storage l'estensione archivia tali chiavi in una tabella azure_storage.accounts, leggibile dai membri del pg_read_all_data ruolo.