Usar uma identidade gerenciada para executar um trabalho de exportação contínua
Aplica-se a: ✅Azure Data Explorer
Um trabalho de exportação contínuo exporta dados para uma tabela externa com uma consulta executada periodicamente.
O trabalho de exportação contínua deve ser configurado com uma de identidade gerenciada
- Quando a tabela externa usa autenticação de representação
- Quando a consulta faz referência a tabelas em outros bancos de dados
- Quando a consulta faz referência a tabelas com uma diretiva de segurança em nível de linha habilitada
Um trabalho de exportação contínuo configurado com uma identidade gerenciada é executado em nome da identidade gerenciada.
Neste artigo, você aprenderá a configurar uma identidade gerenciada atribuída pelo sistema ou pelo usuário e criar um trabalho de exportação contínuo usando essa identidade.
Pré-requisitos
- Um cluster e um banco de dados. Criar um cluster e um banco de dados.
- Permissões de de administrador de todos os bancos de dados no banco de dados.
Configurar uma identidade gerenciada
Existem dois tipos de identidades gerenciadas:
atribuído pelo sistema: uma identidade atribuída ao sistema é conectada ao cluster e é removida quando o cluster é removido. Apenas uma identidade atribuída ao sistema é permitida por cluster.
atribuído pelo usuário: uma identidade gerenciada atribuída pelo usuário é um recurso autônomo do Azure. Várias identidades atribuídas pelo usuário podem ser atribuídas ao seu cluster.
Selecione uma das guias a seguir para configurar seu tipo de identidade gerenciada preferido.
Siga as etapas para Adicionar uma identidade atribuída pelo usuário.
No portal do Azure, no menu esquerdo do seu recurso de identidade gerenciado, selecione Propriedades. Copie e salve o de Id do Locatário do
e de ID Principal para uso nas etapas a seguir. Execute o seguinte comando .alter-merge policy managed_identity, substituindo-
<objectId>
pelo ID do objeto de identidade gerenciado da etapa anterior. Este comando define uma de política de identidade gerenciadano cluster que permite que a identidade gerenciada seja usada com exportação contínua. .alter-merge cluster policy managed_identity ```[ { "ObjectId": "<objectId>", "AllowedUsages": "AutomatedFlows" } ]```
Observação
Para definir a política em um banco de dados específico, use
database <DatabaseName>
em vez decluster
.Execute o seguinte comando para conceder à identidade gerenciada permissões do Visualizador de Banco de Dados sobre todos os bancos de dados usados para a exportação contínua, como o banco de dados que contém a tabela externa.
.add database <DatabaseName> viewers ('aadapp=<objectId>;<tenantId>')
Substitua
<DatabaseName>
pelo banco de dados relevante,<objectId>
pela identidade gerenciada de ID Principal da etapa 2 e<tenantId>
pela ID do Microsoft Entra de ID do Locatário da etapa 2.
Configurar uma tabela externa
As tabelas externas referem-se a dados localizados no Armazenamento do Azure, como o Armazenamento de Blobs do Azure, o Azure Data Lake Storage Gen1, o Azure Data Lake Storage Gen2 ou o SQL Server.
Selecione uma das guias a seguir para configurar um Armazenamento do Azure ou uma tabela externa do SQL Server.
- de Armazenamento do Azure
- SQL Server
Crie uma cadeia de conexão com base nos modelos de cadeia de conexão de armazenamento . Essa cadeia de caracteres indica o recurso a ser acessado e suas informações de autenticação. Para fluxos de exportação contínuos, recomendamos autenticação de representação.
Execute o comando tabela externa .create ou .alter para criar a tabela. Use a cadeia de conexão da etapa anterior como o argumento storageConnectionString.
Por exemplo, o comando a seguir cria
MyExternalTable
que se refere a dados formatados em CSV emmycontainer
demystorageaccount
no Armazenamento de Blobs do Azure. A tabela tem duas colunas, uma para umx
inteiro e outra para uma cadeia de caracteress
. A cadeia de conexão termina com;impersonate
, que indica usar a autenticação de representação para acessar o armazenamento de dados..create external table MyExternalTable (x:int, s:string) kind=storage dataformat=csv ( h@'https://mystorageaccount.blob.core.windows.net/mycontainer;impersonate' )
Conceda permissões de gravação de identidade gerenciada sobre o armazenamento de dados externo relevante. A identidade gerenciada precisa de permissões de gravação porque o trabalho de exportação contínua exporta dados para o armazenamento de dados em nome da identidade gerenciada.
Armazenamento de dados externo Permissões necessárias Conceder as permissões Armazenamento de Blobs do Azure Contribuidor de dados de Blob de armazenamento Atribuir uma função do Azure Armazenamento Data Lake Gen2 Contribuidor de dados de Blob de armazenamento Atribuir uma função do Azure Armazenamento Data Lake Gen1 Contribuidor Atribuir uma função do Azure
Criar um trabalho de exportação contínuo
Selecione uma das guias a seguir para criar um trabalho de exportação contínua executado em nome de uma identidade gerenciada atribuída pelo usuário ou pelo sistema.
Execute o comando de exportação contínua .create-or-alter com a propriedade managedIdentity
definida como a ID do objeto de identidade gerenciado.
Por exemplo, o comando a seguir cria um trabalho de exportação contínuo chamado MyExport
para exportar os dados em MyTable
para MyExternalTable
em nome de uma identidade gerenciada atribuída pelo usuário.
<objectId>
deve ser um ID de objeto de identidade gerenciado.
.create-or-alter continuous-export MyExport over (MyTable) to table MyExternalTable with (managedIdentity=<objectId>, intervalBetweenRuns=5m) <| MyTable
Conteúdo relacionado
- Visão geral da exportação contínua
- .show de exportações contínuas
- Identidades gerenciadas