Habilitar ou desabilitar o controle de acesso baseado em função no Azure AI Search

O Azure AI Search usa autenticação baseada em chave por padrão, mas oferece suporte total à autenticação e autorização do Microsoft Entra ID para todas as operações de plano de controle e plano de dados por meio do RBAC (controle de acesso baseado em função) do Azure.

Antes de atribuir funções para acesso autorizado ao plano de dados ao Azure AI Search, você deve habilitar o controle de acesso baseado em função em seu serviço de pesquisa. As funções para administração de serviços (plano de controle) são incorporadas e não podem ser habilitadas ou desabilitadas.

Nota

O plano de dados refere-se a operações no ponto de extremidade do serviço de pesquisa, como indexação ou consultas, ou qualquer outra operação especificada nas APIs REST do Serviço de Pesquisa ou bibliotecas de cliente equivalentes do SDK do Azure. O plano de controle refere-se ao gerenciamento de recursos do Azure, como a criação ou configuração de um serviço de pesquisa.

Pré-requisitos

Habilitar o acesso baseado em função para operações de plano de dados

Configure seu serviço de pesquisa para reconhecer um cabeçalho de autorização em solicitações de dados que fornecem um token de acesso OAuth2.

Quando você habilita funções para o plano de dados, a alteração entra em vigor imediatamente, mas aguarde alguns segundos antes de atribuir funções.

O modo de falha padrão para solicitações não autorizadas é http401WithBearerChallenge. Como alternativa, você pode definir o modo de falha como http403.

  1. Entre no portal do Azure e abra a página do serviço de pesquisa.

  2. Selecione Configurações e, em seguida, selecione Teclas no painel de navegação esquerdo.

    Captura de ecrã da página de chaves com opções de autenticação.

  3. Escolha Controle baseado em função ou Ambos se estiver usando chaves no momento e precisar de tempo para fazer a transição de clientes para o controle de acesso baseado em função.

    Opção Description
    Chave de API (padrão). Requer chaves de API no cabeçalho da solicitação para autorização.
    Controlo de acesso baseado em funções Requer associação a uma atribuição de função para concluir a tarefa. Também requer um cabeçalho de autorização na solicitação.
    Ambos As solicitações são válidas usando uma chave de API ou um controle de acesso baseado em função, mas se você fornecer ambos na mesma solicitação, a chave de API será usada.
  4. Como administrador, se você escolher uma abordagem somente de funções, atribua funções de plano de dados à sua conta de usuário para restaurar o acesso administrativo total sobre operações de plano de dados no portal do Azure. As funções incluem Colaborador do Serviço de Pesquisa, Colaborador de Dados do Índice de Pesquisa e Leitor de Dados do Índice de Pesquisa. Você precisa das três funções se quiser acesso equivalente.

    Às vezes, pode levar de cinco a dez minutos para que as atribuições de função entrem em vigor. Até que isso aconteça, a seguinte mensagem aparece nas páginas do portal usadas para operações de plano de dados.

    Captura de tela da mensagem do portal indicando permissões insuficientes.

Desativar o controle de acesso baseado em função

É possível desativar o controle de acesso baseado em função para operações de plano de dados e usar a autenticação baseada em chave. Você pode fazer isso como parte de um fluxo de trabalho de teste, por exemplo, para excluir problemas de permissão.

Inverta as etapas seguidas anteriormente para habilitar o acesso baseado em função.

  1. Entre no portal do Azure e abra a página do serviço de pesquisa.

  2. Selecione Configurações e, em seguida, selecione Teclas no painel de navegação esquerdo.

  3. Selecione Chaves de API.

Desativar autenticação de chave de API

O acesso à chave, ou autenticação local, pode ser desabilitado em seu serviço se você estiver usando exclusivamente as funções internas e a autenticação do Microsoft Entra. A desativação de chaves de API faz com que o serviço de pesquisa recuse todas as solicitações relacionadas a dados que passam uma chave de API no cabeçalho.

As chaves da API de administrador podem ser desativadas, mas não excluídas. As chaves da API de consulta podem ser excluídas.

As permissões de Proprietário ou Colaborador são necessárias para desativar os recursos de segurança.

  1. No portal do Azure, navegue até o serviço de pesquisa.

  2. No painel de navegação esquerdo, selecione Chaves.

  3. Selecione Controle de acesso baseado em função.

A alteração entra em vigor imediatamente, mas aguarde alguns segundos antes do teste. Supondo que você tenha permissão para atribuir funções como membro de Proprietário, administrador de serviço ou coadministrador, você pode usar os recursos do portal para testar o acesso baseado em função.

Efeitos do controle de acesso baseado em função

  • O controle de acesso baseado em função pode aumentar a latência de algumas solicitações. Cada combinação exclusiva de recurso de serviço (índice, indexador, conjuntos de habilidades e assim por diante) e entidade de serviço dispara uma verificação de autorização. Essas verificações de autorização podem adicionar até 200 milissegundos de latência por solicitação.

  • Em casos raros em que as solicitações se originam de um grande número de entidades de serviço diferentes, todas direcionadas a recursos de serviço diferentes (índices, indexadores e assim por diante), é possível que as verificações de autorização resultem em limitação. A limitação só aconteceria se centenas de combinações exclusivas de recurso de serviço de pesquisa e entidade de serviço fossem usadas em um segundo.

Próximos passos