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 estas verificações:

  • O usuário que está acessando dados do armazenamento de dados baseado em credenciais recebeu uma função com controle de acesso baseado em função (RBAC) 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.
    • As funções internas que já contêm essa permissão são Colaborador, Desenvolvedor de IA do Azure ou Cientista de Dados do Azure Machine Learning. Como alternativa, se uma função personalizada for aplicada, você precisará garantir que essa permissão seja adicionada a essa função personalizada.
    • Você deve saber qual usuário específico está tentando acessar os dados. Pode ser um usuário real com uma identidade de usuário ou um computador com identidade gerenciada por computação (MSI). Consulte a seção Cenários e opções de autenticação para identificar a identidade para a qual você precisa adicionar permissão.
  • 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:

  • Qual usuário deseja acessar os recursos?
    • Dependendo do contexto em que os dados estão sendo acessados, diferentes tipos de autenticação estão disponíveis, 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 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 , consulte Autenticação para o Azure Machine Learning. Para obter mais informações sobre a autenticação de nível de serviço, consulte Autenticação entre o Azure Machine Learning e outros serviços.
  • Este usuário tem permissão para ler?
    • 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 Reader da conta de armazenamento lê os metadados de armazenamento.
    • O Storage Blob Data Reader lê e lista contêineres e blobs de armazenamento.
    • Para obter mais informações, consulte Funções internas do Azure para armazenamento.
  • Este usuário tem permissão para escrever?

Outras verificações gerais de autenticação

  • De onde vem o acesso?
    • 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?
  • Que operação será realizada?
    • O Azure Machine Learning lida com operações de criação, leitura, atualização e exclusão (CRUD) em um armazenamento/conjunto de dados 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 precisam de permissões extras.
  • Essa operação será executada em seus recursos de computação de assinatura 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.

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 usar um recurso de computação.

Diagrama que mostra o fluxo lógico ao acessar dados.

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 configuração do trabalho. Pode ser a identidade do usuário ou calcular MSI com base em sua configuração.

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 está a utilizar. Para obter mais informações sobre como o Aprendizado de Máquina funciona com dados, consulte Configurar a autenticação entre o Aprendizado de Máquina do Azure e outros serviços.

Requisitos específicos da rede virtual

As informações a seguir ajudam você a configurar a autenticação de dados para acessar dados por trás de uma rede virtual a partir de um espaço de trabalho do Machine Learning.

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 as seguintes 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, consulte Usar o estúdio do Azure Machine Learning em uma rede virtual do Azure.

As seções a seguir 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

Quando uma conta de armazenamento está localizada atrás de uma rede virtual, o firewall de armazenamento normalmente pode ser usado para 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 permitirá 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, consulte 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, consulte 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.