Identidades gerenciadas para recursos de Linguagem
As identidades gerenciadas para recursos do Azure são entidades de serviço que criam uma identidade do Microsoft Entra e permissões específicas para recursos gerenciados do Azure. As identidades gerenciadas são uma maneira mais segura de conceder acesso aos dados de armazenamento e substituem o requisito de incluir tokens de assinatura de acesso compartilhado (SAS) com seus URLs de contêiner de origem e destino.
Você pode usar identidades gerenciadas para conceder acesso a qualquer recurso que dê suporte à autenticação do Microsoft Entra, incluindo seus próprios aplicativos.
Para conceder acesso a um recurso do Azure, atribua uma função do Azure a uma identidade gerenciada usando o Controle de acesso baseado em função do Azure (
Azure RBAC
).Não há nenhum custo adicional para usar identidades gerenciadas no Azure.
Importante
Ao usar identidades gerenciadas, não inclua uma URL de token SAS com suas solicitações HTTP. Elas falharão. O uso de identidades gerenciadas substitui o requisito para incluir tokens de assinatura de acesso compartilhado (SAS) nas suas URLs de contêiner de origem e destino.
Para usar identidades gerenciadas para operações de Linguagem, você deve criar seu recurso de Linguagem em uma região geográfica específica do Azure, como no Leste dos EUA. Se a região dos recursos de Linguagem estiver definida como Global, você não poderá usar a autenticação da identidade gerenciada. No entanto, você ainda pode usar tokens Assinatura de Acesso Compartilhado (SAS).
Pré-requisitos
Para começar, você precisa dos seguintes recursos:
Uma conta do Azure ativa. Se você não tem uma, crie uma conta gratuita.
Um recurso de Linguagem de IA do Azure de serviço único criado em um local regional.
Uma breve reconhecimento do Controle de acesso baseado em função do Azure (
Azure RBAC
) usando o portal do Azure.Uma conta de Armazenamento de Blobs do Azure na mesma região que o recurso de Linguagem. Você também precisa criar contêineres para armazenar e organizar dados de blob em sua conta de armazenamento.
Se sua conta de armazenamento estiver atrás de um firewall, você deverá habilitar a seguinte configuração:
Vá para o portal do Azure e entre em sua conta do Azure.
Selecione sua conta de armazenamento.
No grupo Segurança + sistema de rede no painel esquerdo, selecione Sistema de Rede.
Na guia Firewalls e redes virtuais, selecione Habilitado entre redes virtuais selecionadas e endereços IP.
Desmarque todas as caixas de seleção.
Verifique se o Roteamento de rede da Microsoft está selecionado.
Na seção Instâncias de Recurso, selecione Microsoft.CognitiveServices/accounts como o tipo de recurso e selecione o recurso de Linguagem como o nome da instância.
Verifique se a caixa Permitir que os serviços do Azure na lista de serviços confiáveis acessem esta conta de armazenamento está selecionada. Para obter mais informações sobre como gerenciar exceções, consulte Configurar redes virtuais e firewalls do Armazenamento do Azure.
Selecione Salvar.
Observação
Pode levar até 5 minutos para que as alterações na rede sejam propagadas.
Embora o acesso à rede seja agora permitido, seu recurso de Linguagem ainda não consegue acessar os dados em sua conta de armazenamento. Você precisa criar uma identidade gerenciada para e atribuir uma função específica de acesso ao seu recurso de Linguagem.
Atribuições de identidade gerenciada
Há dois tipos de identidades gerenciadas: atribuídas pelo sistema e atribuídas pelo usuário. Atualmente, a tradução de documento dá suporte à identidade gerenciada atribuída pelo sistema:
Uma identidade gerenciada atribuída pelo sistema é habilitada diretamente em uma instância de serviço. Esse recurso não está habilitado por padrão, é preciso acessar o recurso e atualizar a configuração de identidade.
A identidade gerenciada atribuída pelo sistema é vinculada ao seu recurso durante todo o ciclo de vida. Se você excluir seu recurso, a identidade gerenciada também será excluída.
Nas etapas a seguir, habilitaremos uma identidade gerenciada atribuída pelo sistema e concederemos a seu recurso de Linguagem acesso limitado à sua conta de Armazenamento de Blobs do Azure.
Habilitar uma identidade gerenciada atribuída ao sistema
Você precisa conceder ao recurso de Linguagem acesso à sua conta de armazenamento antes que ele possa criar, ler ou excluir blobs. Depois de habilitar o recurso de Linguagem com uma identidade gerenciada atribuída pelo sistema, você poderá usar o controle de acesso baseado em função (Azure RBAC
) para permitir aos recursos de Linguagem acesso aos contêineres de armazenamento do Azure.
Vá para o portal do Azure e entre em sua conta do Azure.
Selecione o recurso de idioma.
No grupo Gerenciamento de Recursos no painel esquerdo, selecione Identidade. Se o recurso tiver sido criado na região global, a guia Identidade não estará visível. Você ainda pode usar tokens Assinatura de Acesso Compartilhado (SAS) para autenticação.
Na guia Atribuído pelo sistema, ative a alternância de Status.
Importante
As identidades gerenciadas atribuídas pelo usuário não atendem aos requisitos para o cenário da conta de armazenamento de processamento em lotes. Habilite a identidade gerenciada atribuída pelo sistema.
Selecione Salvar.
Conceder acesso à conta de armazenamento para o recurso de Linguagem
Importante
Para atribuir uma função de identidade gerenciada atribuída pelo sistema, você precisa de permissões Microsoft.Authorization/roleAssignments/write, como Proprietário ou Administrador de Acesso do Usuário no escopo do armazenamento do recurso de armazenamento.
Vá para o portal do Azure e entre em sua conta do Azure.
Selecione o recurso de idioma.
No grupo Gerenciamento de Recursos no painel esquerdo, selecione Identidade.
Em Permissões, selecione Atribuições de função do Azure:
Na página Atribuições de função do Azure que é aberta, escolha sua assinatura no menu suspenso e, em seguida, selecione + Adicionar atribuição de função.
Em seguida, atribua uma função de Colaborador de Armazenamento de Dados do Blob ao seu recurso de serviço de Linguagem. A função Colaborador de Dados do Armazenamento de Blobs fornece à Linguagem (representada pela identidade gerenciada atribuída pelo sistema) acesso de leitura, gravação e exclusão ao contêiner de blobs e aos dados. Na janela pop-up Adicionar atribuição de função, preencha os campos como segue, e selecione Salvar:
Campo Valor Escopo Armazenamento. Assinatura A assinatura associada ao recurso de armazenamento. Recurso O nome do recurso de armazenamento. Função Colaborador de Dados de Blob de Armazenamento. Depois que a mensagem de confirmação Atribuição de função adicionada aparecer, atualize a página para ver a atribuição de função adicionada.
Se você não vir a nova atribuição de função imediatamente, aguarde e tente atualizar a página novamente. Quando você atribui ou remove atribuições de função, pode levar até 30 minutos para que as alterações entrem em vigor.
Solicitações HTTP
Uma solicitação de operação de serviço de Linguagem de documento nativo é enviada para o ponto de extremidade do serviço idioma por meio de uma solicitação POST.
Com a identidade gerenciada e o
Azure RBAC
, você não precisa mais incluir URLs da SAS.Se for bem-sucedido, o método POST retornará um código de resposta
202 Accepted
e a solicitação será criada pelo serviço.Os documentos processados são exibidos no contêiner de destino.