Controle de acesso baseado em função para Microsoft Foundry

Neste artigo, você aprenderá os principais conceitos de RBAC (controle de acesso baseado em função) para Microsoft Foundry, incluindo escopos, funções internas e padrões comuns de atribuição empresarial.

Dica

As funções RBAC se aplicam quando você se autentica usando Microsoft Entra ID. Se você usar a autenticação baseada em chave, a chave concederá acesso total sem restrições de função. Microsoft recomenda usar a autenticação Entra ID para melhorar a segurança e o controle de acesso granular.

Para obter mais informações sobre autenticação e autorização no Microsoft Foundry, consulte Authentication and Authorization.

Atribuições mínimas de função para começar

Para novos usuários do Azure e Microsoft Foundry, comece com essas atribuições mínimas para que o principal de usuário e a identidade gerenciada do projeto possam acessar os recursos do Foundry.

Você pode verificar as atribuições atuais usando Marque o acesso de um usuário a um único recurso de Azure.

  • Atribua a função Usuário de IA do Azure ao seu recurso do Foundry para a sua entidade de usuário.
  • Atribua a função Azure AI User no recurso Foundry à identidade gerenciada do projeto.

Se o usuário que criou o projeto puder atribuir funções (por exemplo, tendo a função Azure Owner no escopo da assinatura ou do grupo de recursos), ambas as atribuições serão adicionadas automaticamente.

Para atribuir essas funções manualmente, use as etapas rápidas a seguir.

Atribuir uma função à entidade de usuário

No portal do Azure, abra o recurso do Foundry e vá para Controle de Acesso (IAM). Criar uma atribuição de função para Usuário de IA do Azure, defina os Membros como usuário, grupo ou entidade de serviço, selecione o principal do usuário e selecione Revisar + atribuir.

Atribuir uma função à identidade gerenciada do projeto

No portal do Azure, abra seu projeto do Foundry e vá para Access control (IAM). Crie uma designação de função para Usuário de IA do Azure, defina Membros para Identidade gerenciada, selecione a identidade gerenciada do seu projeto e depois selecione Revisar + atribuir.

Terminologia para controle de acesso baseado em função na Foundry

Para entender o controle de acesso baseado em função no Microsoft Foundry, considere duas perguntas para sua empresa.

  • Quais permissões eu quero que minha equipe tenha ao criar em Microsoft Foundry?
  • Em que escopo quero atribuir permissões à minha equipe?

Para ajudar a responder a essas perguntas, aqui estão as descrições de alguma terminologia usada ao longo deste artigo.

  • Permissões: ações permitidas ou negadas que uma identidade pode executar em um recurso, como ler, gravar, excluir ou gerenciar operações do plano de controle e do plano de dados.
  • Scope: o conjunto de recursos Azure aos quais uma atribuição de função se aplica. Os escopos típicos incluem assinatura, grupo de recursos, recurso Foundry ou projeto Foundry.
  • Role: uma coleção nomeada de permissões, que define quais ações podem ser executadas em recursos do Azure em um determinado escopo.

Uma identidade recebe uma função com permissões específicas em um escopo selecionado, com base nos requisitos da sua empresa.

No Microsoft Foundry, considere dois escopos ao realizar atribuições de função.

  • Foundry resource: o escopo de nível superior que define o limite administrativo, de segurança e de monitoramento para um ambiente Microsoft Foundry.
  • Projeto do Foundry: parte do escopo dentro de um recurso do Foundry usado para organizar o trabalho e impor o controle de acesso para as APIs, ferramentas e os fluxos de trabalho do Foundry.

Funções integradas

Uma função incorporada na Foundry é uma função criada pela Microsoft que cobre cenários comuns de acesso e que você pode atribuir aos membros da equipe. As principais funções internas usadas em Azure incluem Proprietário, Colaborador e Leitor. Essas funções não são específicas às permissões de recurso do Foundry.

Para recursos do Foundry, use funções internas adicionais para seguir princípios de acesso de privilégios mínimos. A tabela a seguir lista as principais funções integradas para Foundry e fornece links para as definições exatas dos papéis em funções integradas de AI + Machine Learning.

