Configurar a segurança da Web e do canal de Linha Direta

Quando cria um agente Copilot Studio, qualquer pessoa que conheça o ID do agente pode aceder imediatamente ao agente através dos canais Demo e Custom website. Esses canais estão disponíveis por padrão e nenhuma configuração é necessária.

Para a aplicação Microsoft Teams, pode configurar opções avançadas de segurança nos canais web.

Note

Se você tiver uma licença somente do Teams, não poderá gerar segredos para habilitar o acesso seguro. Os tokens de acesso seguro são criados automaticamente para você e o acesso seguro é habilitado por padrão.

Os usuários podem encontrar o ID do agente diretamente no Copilot Studio ou recebendo-o de alguém. Mas, dependendo da capacidade e sensibilidade do agente, esse acesso pode não ser desejável.

Ao utilizar segurança baseada em Direct Line, pode ativar o acesso apenas a locais que controla, ativando o acesso seguro com segredos ou tokens Direct Line.

Você também pode trocar e regenerar segredos e atualizar tokens, e pode facilmente desativar o acesso seguro se não quiser mais usá-lo.

Note

O Copilot Studio usa o canal Bot Framework Direct Line para conectar sua página da Web ou aplicativo ao agente.

Ativar ou desativar a segurança do canal Web

Você pode impor o uso de segredos e tokens para cada agente individual.

Quando ativa esta opção, os canais precisam que o cliente autentique os seus pedidos, seja usando um segredo ou usando um token gerado pelo segredo, obtido em tempo de execução.

As tentativas de acessar o agente que não fornecem essa medida de segurança não funcionam.

  1. Vai à página de Definições do teu agente, seleciona Segurança e depois Segurança do canal Web.

Captura de ecrã da segurança do canal Web destacada no painel Configurações.

  1. Ativar a opção 'Exigir acesso protegido'.

Advertência

Quando liga ou desliga o Exige acesso seguro, pode demorar até duas horas até o sistema propagar as definições e entrar em vigor. Até lá, a configuração anterior está em vigor. Não precisa de publicar o agente para que esta alteração entre em vigor.

Planeie com antecedência para evitar expor o seu agente sem querer.

Se você precisar desativar a opção de segurança do canal da Web, poderá fazê-lo desmarcando a opção Exigir acesso seguro . A desativação do acesso seguro pode levar até duas horas para se propagar.

Captura de ecrã de uma mensagem de confirmação ao desativar o acesso seguro, que indica que esta ação torna o site Demo e qualquer canal Direct Line que não utilize um segredo ou token acessíveis. Esta ação pode levar até duas horas a entrar em vigor.

Use segredos ou tokens

Se estiver a criar uma aplicação de serviço para outro serviço, especificar o segredo no cabeçalho de autenticação das solicitações pode ser a abordagem mais simples.

Se estiveres a escrever uma aplicação em que o cliente corre num navegador ou aplicação móvel, ou se o código puder estar visível para os clientes, deves trocar o teu segredo por um token de segurança. Se você não usar um token, seu segredo pode ser comprometido. Quando você estiver fazendo a solicitação para adquirir o token em seu serviço, especifique o segredo no cabeçalho de autorização.

Os tokens só funcionam para uma única conversa e expiram a menos que sejam atualizados.

Escolha o modelo de segurança que melhor se adapta à sua situação.

Advertência

Não exponha o segredo em nenhum código que corra no navegador, seja codificado diretamente ou transferido através de uma chamada de rede.

Adquirir o token usando o segredo do seu código de serviço é a forma mais segura de proteger o seu agente do Copilot Studio.

Obtenha os segredos

Você precisa do segredo para poder especificá-lo nas solicitações de cabeçalho de autorização do seu aplicativo ou similar.

  1. No menu de navegação, em Configurações, selecione Segurança. Em seguida, selecione o mosaico Segurança do canal Web.

  2. Selecione Copiar para Segredo 1 ou Segredo 2 para copiá-lo para a área de transferência. Selecione o ícone de visibilidade para revelar o segredo. Um aviso é exibido antes que você possa revelá-lo.

