Share via


Controlo de acesso baseado em funções no Estúdio de IA do Azure

Importante

Alguns dos recursos descritos neste artigo podem estar disponíveis apenas na visualização. Essa visualização é fornecida sem um contrato de nível de serviço e não a recomendamos para cargas de trabalho de produção. Algumas funcionalidades poderão não ser suportadas ou poderão ter capacidades limitadas. Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações do Microsoft Azure.

Neste artigo, você aprenderá a gerenciar o acesso (autorização) a um hub do Azure AI Studio. O controlo de acesso baseado em funções do Azure (RBAC do Azure) é utilizado para gerir o acesso aos recursos do Azure, como a capacidade de criar novos recursos ou utilizar os existentes. Os utilizadores na sua Microsoft Entra ID recebem funções específicas, que concedem acesso a recursos. O Azure fornece funções internas e a capacidade de criar funções personalizadas.

Aviso

A aplicação de algumas funções pode limitar a funcionalidade da IU no Estúdio de IA do Azure para outros utilizadores. Por exemplo, se a função de um utilizador não tiver a capacidade de criar uma instância de computação, a opção de criar uma instância de computação não estará disponível no estúdio. Este comportamento é esperado e impede que o utilizador tente operações que retornariam um erro de acesso negado.

AI Studio hub vs projeto

No Azure AI Studio, há dois níveis de acesso: o hub e o projeto. O hub abriga a infraestrutura (incluindo configuração de rede virtual, chaves gerenciadas pelo cliente, identidades gerenciadas e políticas) e onde você configura seus serviços de IA do Azure. O acesso ao hub pode permitir que você modifique a infraestrutura, crie novos hubs e crie projetos. Os projetos são um subconjunto do hub que atuam como espaços de trabalho que permitem criar e implantar sistemas de IA. Dentro de um projeto, você pode desenvolver fluxos, implantar modelos e gerenciar ativos do projeto. O acesso ao projeto permite desenvolver IA de ponta a ponta enquanto aproveita a configuração da infraestrutura no hub.

Diagrama da relação entre recursos do AI Studio.

Um dos principais benefícios do relacionamento entre hub e projeto é que os desenvolvedores podem criar seus próprios projetos que herdam as configurações de segurança do hub. Você também pode ter desenvolvedores que são contribuintes para um projeto e não podem criar novos projetos.

Funções padrão para o hub

O hub do AI Studio tem funções internas que estão disponíveis por padrão.

Aqui está uma tabela das funções internas e suas permissões para o hub:

Função Description
Proprietário Acesso total ao hub, incluindo a capacidade de gerenciar e criar novos hubs e atribuir permissões. Essa função é atribuída automaticamente ao criador do hub
Contribuinte O usuário tem acesso total ao hub, incluindo a capacidade de criar novos hubs, mas não é capaz de gerenciar permissões de hub no recurso existente.
Azure AI Developer Execute todas as ações, exceto criar novos hubs e gerenciar as permissões do hub. Por exemplo, os usuários podem criar projetos, computação e conexões. Os usuários podem atribuir permissões dentro de seu projeto. Os usuários podem interagir com recursos de IA do Azure existentes, como o Azure OpenAI, o Azure AI Search e os serviços de IA do Azure.
Leitor Acesso somente leitura ao hub. Essa função é atribuída automaticamente a todos os membros do projeto dentro do hub.

A principal diferença entre o Colaborador e o Azure AI Developer é a capacidade de criar novos hubs. Se você não quiser que os usuários criem novos hubs (devido à cota, custo ou apenas gerenciando quantos hubs você tem), atribua a função de Desenvolvedor de IA do Azure.

Somente as funções de Proprietário e Colaborador permitem que você crie um hub. No momento, as funções personalizadas não podem conceder permissão para criar hubs.

O conjunto completo de permissões para a nova função "Azure AI Developer" é o seguinte:

{
    "Permissions": [ 
        { 
        "Actions": [ 
    
            "Microsoft.MachineLearningServices/workspaces/*/read", 
            "Microsoft.MachineLearningServices/workspaces/*/action", 
            "Microsoft.MachineLearningServices/workspaces/*/delete", 
            "Microsoft.MachineLearningServices/workspaces/*/write" 
        ], 
    
        "NotActions": [ 
            "Microsoft.MachineLearningServices/workspaces/delete", 
            "Microsoft.MachineLearningServices/workspaces/write", 
            "Microsoft.MachineLearningServices/workspaces/listKeys/action", 
            "Microsoft.MachineLearningServices/workspaces/hubs/write", 
            "Microsoft.MachineLearningServices/workspaces/hubs/delete", 
            "Microsoft.MachineLearningServices/workspaces/featurestores/write", 
            "Microsoft.MachineLearningServices/workspaces/featurestores/delete" 
        ], 
        "DataActions": [ 
            "Microsoft.CognitiveServices/accounts/OpenAI/*", 
            "Microsoft.CognitiveServices/accounts/SpeechServices/*", 
            "Microsoft.CognitiveServices/accounts/ContentSafety/*" 
        ], 
        "NotDataActions": [], 
        "Condition": null, 
        "ConditionVersion": null 
        } 
    ] 
}