Papel Descrição
Usuário Azure AI Concede ao leitor acesso ao projeto Foundry, ao recurso Foundry e às ações de dados do projeto Foundry. Se você puder atribuir funções, essa função será atribuída a você automaticamente. Caso contrário, ela será concedida pelo Proprietário da assinatura ou por um usuário com permissões para atribuir funções. Função de acesso de menor privilégio na Foundry.
Azure AI Project Manager Permite executar ações de gerenciamento em projetos do Foundry, compilar e desenvolver projetos e atribuir condicionalmente a função de usuário de IA do Azure a outras entidades de usuário.
Proprietário da conta Azure de IA Concede acesso completo para gerenciar integralmente projetos e recursos, além de permitir atribuir condicionalmente a função de Usuário de IA do Azure a outras identidades de usuário.
Proprietário da IA do Azure Concede acesso total a projetos e recursos gerenciados e cria e desenvolve com projetos. Função de autoatendimento altamente privilegiada, projetada para nativos digitais.

Nota

Não atribua funções internas que começam com os Serviços Cognitivos. Essas funções são projetadas para acessar diretamente os recursos dos Serviços de IA e não se aplicam a cenários do Foundry. Da mesma forma, não use a função Desenvolvedor de IA do Azure para trabalhos no Foundry. Apesar do nome, essa função abrange os hubs do Azure Machine Learning e do Foundry, e não os recursos de projeto do Foundry.

Permissões para cada função integrada

Use a tabela a seguir para ver as permissões permitidas para cada função interna no Microsoft Foundry.

Função integrada Criar projetos do Foundry Criar contas do Foundry Construir e desenvolver em um projeto (ações de dados) Concluir tarefas de função Acesso de leitor a projetos e contas Gerenciar modelos Publicar agentes
Usuário Azure AI
Azure AI Project Manager ✔ (atribuir somente a função de usuário do Azure AI)
Proprietário da conta Azure de IA ✔ (atribuir somente a função de usuário do Azure AI)
Proprietário da IA do Azure

Use a tabela a seguir para ver as permissões para cada uma das principais funções internas do Azure (Proprietário, Colaborador, Leitor).

Função integrada Criar projetos do Foundry Criar contas do Foundry Construir e desenvolver em um projeto (ações de dados) Concluir tarefas de função Acesso de leitor a projetos e contas Gerenciar modelos Publicar agentes
Proprietário ✔ (atribua qualquer função a qualquer usuário)
Colaborador
Leitor

Para publicar agentes, você precisa da função Azure AI Project Manager (mínimo) no escopo do recurso Foundry. Para obter mais informações, consulte Agent applications in Microsoft Foundry.

Utilize essas guias para explorar as diferenças entre as funções incorporadas, atribuídas no nível de recurso do Foundry (exceto para o Proprietário, que é atribuído no nível da assinatura)

Exemplo de mapeamentos RBAC empresariais para projetos

Aqui está um exemplo de como implementar o RBAC (controle de acesso baseado em função) para um recurso do Enterprise Foundry.

Persona Função e escopo Propósito
Administrador de TI Proprietário no escopo da assinatura O administrador de TI garante que o recurso Foundry atenda aos padrões da empresa. Atribua aos gerentes a função de Proprietário de Conta do Azure AI no recurso para permitir que eles criem novas contas do Foundry. Atribua aos gerentes a função Gerente de Projeto de IA do Azure no recurso para permitir que eles criem projetos dentro de uma conta.
Gerentes Proprietário da conta de IA do Azure no escopo do recurso do Foundry Os gerentes gerenciam o recurso Foundry, implantam modelos, auditam recursos de computação, auditam conexões e criam conexões compartilhadas. ** Eles não podem construir em projetos, mas podem atribuir o papel Azure AI User a si próprios e a outras pessoas para começar a construir.
Líder de equipe ou desenvolvedor líder Gerente de Projeto de IA do Azure no escopo do recurso Foundry Os desenvolvedores líderes criam projetos para sua equipe e começam a construir nesses projetos. Depois de criar um projeto, os proprietários do projeto convidam outros membros e atribuem a função Usuário do Azure AI.
Membros da equipe ou desenvolvedores Usuário de IA do Azure no escopo do projeto do Foundry e Leitor no escopo do recurso do Foundry Os desenvolvedores criam agentes em um projeto com modelos de Foundry pré-implantados e conexões pré-criadas.