Troque segredos

Se precisares de mudar o segredo que o teu agente usa, podes mudá-lo sem qualquer tempo de indisponibilidade ou interrupção.

O Copilot Studio oferece-te dois segredos, que funcionam em simultâneo. Podes trocar o segredo que o teu agente usa pelo outro. Depois de os segredos serem trocados e todos os seus utilizadores estarem ligados usando o novo segredo, pode regenerar o segredo.

Regenerar um segredo

Para regenerar um segredo, selecione Regenerar ao lado do segredo.

Advertência

O perfil de utilizador que se liga usando o segredo original ou um token obtido desse segredo é desconectado.

Gerar um token

Podes gerar um token que usas ao iniciar uma conversa com um único agente. Para mais informações, consulte a secção Get Direct Line token em Publique um agente para aplicações móveis ou personalizadas.

  1. Obtenha o segredo.

  2. No seu código de serviço, envie o seguinte pedido para trocar o segredo por um token. Substitua <SECRET> pelo valor do segredo obtido na Etapa 1.

    POST https://directline.botframework.com/v3/directline/tokens/generate
    Authorization: Bearer <SECRET>
    

Os trechos a seguir fornecem exemplos da solicitação de token gerada e sua resposta.

Exemplo de solicitação de geração de token

POST https://directline.botframework.com/v3/directline/tokens/generate
Authorization: Bearer RCurR_XV9ZA.cwA.BKA.iaJrC8xpy8qbOF5xnR2vtCX7CZj0LdjAPGfiCpg4Fv0

Exemplo gerar resposta de token

HTTP/1.1 200 OK
[other headers]
{
  "conversationId": "abc123",
  "token": "RCurR_XV9ZA.cwA.BKA.iaJrC8xpy8qbOF5xnR2vtCX7CZj0LdjAPGfiCpg4Fv0y8qbOF5xPGfiCpg4Fv0y8qqbOF5x8qbOF5xn",
  "expires_in": 1800
}

Se a solicitação for bem-sucedida, a resposta conterá um token válido para uma conversa e um expires_in valor que indica o número de segundos até que o token expire.

Para manter o token útil, deve renovar o token antes de expirar.

Atualizar um token

Podes atualizar um token um número ilimitado de vezes, desde que não esteja expirado.

Não podes atualizar um token expirado.

Para atualizar um token, envie o pedido seguinte e substitua <TOKEN TO BE REFRESHED> pelo token que pretende atualizar.

POST https://directline.botframework.com/v3/directline/tokens/refresh
Authorization: Bearer <TOKEN TO BE REFRESHED>

Os trechos a seguir fornecem exemplos da solicitação e resposta do token de atualização.

Exemplo de solicitação de atualização

POST https://directline.botframework.com/v3/directline/tokens/refresh
Authorization: Bearer CurR_XV9ZA.cwA.BKA.iaJrC8xpy8qbOF5xnR2vtCX7CZj0LdjAPGfiCpg4Fv0y8qbOF5xPGfiCpg4Fv0y8qqbOF5x8qbOF5xn

Exemplo de resposta de atualização

Se a solicitação for bem-sucedida, a resposta conterá um novo token válido para a mesma conversa que o token anterior e um expires_in valor que indica o número de segundos até que o novo token expire.

Para manter o novo token útil, atualize-o novamente antes de expirar.

HTTP/1.1 200 OK
[other headers]
{
  "conversationId": "abc123",
  "token": "RCurR_XV9ZA.cwA.BKA.y8qbOF5xPGfiCpg4Fv0y8qqbOF5x8qbOF5xniaJrC8xpy8qbOF5xnR2vtCX7CZj0LdjAPGfiCpg4Fv0",
  "expires_in": 1800
}

Para obter mais informações sobre como atualizar um token, consulte a seção Atualizar um token de linha direta em API de linha direta - Autenticação.