Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Você deve seguir estas etapas para poder usar a extensão de Armazenamento do Azure:
- Identificar contas de Armazenamento do Azure
- Escolher tipo de autorização
- Carregar a biblioteca da extensão
- Lista de permissões da extensão
- Criar a extensão
- Usar a extensão para importar e exportar dados
Identificar as contas de Armazenamento do Azure
Identifique as contas de Armazenamento do Azure com as quais você deseja que os usuários da extensão interajam, importem dados ou exportem dados para.
Escolher tipo de autorização
Decida qual tipo de autorização você deseja usar para as solicitações feitas no serviço de blob de cada uma dessas contas do Armazenamento do Azure.
azure_storage A extensão dá suporte à autorização com a Chave Compartilhada e à autorização com a ID do Microsoft Entra.
Desses dois tipos de autorização, a ID do Microsoft Entra fornece segurança superior e facilidade de uso sobre a Chave Compartilhada e é a que a Microsoft recomenda.
Para atender aos pré-requisitos necessários em cada caso, siga as instruções nas seções correspondentes:
Para usar a autorização com a ID do Microsoft Entra
- Habilite a Identidade Gerenciada Atribuída pelo Sistema em sua instância de servidor flexível do Banco de Dados do Azure para PostgreSQL.
- Reinicie a instância do servidor flexível do Banco de Dados do Azure para PostgreSQL depois de habilitar uma identidade gerenciada atribuída pelo sistema nele.
- Atribua permissões de RBAC (controle de acesso baseado em função) para acesso aos dados de blob, na conta de Armazenamento do Azure, à Identidade Gerenciada Atribuída pelo Sistema de sua instância do servidor flexível do Banco de Dados do Azure para PostgreSQL.
Habilitar identidade gerenciada atribuída pelo sistema
Para usar a autorização com chave compartilhada
- Confirme se a conta de armazenamento permite acesso à chave
- Buscar uma das duas chaves de acesso da conta de armazenamento
Confirme se a conta de armazenamento permite acesso à chave
Sua conta de Armazenamento do Azure deve ter o acesso à chave da conta de armazenamento habilitado (ou seja, ele não pode ter sua propriedade AllowSharedKeyAccess definida como false).
Buscar uma das duas chaves de acesso da conta de armazenamento
Para passá-la para a função azure_storage.account_add , busque uma das duas chaves de acesso da conta de Armazenamento do Azure.
Carregar a biblioteca da extensão
Configure o servidor para que ele carregue o azure_storage módulo binário quando ele for iniciado.
Como o shared_preload_libraries está estático, o servidor deve ser reiniciado para que uma alteração entre em vigor:
Lista de permissões da extensão
Você deve permitir a lista de permissões da extensão para que os usuários possam executar CREATE EXTENSION, DROP EXTENSION, ALTER EXTENSION, COMMENT ON EXTENSION.
Criar a extensão
Use o cliente de sua preferência, como PostgreSQL para Visual Studio Code (versão prévia),psql ou PgAdmin, para se conectar ao banco de dados no qual você deseja usar a extensão de Armazenamento do Azure.
Para criar todos os objetos SQL (tabelas, tipos, funções, exibições etc.) com os quais você pode usar a azure_storage extensão para interagir com instâncias de contas de Armazenamento do Azure, execute a seguinte instrução:
CREATE EXTENSION azure_storage;
Usar a extensão para importar e exportar dados
Agora você está pronto para adicionar as contas de armazenamento com as quais deseja interagir (usando a azure_storage.account_add função). Em seguida, você pode importar dados armazenados em arquivos em contas de Armazenamento do Azure usando a azure_storage.blob_get função ou a COPY FROM instrução ou exportar dados do PostgreSQL para arquivos em uma conta de Armazenamento do Azure usando a azure_storage.blob_put função ou a COPY TO instrução.
Confira a lista de exemplos de início rápido:
- Criar uma conta de Armazenamento do Azure e preenchê-la com dados
- Criar uma tabela na qual os dados são carregados
- Adicionar a chave de acesso da conta de armazenamento
- Conceder acesso a um usuário ou função na referência de armazenamento de Blobs do Azure
- Listar todos os blobs em um contêiner
- Listar blobs com um prefixo de nome específico
- Importar dados usando uma instrução COPY FROM
- Exportar dados usando uma instrução COPY TO
- Ler conteúdo de um blob
- Ler, filtrar e modificar o conteúdo lido de um blob
- Ler o conteúdo do arquivo com opções personalizadas (cabeçalhos, delimitadores de coluna, caracteres de escape)
- Usar a opção de decodificador
- Agregações de computação sobre o conteúdo de um blob
- Gravar conteúdo em um blob
- Listar todas as referências às contas de armazenamento do Azure
- Revogar o acesso de um usuário ou função na referência de armazenamento de Blobs do Azure
- Remover referência à conta de armazenamento
Caso precise examinar todas as funções oferecidas pela extensão e todos os detalhes sobre cada uma delas, examine a referência completa:
- azure_storage.account_add
- azure_storage.account_options_managed_identity
- azure_storage.account_options_credentials
- azure_storage.account_options
- azure_storage.account_remove
- azure_storage.account_user_add
- azure_storage.account_user_remove
- azure_storage.account_list
- azure_storage.blob_list
- azure_storage.blob_get
- azure_storage.blob_put
- azure_storage.options_csv_get
- azure_storage.options_copy
- azure_storage.options_tsv
- azure_storage.options_binary
E, se você precisar fazer alguma solução de problemas, examine a lista de erros que a extensão pode produzir e o contexto no qual elas podem ser geradas.
Importante
Para tipos de autenticação para os quais você deve fornecer uma chave de acesso da conta de Armazenamento do Azure, observe que as chaves de acesso do Armazenamento do Azure são semelhantes a uma senha raiz para sua conta de armazenamento. Sempre tenha cuidado para protegê-los. Utilize o Azure Key Vault para gerenciar e girar suas chaves com segurança.
azure_storage A extensão armazena essas chaves em uma tabela azure_storage.accounts, que é legível por membros da pg_read_all_data função.