Gerenciar atribuições de função

Para gerenciar funções no Foundry, você deve ter permissão para atribuir e remover funções em Azure. A função Azure interna Owner inclui essa permissão. Você pode atribuir funções por meio do portal do Foundry (página do Administrador), do portal do Azure IAM ou do CLI do Azure. Você pode remover funções usando o IAM do portal Azure ou o CLI do Azure.

No portal do Foundry, gerencie permissões por:

  1. Abra a página Administrador no Foundry e, em seguida, selecione Operar>Administrador.
  2. Selecione o nome do projeto.
  3. Selecione Adicionar usuário para gerenciar o acesso ao projeto. Essa ação só estará disponível se você tiver permissões de atribuição de função.
  4. Aplique o mesmo fluxo para o acesso ao nível de recurso do Foundry.

Você pode gerenciar permissões no portal Azure em Controle de Acesso (IAM) ou usando CLI do Azure.

Por exemplo, o comando a seguir atribui a função de usuário de IA Azure a joe@contoso.com para o grupo de recursos this-rg na assinatura 00000000-0000-0000-0000-000000000000:

az role assignment create --role "Azure AI User" --assignee "joe@contoso.com" --scope /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/this-rg 

Criar funções personalizadas para projetos

Se as funções internas não atenderem aos requisitos da empresa, crie uma função personalizada que permita um controle preciso sobre as ações e escopos permitidos. Aqui está um exemplo de definição de função personalizada no nível da assinatura:

{
  "properties": {
    "roleName": "My Enterprise Foundry User",
    "description": "Custom role for Foundry at my enterprise to only allow building Agents. Assign at subscription level.",
    "assignableScopes": ["/subscriptions/<your-subscription-id>"],
    "permissions": [ { 
        "actions": ["Microsoft.CognitiveServices/*/read", "Microsoft.Authorization/*/read", "Microsoft.CognitiveServices/accounts/listkeys/action","Microsoft.Resources/deployments/*"], 
        "notActions": [], 
        "dataActions": ["Microsoft.CognitiveServices/accounts/AIServices/agents/*"], 
        "notDataActions": []     
    } ]
  }
}

Para obter mais informações sobre como criar uma função personalizada, consulte os artigos a seguir.

Anotações e limitações

  • Para exibir e limpar contas do Foundry excluídas, você deve ter a função Colaborador atribuída no escopo da assinatura.
  • Os usuários com a função Colaborador podem implantar modelos na Foundry.
  • Você precisa da função Proprietário no escopo de um recurso para criar funções personalizadas no recurso.
  • Se você tiver permissões para atribuir funções no Azure (por exemplo, a função de Proprietário atribuída no escopo da conta) ao seu principal do usuário e implantar um recurso do Foundry no portal do Azure ou na interface do usuário do portal do Foundry, a função de Usuário do Azure AI será atribuída automaticamente ao seu principal do usuário. Esta atribuição não se aplica quando da implantação do Foundry pelo SDK ou pela CLI.
  • Quando você cria um recurso do Foundry, as permissões internas de RBAC (controle de acesso baseado em função) fornecem acesso ao recurso. Para usar recursos criados fora do Foundry, verifique se o recurso tem permissões que permitem acessá-lo. Aqui estão alguns exemplos:
    • Para usar uma nova conta de Armazenamento de Blobs do Azure, adicione a identidade gerenciada vinculada ao recurso do Foundry à função de Leitor de Dados de Blob de Armazenamento nessa conta de armazenamento.
    • Para usar uma nova origem do Pesquisa de IA do Azure , adicione Foundry às atribuições de função do Pesquisa de IA do Azure .
  • Para ajustar um modelo no Foundry, você precisa de permissões do plano de dados e do plano de controle. Implantar um modelo bem ajustado é uma permissão do plano de controle. Portanto, a única função integrada com permissões do plano de dados e do plano de controle é a função Azure AI Owner. Ou, se preferir, você também pode atribuir a função Azure Usuário de IA para permissões de plano de dados e a função Azure Proprietário da Conta de IA para permissões do painel de controle.