Funções padrão para projetos

Os projetos no AI Studio têm funções internas que estão disponíveis por padrão.

Aqui está uma tabela das funções internas e suas permissões para o projeto:

Função Description
Proprietário Acesso total ao projeto, incluindo a capacidade de atribuir permissões aos usuários do projeto.
Contribuinte O usuário tem acesso total ao projeto, mas não pode atribuir permissões aos usuários do projeto.
Azure AI Developer O usuário pode executar a maioria das ações, incluindo criar implantações, mas não pode atribuir permissões aos usuários do projeto.
Leitor Acesso somente leitura ao projeto.

Quando um usuário recebe acesso a um projeto (por exemplo, por meio do gerenciamento de permissões do AI Studio), mais duas funções são atribuídas automaticamente ao usuário. A primeira função é Reader no hub. A segunda função é a função Operador de Implantação de Inferência, que permite ao usuário criar implantações no grupo de recursos em que o projeto está. Esta função é composta por estas duas permissões: "Microsoft.Authorization/*/read" e "Microsoft.Resources/deployments/*".

Para concluir o desenvolvimento e a implantação de IA de ponta a ponta, os usuários só precisam dessas duas funções atribuídas automaticamente e da função de Colaborador ou Desenvolvedor de IA do Azure em um projeto.

As permissões mínimas necessárias para criar um projeto é uma função que tem a ação permitida de Microsoft.MachineLearningServices/workspaces/hubs/join no hub. A função interna do Azure AI Developer tem essa permissão.

Permissões do RBAC do Azure do serviço de dependência

O hub tem dependências em outros serviços do Azure. A tabela a seguir lista as permissões necessárias para esses serviços quando você cria um hub. A pessoa que cria o hub precisa dessas permissões. A pessoa que cria um projeto a partir do hub não precisa deles.

Permissão Propósito
Microsoft.Storage/storageAccounts/write Crie uma conta de armazenamento com os parâmetros especificados ou atualize as propriedades ou tags ou adicione domínio personalizado para a conta de armazenamento especificada.
Microsoft.KeyVault/vaults/write Crie um novo cofre de chaves ou atualize as propriedades de um cofre de chaves existente. Algumas propriedades podem exigir mais permissões.
Microsoft.CognitiveServices/accounts/write Escreva contas de API.
Microsoft.MachineLearningServices/workspaces/write Crie um novo espaço de trabalho ou atualize as propriedades de um espaço de trabalho existente.

Exemplo de configuração de RBAC empresarial

A tabela a seguir é um exemplo de como configurar o controle de acesso baseado em função para seu Azure AI Studio para uma empresa.

Persona Role Propósito
Administrador de TI Proprietário do hub O administrador de TI pode garantir que o hub esteja configurado de acordo com seus padrões corporativos. Eles podem atribuir aos gerentes a função de Colaborador no recurso se quiserem permitir que os gerentes criem novos hubs. Ou eles podem atribuir aos gerentes a função de Desenvolvedor de IA do Azure no recurso para não permitir a criação de novos hubs.
Gestores Colaborador ou Desenvolvedor de IA do Azure no hub Os gerentes podem gerenciar o hub, auditar recursos de computação, auditar conexões e criar conexões compartilhadas.
Líder de equipe/Desenvolvedor líder Azure AI Developer no hub Os desenvolvedores líderes podem criar projetos para sua equipe e criar recursos compartilhados (por exemplo, computação e conexões) no nível do hub. Após a criação do projeto, os proprietários do projeto podem convidar outros membros.
Membros da equipe/desenvolvedores Colaborador ou Desenvolvedor de IA do Azure no projeto Os desenvolvedores podem criar e implantar modelos de IA dentro de um projeto e criar ativos que permitam o desenvolvimento, como cálculos e conexões.

Acesso a recursos criados fora do hub

Quando você cria um hub, as permissões internas de controle de acesso baseado em função concedem acesso para usar o recurso. No entanto, se você deseja usar recursos fora do que foi criado em seu nome, você precisa garantir ambos:

  • O recurso que está a tentar usar tem o conjunto de permissões que lhe permitem aceder-lhe.
  • Seu hub tem permissão para acessá-lo.

Por exemplo, se você estiver tentando consumir um novo armazenamento de Blob, precisará garantir que a identidade gerenciada do hub seja adicionada à função Leitor de Armazenamento de Blob para o Blob. Se você estiver tentando usar uma nova fonte do Azure AI Search, talvez seja necessário adicionar o hub às atribuições de função do Azure AI Search.

Gerenciar o acesso com funções

Se você for proprietário de um hub, poderá adicionar e remover funções para o Studio. No Azure AI Studio, vá para Gerenciar e selecione seu hub. Em seguida, selecione Permissões para adicionar e remover usuários para o hub. Também pode gerir permissões a partir do portal do Azure em Controlo de Acesso (IAM) ou através da CLI do Azure. Por exemplo, use a CLI do Azure para atribuir a função de Desenvolvedor do Azure AI a "joe@contoso.com" para o grupo de recursos "this-rg" com o seguinte comando:

az role assignment create --role "Azure AI Developer" --assignee "joe@contoso.com" --resource-group this-rg 

Criar funções personalizadas

Nota

Para criar um novo hub, você precisa da função de Proprietário ou Colaborador. No momento, uma função personalizada, mesmo com todas as ações permitidas, não permitirá que você crie um hub.

Se as funções incorporadas forem insuficientes, poderá criar funções personalizadas. As funções personalizadas podem ter as permissões de recursos de leitura, gravação, exclusão e computação nesse AI Studio. Você pode disponibilizar a função em um nível de projeto específico, um nível de grupo de recursos específico ou um nível de assinatura específico.

Nota

Você deve ser um proprietário do recurso nesse nível para criar funções personalizadas dentro desse recurso.

Cenário: Usar uma chave gerenciada pelo cliente

Ao configurar um hub para usar uma chave gerenciada pelo cliente (CMK), um Cofre de Chaves do Azure é usado para armazenar a chave. O usuário ou entidade de serviço usada para criar o espaço de trabalho deve ter acesso de proprietário ou colaborador ao cofre de chaves.

Se o hub do AI Studio estiver configurado com uma identidade gerenciada atribuída pelo usuário, a identidade deverá receber as seguintes funções. Essas funções permitem que a identidade gerenciada crie o Armazenamento do Azure, o Azure Cosmos DB e os recursos do Azure Search usados ao usar uma chave gerenciada pelo cliente:

  • Microsoft.Storage/storageAccounts/write
  • Microsoft.Search/searchServices/write
  • Microsoft.DocumentDB/databaseAccounts/write

Dentro do cofre de chaves, o usuário ou entidade de serviço deve ter o acesso criar, obter, excluir e limpar a chave por meio de uma política de acesso ao cofre de chaves. Para obter mais informações, consulte Segurança do Cofre da Chave do Azure.

Cenário: Usar um recurso existente do Azure OpenAI

Ao criar uma conexão com um recurso existente do Azure OpenAI, você também deve atribuir funções aos usuários para que eles possam acessar o recurso. Você deve atribuir a função de Usuário OpenAI de Serviços Cognitivos ou de Colaborador de Serviços Cognitivos OpenAI, dependendo das tarefas que eles precisam executar. Para obter informações sobre essas funções e as tarefas que elas habilitam, consulte Funções do Azure OpenAI.

Cenário: Usar o Registro de Contêiner do Azure

Uma instância do Registro de Contêiner do Azure é uma dependência opcional para o hub do Azure AI Studio. A tabela a seguir lista a matriz de suporte ao autenticar um hub no Registro de Contêiner do Azure, dependendo do método de autenticação e da configuração de acesso à rede pública do Registro de Contêiner doAzure.

Método de autenticação Acesso à
rede pública desativado
Azure Container Registry
Acesso à rede pública habilitado
Utilizador administrador
Identidade gerenciada atribuída ao sistema do hub AI Studio
Identidade
gerenciada atribuída pelo usuário ao hub do AI Studio com a função ACRPull atribuída à identidade

Uma identidade gerenciada atribuída ao sistema é atribuída automaticamente às funções corretas quando o hub é criado. Se você estiver usando uma identidade gerenciada atribuída pelo usuário, deverá atribuir a função ACRPull à identidade.

Cenário: Usar o Azure Application Insights para registro em log

O Azure Application Insights é uma dependência opcional para o hub do Azure AI Studio. A tabela a seguir lista as permissões necessárias se você quiser usar o Application Insights ao criar um hub. A pessoa que cria o hub precisa dessas permissões. A pessoa que cria um projeto a partir do hub não precisa dessas permissões.

Permissão Propósito
Microsoft.Insights/Components/Write Escreva em uma configuração de componente do Application Insights.
Microsoft.OperationalInsights/workspaces/write Crie um novo espaço de trabalho ou links para um espaço de trabalho existente fornecendo a ID do cliente do espaço de trabalho existente.

Próximos passos