Gerenciar a segurança de uma solução de Pesquisa de IA do Azure
As organizações precisam ser capazes de confiar na segurança de suas soluções de pesquisa. O Azure AI Search dá-lhe controlo sobre como proteger os dados que pesquisa.
Aqui, você explorará como proteger sua solução de pesquisa. Você se concentrará em onde os dados são criptografados e como proteger os fluxos de dados de entrada e saída. Finalmente, você verá como restringir o acesso aos resultados da pesquisa para usuários ou grupos específicos.
Visão geral das abordagens de segurança
A segurança do AI Search baseia-se nos recursos de segurança de rede existentes do Azure. Quando pensa em proteger a sua solução de pesquisa, pode concentrar-se em três áreas:
- Solicitações de pesquisa de entrada feitas pelos usuários à sua solução de pesquisa
- Solicitações de saída de sua solução de pesquisa para outros servidores para indexar documentos
- Restringir o acesso ao nível do documento por pedido de pesquisa do utilizador
Encriptação de dados
O serviço Azure AI Search, como todos os serviços do Azure, criptografa os dados armazenados em repouso com chaves gerenciadas pelo serviço. Essa criptografia inclui índices, fontes de dados, mapas de sinônimos, conjuntos de habilidades e até mesmo as definições do indexador.
Os dados em trânsito são criptografados usando a criptografia HTTPS TLS 1.3 padrão pela porta 443.
Se você quiser usar suas próprias chaves de criptografia, o ACS dá suporte ao uso do Cofre de Chaves do Azure. Um benefício de usar suas próprias chaves gerenciadas pelo cliente é que a criptografia dupla será habilitada em todos os objetos nos quais você usa suas chaves personalizadas.
Gorjeta
Para obter etapas detalhadas sobre como usar chaves gerenciadas pelo cliente para criptografia, consulte Configurar chaves gerenciadas pelo cliente para criptografia de dados no Azure AI Search
Proteger tráfego de entrada
Se a sua solução de pesquisa puder ser acedida externamente a partir da Internet ou de aplicações, pode reduzir a superfície de ataque. O Azure AI Search permite restringir o acesso ao ponto de extremidade público gratuitamente usando um firewall para permitir o acesso de endereços IP específicos.
Se o seu serviço de pesquisa for usado apenas por recursos locais, você poderá fortalecer a segurança com um circuito de Rota Expressa, o Gateway do Azure e um serviço de Aplicativo. Há também a opção de alterar o ponto de extremidade público para usar um link privado do Azure. Você também precisará configurar uma rede virtual do Azure e outros recursos. Usar um ponto de extremidade privado é a solução mais segura, embora venha com o custo adicional de usar esses serviços que precisam ser hospedados na plataforma Azure.
Gorjeta
Para obter mais informações sobre pontos de extremidade privados, consulte Criar um ponto de extremidade privado para uma conexão segura com o Azure AI Search.
Autenticar pedidos para a sua solução de pesquisa
Com a infraestrutura instalada para reduzir a superfície de ataque da sua solução de pesquisa, o seu foco pode mudar para a forma de autenticar pedidos de pesquisa dos seus utilizadores e aplicações.
A opção padrão quando você cria o ACS é a autenticação baseada em chave. Existem dois tipos diferentes de chaves:
- Chaves de administrador - conceda suas permissões de gravação e o direito de consultar informações do sistema (máximo de 2 chaves de administrador podem ser criadas por serviço de pesquisa)
- Chaves de consulta - concedem permissões de leitura e são usadas por seus usuários ou aplicativos para consultar índices (máximo de 50 chaves de consulta podem ser criadas por serviço de pesquisa)
Importante
O controle de acesso baseado em função para operações de plano de dados está atualmente em visualização e sob termos de uso suplementares. As funções só estão disponíveis na nuvem pública do Azure e usá-las pode aumentar a latência das solicitações de pesquisa.
O controle de acesso baseado em função (RBAC) é fornecido pela plataforma Azure como um sistema global para controlar o acesso aos recursos. Você pode usar o RBAC na Pesquisa de IA do Azure das seguintes maneiras:
- As funções podem receber acesso para administrar o serviço
- Definir funções com acesso para criar, carregar e consultar índices
As funções internas que você pode atribuir para gerenciar o serviço Azure AI Search são:
- Proprietário - Acesso total a todos os recursos de pesquisa
- Colaborador - O mesmo que acima, mas sem a capacidade de atribuir funções ou alterar autorizações
- Reader - Ver informações parciais do serviço
Se você precisar de uma função que também possa gerenciar o plano de dados, por exemplo, índices de pesquisa ou fontes de dados, use uma destas funções:
- Colaborador do Serviço de Pesquisa - Uma função para os administradores do serviço de pesquisa (o mesmo acesso que a função de Colaborador acima) e o conteúdo (índices, indexadores, fontes de dados e conjuntos de habilidades)
- Contribuidor de Dados de Índice de Pesquisa - Uma função para desenvolvedores ou proprietários de índices que importam, atualizam ou consultam a coleção de documentos de um índice
- Leitor de Dados de Índice de Pesquisa - Função de acesso somente leitura para aplicativos e usuários que só precisam executar consultas
Gorjeta
Para obter mais informações sobre autenticação com RBAC, consulte Usar controles de acesso baseados em função do Azure (Azure RBAC) no Azure AI Search.
Tráfego de saída seguro
Normalmente, o tráfego de saída indexa os dados de origem ou enriquece-os usando Inteligência Artificial (IA). As conexões de saída suportam o uso de autenticação baseada em chave, logons de banco de dados ou logons do Microsoft Entra se você puder usar o Microsoft Entra ID.
Se suas fontes de dados estiverem hospedadas na plataforma Azure, você também poderá proteger conexões usando um sistema ou uma identidade gerenciada atribuída pelo usuário.
Os serviços do Azure podem restringir o acesso a eles usando um firewall. Seu firewall pode ser configurado para permitir apenas o endereço IP do seu serviço Azure AI Search. Se você estiver enriquecendo seus índices com IA, também precisará permitir todos os endereços IP na tag de serviço AzureCognitiveSearch .
Você pode optar por proteger seus dados de origem por trás de um link privado compartilhado que seus indexadores usam.
Importante
Um link privado compartilhado requer uma camada Básica para indexação baseada em texto ou uma camada Standard 2 (S2) para indexação baseada em habilidades. Para obter detalhes de preços, consulte Preços do Azure Private Link.
Proteja os dados no nível do documento
Você pode configurar a Pesquisa de IA do Azure para restringir os documentos que alguém pode pesquisar, por exemplo, restringir a pesquisa de PDFs contratuais a pessoas do seu departamento jurídico.
Controlar quem tem acesso no nível do documento exige que você atualize cada documento em seu índice de pesquisa. Você precisa adicionar um novo campo de segurança a cada documento que contenha as IDs de usuário ou grupo que podem acessá-lo. O campo de segurança precisa ser filtrável para que você possa filtrar os resultados da pesquisa no campo.
Com esse campo instalado e preenchido com o usuário ou grupos permitidos, você pode restringir os resultados adicionando o search.in
filtro a todas as suas consultas de pesquisa. Se você estiver usando solicitações HTTP POST, o corpo deverá ter esta aparência:
{
"filter":"security_field/any(g:search.in(g, 'user_id1, group_id1, group_id2'))"
}
Isso filtraria os resultados da pesquisa retornados no ID do usuário e nos grupos aos quais esse usuário pertence. Se o seu aplicativo puder usar o Microsoft Entra ID, é possível usar a identidade do usuário e as associações de grupo a partir daí.
Gorjeta
Para obter um guia passo a passo sobre como usar o Microsoft Entra ID, consulte Filtros de segurança para cortar resultados da Pesquisa do Azure AI usando identidades do Ative Directory