Apêndice

Exemplos de isolamento de acesso

Cada organização pode ter diferentes requisitos de isolamento de acesso, dependendo das personas do usuário em sua empresa. O isolamento de acesso refere-se a quais usuários na sua empresa têm determinadas atribuições de função, seja para uma divisão de permissões utilizando nossas funções internas ou para uma função unificada e altamente permissiva. Há três opções de isolamento de acesso para o Foundry que você pode selecionar para sua organização, dependendo dos requisitos de isolamento de acesso.

Nenhum isolamento de acesso. Isso significa que, em sua empresa, você não tem nenhum requisito separando permissões entre um desenvolvedor, um gerente de projeto ou um administrador. As permissões para essas funções podem ser atribuídas entre as equipes.

Portanto, você deve...

  • Conceda a todos os usuários em sua empresa a função Azure AI Owner no escopo do recurso

Isolamento de acesso parcial. Isso significa que o gerente de projetos em sua empresa deve ser capaz de desenvolver dentro de projetos, bem como criar projetos. Mas seus administradores não devem ser capazes de desenvolver no Foundry, apenas criar projetos e contas do Foundry.

Portanto, você deve...

  • Conceda ao administrador a função de Proprietário da Conta de IA do Azure no escopo do recurso
  • Conceda aos desenvolvedores e gerentes de projeto a função Gerente de Projeto de IA do Azure no recurso

Isolamento de acesso total. Isso significa que seus administradores, gerentes de projeto e desenvolvedores têm permissões claras atribuídas que não se sobrepõem a suas diferentes funções em uma empresa.

Portanto, você deve...

  • Conceda ao administrador a função de Proprietário da Conta de IA do Azure no escopo do recurso
  • Conceda ao desenvolvedor a função Reader no escopo de recursos do Foundry e a função Usuário do Azure AI no escopo do projeto.
  • Conceda ao gerente de projeto a função Gerente de Projeto de IA do Azure no escopo do recurso

Usar grupos do Microsoft Entra com o Foundry

Microsoft Entra ID fornece várias maneiras de gerenciar o acesso a recursos, aplicativos e tarefas. Usando Microsoft Entra grupos, você pode conceder acesso e permissões a um grupo de usuários em vez de a cada usuário individual. Os administradores de TI corporativos podem criar Microsoft Entra grupos no portal Azure para simplificar o processo de atribuição de função para desenvolvedores. Ao criar um grupo de Microsoft Entra, você pode minimizar o número de atribuições de função necessárias para novos desenvolvedores que trabalham em projetos do Foundry atribuindo ao grupo a atribuição de função necessária no recurso necessário.

Conclua as seguintes etapas para usar Microsoft Entra ID grupos com o Foundry:

  1. Crie um grupo Security em Groups no portal Azure.
  2. Adicione um proprietário e as entidades de usuário em sua organização que precisam de acesso compartilhado.
  3. Abra o recurso de destino e acesse o controle de acesso (IAM).
  4. Atribua a função necessária ao Usuário, grupo ou entidade de serviço e selecione o novo grupo de segurança.
  5. Selecione Examinar + atribuir para que a atribuição de função se aplique a todos os membros do grupo.

Exemplos comuns:

  • Para criar agentes, executar rastreamentos e usar os principais recursos do Foundry, atribua Azure Usuário de IA ao grupo Microsoft Entra.
  • Para usar os recursos de Rastreamento e Monitoramento, atribua Leitor no recurso do Application Insights conectado ao mesmo grupo.

Para saber mais sobre Microsoft Entra ID grupos, pré-requisitos e limitações, consulte: