Administração de dados
Saiba como gerir o acesso a dados e como autenticar no Azure Machine Learning.
APLICA-SE A:Azure CLI ml extension v2 (current)Python SDK azure-ai-ml v2 (current)
Importante
Este artigo destina-se a administradores do Azure que desejam criar a infraestrutura necessária para uma solução do Azure Machine Learning.
Autenticação de dados baseada em credenciais
Em geral, a autenticação de dados baseada em credenciais envolve as seguintes verificações:
Verifique se o usuário que acessa dados do armazenamento de dados baseado em credenciais tem uma função atribuída com RBAC (controle de acesso baseado em função) que contém
Microsoft.MachineLearningServices/workspaces/datastores/listsecrets/action
Essa permissão é necessária para recuperar credenciais do armazenamento de dados para o usuário.
Funções internas que já contêm essa permissão:
- Contribuinte
- Azure AI Developer
- Cientista de Dados do Azure Machine Learning
- Como alternativa, se uma função personalizada for aplicada, essa permissão deverá ser adicionada a essa função personalizada
Você deve saber qual usuário específico deseja acessar os dados. Um usuário específico pode ser um usuário real com uma identidade de usuário. Também pode ser um computador com identidade gerenciada por computação (MSI). Para obter mais informações, visite a seção Cenários e opções de autenticação para determinar a identidade que precisa da permissão adicionada.
A credencial armazenada (entidade de serviço, chave de conta ou token de assinatura de acesso compartilhado) tem acesso ao recurso de dados?
Autenticação de dados baseada em identidade
Em geral, a autenticação de dados baseada em identidade envolve estas verificações:
- Que utilizador pretende aceder aos recursos?
- Diferentes tipos de autenticação estão disponíveis, dependendo do contexto no momento em que os dados são acessados. Por exemplo:
- Identidade do utilizador
- Identidade gerenciada por computação
- Identidade gerenciada do espaço de trabalho
- Os trabalhos, incluindo a opção de conjunto
Generate Profile
de dados, são executados em um recurso de computação em sua assinatura e acessam os dados desse local. A identidade gerenciada por computação precisa de permissão para acessar o recurso de armazenamento, em vez da identidade do usuário que enviou o trabalho. - Para autenticação baseada em uma identidade de usuário, você deve saber qual usuário específico tentou acessar o recurso de armazenamento. Para obter mais informações sobre autenticação de usuário , visite Autenticação para Aprendizado de Máquina do Azure. Para obter mais informações sobre a autenticação de nível de serviço, visite Autenticação entre o Azure Machine Learning e outros serviços.
- Diferentes tipos de autenticação estão disponíveis, dependendo do contexto no momento em que os dados são acessados. Por exemplo:
- Este usuário tem permissão de leitura para o recurso?
- A identidade do usuário ou a identidade gerenciada por computação tem as permissões necessárias para esse recurso de armazenamento? As permissões são concedidas usando o Azure RBAC.
- O Leitor da conta de armazenamento lê os metadados de armazenamento.
- O Storage Blob Data Reader lê e lista contêineres e blobs de armazenamento.
- O Storage File Data Privileged Reader reaeds e lista arquivos e diretórios em compartilhamentos de arquivos do Azure.
- Para obter mais informações, visite Azure built-in roles for storage.
- Este usuário tem permissão de gravação para o recurso?
- A identidade do usuário ou a identidade gerenciada por computação tem as permissões necessárias para esse recurso de armazenamento? As permissões são concedidas usando o Azure RBAC.
- O Leitor da conta de armazenamento lê os metadados de armazenamento.
- O Contribuidor de Dados de Blobs de Armazenamento lê, escreve e elimina os contentores e blobs do Armazenamento do Azure.
- O Colaborador Privilegiado de Dados de Arquivo de Armazenamento lê, grava, exclui e modifica listas de controle de acesso em arquivos e diretórios em compartilhamentos de arquivos do Azure.
- Para obter mais informações, visite Azure built-in roles for storage.
Outras verificações gerais de autenticação
- O que exatamente terá acesso ao recurso?
- Usuário: O endereço IP do cliente está no intervalo de rede/sub-rede virtual?
- Espaço de trabalho: O espaço de trabalho é público ou tem um ponto de extremidade privado em uma rede/sub-rede virtual?
- Armazenamento: o armazenamento permite acesso público ou restringe o acesso por meio de um ponto de extremidade de serviço ou de um ponto de extremidade privado?
- Qual é a operação prevista?
- Identificadores do Azure Machine Learning
- Criar
- Ler
- Atualização
- Delete (CRUD) operações em um armazenamento/conjunto de dados.
- As operações de arquivamento em ativos de dados no estúdio de Aprendizado de Máquina do Azure exigem esta operação RBAC:
Microsoft.MachineLearningServices/workspaces/datasets/registered/delete
- As chamadas de acesso a dados (por exemplo, visualização ou esquema) vão para o armazenamento subjacente e exigem permissões extras.
- Identificadores do Azure Machine Learning
- Essa operação será executada em uma assinatura, recursos de computação do Azure ou recursos hospedados em uma assinatura da Microsoft?
- Todas as chamadas para serviços de conjunto de dados e armazenamento de dados (exceto a
Generate Profile
opção) usam recursos hospedados em uma assinatura da Microsoft para executar as operações. - Os trabalhos, incluindo a opção de conjunto
Generate Profile
de dados, são executados em um recurso de computação em sua assinatura e acessam os dados desse local. A identidade de computação precisa de permissão para o recurso de armazenamento, em vez da identidade do usuário que enviou o trabalho.
- Todas as chamadas para serviços de conjunto de dados e armazenamento de dados (exceto a
Este diagrama mostra o fluxo geral de uma chamada de acesso a dados. Aqui, um usuário tenta fazer uma chamada de acesso a dados por meio de um espaço de trabalho de Aprendizado de Máquina, sem o uso de um recurso de computação.
Cenários e opções de autenticação
Esta tabela lista as identidades a serem usadas para cenários específicos:
Configuração | SDK máquina virtual local/notebook | Tarefa | Pré-visualização do conjunto de dados | Navegação no armazenamento de dados |
---|---|---|---|---|
Credencial + Espaço de trabalho MSI | Credencial | Credencial | MSI da Área de Trabalho | Credencial (apenas chave de conta e token de assinatura de acesso compartilhado) |
Sem credencial + espaço de trabalho MSI | Calcular MSI/identidade do usuário | Calcular MSI/identidade do usuário | MSI da Área de Trabalho | Identidade do utilizador |
Credencial + MSI sem espaço de trabalho | Credencial | Credencial | Credencial (não suportada para Dataset Preview em rede privada) | Credencial (apenas chave de conta e token de assinatura de acesso compartilhado) |
Sem credencial + sem espaço de trabalho MSI | Calcular MSI/identidade do usuário | Calcular MSI/identidade do usuário | Identidade do utilizador | Identidade do utilizador |
Para o SDK V1, a autenticação de dados em um trabalho sempre usa MSI de computação. Para o SDK V2, a autenticação de dados em um trabalho depende da sua configuração de trabalho. Pode ser a identidade do usuário ou calcular MSI, com base nessa configuração de trabalho.
Gorjeta
Para acessar dados de fora do Machine Learning - por exemplo, com o Gerenciador de Armazenamento do Azure - esse acesso provavelmente depende da identidade do usuário . Para obter informações específicas, consulte a documentação da ferramenta ou serviço que pretende utilizar. Para obter mais informações sobre como o Aprendizado de Máquina funciona com dados, visite Configurar a autenticação entre o Aprendizado de Máquina do Azure e outros serviços.
Requisitos específicos da rede virtual
Essas informações ajudam você a configurar a autenticação de dados de um espaço de trabalho do Machine Learning para acessar dados por trás de uma rede virtual.
Adicionar permissões de uma conta de armazenamento a uma identidade gerenciada do espaço de trabalho do Machine Learning
Quando você usa uma conta de armazenamento do estúdio, se quiser ver a Visualização do Conjunto de Dados, deve habilitar Usar identidade gerenciada do espaço de trabalho para visualização de dados e criação de perfil no estúdio do Azure Machine Learning na configuração do armazenamento de dados. Em seguida, adicione estas funções RBAC do Azure da conta de armazenamento à identidade gerenciada do espaço de trabalho:
- Leitor de dados de Blob
- Se a conta de armazenamento usar um ponto de extremidade privado para se conectar à rede virtual, você deverá conceder a função Leitor do ponto de extremidade privado da conta de armazenamento à identidade gerenciada.
Para obter mais informações, visite Usar o estúdio de Aprendizado de Máquina do Azure em uma rede virtual do Azure.
Estas seções explicam as limitações de usar uma conta de armazenamento, com seu espaço de trabalho, em uma rede virtual.
Comunicação segura com uma conta de armazenamento
Para proteger a comunicação entre o Aprendizado de Máquina e as contas de armazenamento, configure o armazenamento para conceder acesso aos serviços confiáveis do Azure.
Firewall do Armazenamento do Azure
Para uma conta de armazenamento localizada atrás de uma rede virtual, o firewall de armazenamento normalmente pode permitir que seu cliente se conecte diretamente pela Internet. No entanto, quando você usa o estúdio, seu cliente não se conecta à conta de armazenamento. O serviço de Aprendizado de Máquina que faz a solicitação se conecta à conta de armazenamento. O endereço IP do serviço não está documentado e muda frequentemente. Ativar o firewall de armazenamento não permite que o estúdio acesse a conta de armazenamento em uma configuração de rede virtual.
Tipo de ponto de extremidade do Armazenamento do Azure
Quando o espaço de trabalho usa um ponto de extremidade privado e a conta de armazenamento também está na rede virtual, requisitos de validação adicionais surgem quando você usa o estúdio.
- Se a conta de armazenamento usar um ponto de extremidade de serviço, o ponto de extremidade privado do espaço de trabalho e o ponto de extremidade do serviço de armazenamento deverão estar localizados na mesma sub-rede da rede virtual.
- Se a conta de armazenamento usar um ponto de extremidade privado, o ponto de extremidade privado do espaço de trabalho e o ponto de extremidade privado de armazenamento deverão estar localizados na mesma rede virtual. Neste caso, podem estar em sub-redes diferentes.
Armazenamento do Azure Data Lake Ger1
Ao usar o Azure Data Lake Storage Gen1 como um armazenamento de dados, você só pode usar listas de controle de acesso no estilo POSIX. Você pode atribuir o acesso de identidade gerenciada do espaço de trabalho a recursos, como qualquer outra entidade de segurança. Para obter mais informações, visite Controle de acesso no Azure Data Lake Storage Gen1.
Azure Data Lake Storage Gen2
Ao usar o Azure Data Lake Storage Gen2 como um armazenamento de dados, você pode usar as ACLs (listas de controle de acesso) no estilo RBAC do Azure e POSIX para controlar o acesso a dados dentro de uma rede virtual.
- Para usar o RBAC do Azure: siga as etapas descritas em Datastore: conta de armazenamento do Azure. O Data Lake Storage Gen2 é baseado no Armazenamento do Azure, portanto, as mesmas etapas se aplicam quando você usa o Azure RBAC.
- Para usar ACLs: A identidade gerenciada do espaço de trabalho pode receber acesso como qualquer outra entidade de segurança. Para obter mais informações, visite Listas de controle de acesso em arquivos e diretórios.
Próximos passos
Para obter informações sobre como habilitar o estúdio em uma rede, consulte Usar o estúdio do Azure Machine Learning em uma rede virtual do Azure.