Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
A Proteção de Token é um controle de sessão de Acesso Condicional que tenta reduzir os ataques de repetição de token garantindo que apenas tokens de sessão de entrada vinculados ao dispositivo, como PRTs (Primary Refresh Tokens), sejam aceitos pelo Entra ID quando os aplicativos solicitarem acesso a recursos protegidos.
Quando um usuário registra um dispositivo Windows 10 ou posterior com o Microsoft Entra, um PRT é emitido e vinculado criptograficamente a esse dispositivo. Essa associação garante que, mesmo que um agente de ameaça roube um token, ele não pode ser usado de outro dispositivo. Com a Proteção de Token imposta, o Microsoft Entra valida que apenas esses tokens de sessão de entrada vinculados são usados por aplicativos suportados.
Você pode impor a política de Proteção de Token nos recursos do Exchange Online, SharePoint Online e Teams. Ele é suportado por muitos aplicativos nativos do Microsoft 365. Para obter uma lista abrangente de aplicativos e recursos suportados, consulte a seção "Requisitos".
Note
Use esta política como parte de uma estratégia mais ampla contra o roubo de tokens, conforme descrito em Protegendo tokens no Microsoft Entra.
Requirements
O uso desse recurso requer licenças do Microsoft Entra ID P1. Para encontrar a licença certa para os seus requisitos, consulte Comparação das funcionalidades geralmente disponíveis do Microsoft Entra ID.
Os seguintes dispositivos e aplicativos oferecem suporte ao acesso a recursos onde uma política de Acesso Condicional de proteção de token é aplicada:
Dispositivos suportados
- Windows 10 ou dispositivos mais recentes que estão associados ao Microsoft Entra, associados ao Microsoft Entra em modo híbrido, ou registados no Microsoft Entra. Consulte a seção de limitações conhecidas para tipos de dispositivos não suportados.
- Windows Server 2019 ou mais recente que são híbridos Microsoft Entra juntou-se.
Note
Para passos detalhados sobre como registar o seu dispositivo, consulte Registar o seu dispositivo pessoal na rede de trabalho ou da escola.
Aplicações suportadas
- Cliente de sincronização do OneDrive versão 22.217 ou mais recente
- Versão do cliente nativo do Teams 1.6.00.1331 ou mais recente
- Power BI desktop versão 2.117.841.0 (maio de 2023) ou mais recente
- Módulo do Exchange PowerShell versão 3.7.0 ou mais recente
- Microsoft Graph PowerShell versão 2.0.0 ou mais recente com a opção EnableLoginByWAM
- Visual Studio 2022 ou mais recente ao usar a opção de início de sessão 'Gerenciador de autenticação do Windows'
- Aplicativo Windows versão 2.0.379.0 ou mais recente
Os seguintes recursos oferecem suporte à Proteção de Token:
- Office 365Exchange Online
- Office 365 SharePoint Online
- Serviços do Microsoft Teams
- Azure Virtual Desktop
- Janelas 365
Limitações conhecidas
- Não há suporte para clientes perpétuos do Office.
- Os seguintes aplicativos não oferecem suporte à entrada usando fluxos de token protegidos e os usuários são bloqueados ao acessar o Exchange e o SharePoint:
- Módulos do PowerShell acessando o SharePoint
- Extensão do PowerQuery para Excel
- Extensões para o Visual Studio Code que acessam o Exchange ou o SharePoint
- Os seguintes dispositivos cliente Windows não são suportados:
- Surface Hub
- Sistemas Microsoft Teams Rooms (MTR) baseados em Windows
- Os utilizadores externos que satisfazem os requisitos de registo do dispositivo de proteção de token no seu locador de origem são suportados. No entanto, os usuários que não atendem a esses requisitos veem uma mensagem de erro pouco clara sem indicação da causa raiz.
- Não há suporte para dispositivos registrados com o Microsoft Entra ID usando os seguintes métodos:
- O Microsoft Entra juntou-se aos anfitriões de sessão do Ambiente de Trabalho Virtual do Azure.
- Dispositivos Windows implementados utilizando o registo em massa.
- Cloud PCs implantados pelo Windows 365 que estão associados ao Microsoft Entra.
- Power Automate grupos de máquinas hospedadas que são associados ao Microsoft Entra.
- Dispositivos Windows Autopilot implantados usando o modo de implantação automática.
- Máquinas virtuais do Windows implantadas no Azure usando a extensão de máquina virtual (VM) habilitada para autenticação do Microsoft Entra ID.
Para identificar os dispositivos afetados devido aos tipos de registro sem suporte listados anteriormente, inspecione o tokenProtectionStatusDetails atributo nos logs de entrada. As solicitações de token bloqueadas devido a um tipo de registro de dispositivo sem suporte podem ser identificadas com um signInSessionStatusCode valor de 1003.
Para evitar interrupções durante a integração, modifique a política de Acesso Condicional de proteção de token adicionando uma condição de filtro de dispositivo que exclua dispositivos na categoria de implantação descrita anteriormente. Por exemplo, para excluir:
- Cloud PCs que estão juntos ao Microsoft Entra, pode usar
systemLabels -eq "CloudPC" and trustType -eq "AzureAD". - Azure Virtual Desktops que estão ligados à Microsoft Entra, pode utilizar
systemLabels -eq "AzureVirtualDesktop" and trustType -eq "AzureAD". - Os grupos de máquinas hospedadas no Power Automate que estão associadas ao Microsoft Entra, pode usar
systemLabels -eq "MicrosoftPowerAutomate" and trustType -eq "AzureAD". - Dispositivos Windows Autopilot implantados usando o modo de implantação automática, você pode usar a propriedade enrollmentProfileName. Por exemplo, se tiver criado um perfil de inscrição no Intune para dispositivos no modo de autoimplementação do Autopilot, chamado "Perfil de autoimplementação do Autopilot", pode utilizar `enrollmentProfileName -eq "Perfil de autoimplementação do Autopilot"`.
- Máquinas virtuais do Windows no Azure que estão associadas ao Microsoft Entra, pode usar
profileType -eq "SecureVM" and trustType -eq "AzureAD".
Deployment
Para os usuários, a implantação de uma política de Acesso Condicional para impor a proteção de token deve ser invisível ao usar plataformas de cliente compatíveis em dispositivos registrados e aplicativos compatíveis.
Para minimizar a probabilidade de interrupção do usuário devido à incompatibilidade do aplicativo ou dispositivo, siga estas recomendações:
- Comece com um grupo piloto de usuários e expanda ao longo do tempo.
- Crie uma política de Acesso Condicional no modo somente relatório antes de impor a proteção de token.
- Capture logs de entrada interativos e não interativos.
- Analise esses logs por tempo suficiente para cobrir o uso normal do aplicativo.
- Adicione usuários conhecidos e confiáveis a uma política de imposição.
Esse processo ajuda a avaliar a compatibilidade do cliente e do aplicativo dos usuários para a aplicação da proteção de token.
Criar uma política de Acesso Condicional
Os usuários que executam funções especializadas, como as descritas em Níveis de segurança de acesso privilegiado, são possíveis alvos para essa funcionalidade. Recomendamos realizar um teste inicial com um pequeno subconjunto.
As etapas a seguir ajudam a criar uma política de Acesso Condicional para exigir proteção de token para o Exchange Online e o SharePoint Online em dispositivos Windows.
- Entre no centro de administração do Microsoft Entra como pelo menos um Administrador de Acesso Condicional.
- Navegue até Entra ID>Acesso Condicional>Políticas.
- Selecione Nova política.
- Dê um nome à sua política. Recomendamos que as organizações criem um padrão significativo para os nomes de suas políticas.
- Em Atribuições, selecione Usuários ou identidades de carga de trabalho.
- Em Incluir, selecione os utilizadores ou grupos que estão a testar esta política.
- Em Excluir, selecione Usuários e grupos e escolha as contas de acesso de emergência ou de quebra-vidro da sua organização.
- Em Recursos de destino>Recursos (anteriormente aplicações na nuvem)>Incluir>Selecionar recursos
Em Selecionar, selecione os seguintes aplicativos:
- Office 365Exchange Online
- Office 365 SharePoint Online
- Serviços do Microsoft Teams
- Se você implantou o Aplicativo do Windows em seu ambiente, inclua:
- Azure Virtual Desktop
- Janelas 365
- Iniciar Sessão na Nuvem do Windows
Warning
Sua política de Acesso Condicional só deve ser configurada para esses aplicativos. Selecionar o grupo de aplicativos do Office 365 pode resultar em falhas não intencionais. Essa alteração é uma exceção à regra geral de que o grupo de aplicativos do Office 365 deve ser selecionado em uma política de Acesso Condicional.
Escolha Selecionar.
- Sob Condições:
- Em Plataformas de dispositivos:
- Defina Configurar como Sim.
- Incluir>Selecionar plataformas de dispositivo>Windows.
- Selecione Concluído.
- Em Aplicativos cliente:
Defina Configurar como Sim.
Warning
Não configurar a condição Aplicativos Cliente ou deixar o Navegador selecionado pode fazer com que os aplicativos que usam MSAL.js, como o Teams Web, sejam bloqueados.
Em Clientes de autenticação moderna, selecione apenas Aplicativos móveis e clientes de desktop. Deixe outros itens desmarcados.
Selecione Concluído.
- Em Plataformas de dispositivos:
- Em Controlo de Acesso>Sessão, selecione Exigir proteção de token para sessões de início de sessão e selecione Selecionar.
- Confirme as suas configurações e defina Ativar política como Apenas para relatório.
- Selecione criar para ativar sua política.
Depois de confirmar suas configurações usando o impacto da política ou o modo somente relatório, mova a alternância Habilitar política de Somente relatório para Ativado.
Tip
Como as políticas de Acesso Condicional que exigem proteção por token estão atualmente disponíveis apenas para dispositivos Windows, é necessário proteger seu ambiente contra possíveis desvios de diretiva quando um invasor pode parecer vir de uma plataforma diferente.
Além disso, você deve configurar as seguintes políticas:
Capture os logs e analise
Monitore a imposição de acesso condicional da proteção de token antes e depois da imposição usando recursos como impacto de política, logs de entrada e análise de log.
Registos de login
Use o registo de entrada do Microsoft Entra para verificar o resultado de uma política de imposição de proteção de token no modo somente relatório ou no modo ativado.
- Entre no centro de administração do Microsoft Entra como pelo menos um Administrador de Acesso Condicional.
- Navegue até Entra ID>Monitorização e saúde>Registos de entrada.
- Selecione uma solicitação específica para determinar se a política é aplicada ou não.
- Vá para o painel Acesso Condicional ou Somente Relatório, dependendo de seu estado, e selecione o nome da política que requer proteção de tokens.
- Em Controles de Sessão , verifique se os requisitos da política foram atendidos ou não.
- Para encontrar mais detalhes sobre o estado de vinculação da solicitação, selecione o painel Informações básicas e consulte o campo Proteção de token - Sessão de login. Os valores possíveis são:
- Vinculado: a solicitação estava usando protocolos vinculados. Alguns logins podem incluir várias solicitações, e todas as solicitações devem ser vinculadas para satisfazer a política de proteção de token. Mesmo que uma solicitação individual pareça estar vinculada, ela não garante a conformidade com a política se outras solicitações não estiverem vinculadas. Para ver todos os pedidos de início de sessão, pode filtrar todos os pedidos para um utilizador específico ou procurar por correlationId.
- Unbound: a solicitação não estava usando protocolos vinculados. Quando a solicitação é desvinculada, as possíveis
statusCodessão:- 1002: A solicitação não está vinculada devido à falta de estado do dispositivo Microsoft Entra ID.
- 1003: A solicitação não está vinculada porque o estado do dispositivo Microsoft Entra ID não satisfaz os requisitos da política de Acesso Condicional para proteção de tokens. Este erro pode dever-se a um tipo de registo de dispositivo não suportado ou o dispositivo não foi registado utilizando novas credenciais de início de sessão.
- 1005: A solicitação está desvinculada por outras razões não especificadas.
- 1006: A solicitação foi rejeitada porque a versão do sistema operativo não é compatível.
- 1008: A solicitação está sem vinculação porque o cliente não está integrado com o broker da plataforma, como o Gerenciador de Contas do Windows (WAM).
Análise de Registos
Você também pode usar o Log Analytics para realizar consultas nos logs de entrada (interativos e não interativos) para solicitações bloqueadas devido a falha na aplicação da proteção de token.
Aqui está um exemplo de consulta do Log Analytics pesquisando os logs de entrada não interativos dos últimos sete dias, destacando solicitações bloqueadas versus permitidas por aplicativo. Estas consultas são apenas exemplos e estão sujeitas a alterações.
Note
Saída de logs de login: O valor da cadeia de caracteres usada em "enforcedSessionControls" e "sessionControlsNotSatisfied" mudou de "Binding" para "SignInTokenProtection" no final de junho de 2023. As consultas sobre os dados do Registo de Entrada devem ser atualizadas para refletir essa alteração. Os exemplos abrangem ambos os valores para incluir dados históricos.
//Per Apps query
// Select the log you want to query (SigninLogs or AADNonInteractiveUserSignInLogs )
//SigninLogs
AADNonInteractiveUserSignInLogs
// Adjust the time range below
| where TimeGenerated > ago(7d)
| project Id,ConditionalAccessPolicies, Status,UserPrincipalName, AppDisplayName, ResourceDisplayName
| where ConditionalAccessPolicies != "[]"
| where ResourceDisplayName == "Office 365 Exchange Online" or ResourceDisplayName =="Office 365 SharePoint Online" or ResourceDisplayName =="Azure Virtual Desktop" or ResourceDisplayName =="Windows 365" or ResourceDisplayName =="Windows Cloud Login"
| where ResourceDisplayName == "Office 365 Exchange Online" or ResourceDisplayName =="Office 365 SharePoint Online"
//Add userPrincipalName if you want to filter
// | where UserPrincipalName =="<user_principal_Name>"
| mv-expand todynamic(ConditionalAccessPolicies)
| where ConditionalAccessPolicies ["enforcedSessionControls"] contains '["Binding"]' or ConditionalAccessPolicies ["enforcedSessionControls"] contains '["SignInTokenProtection"]'
| where ConditionalAccessPolicies.result !="reportOnlyNotApplied" and ConditionalAccessPolicies.result !="notApplied"
| extend SessionNotSatisfyResult = ConditionalAccessPolicies["sessionControlsNotSatisfied"]
| extend Result = case (SessionNotSatisfyResult contains 'SignInTokenProtection' or SessionNotSatisfyResult contains 'SignInTokenProtection', 'Block','Allow')
| summarize by Id,UserPrincipalName, AppDisplayName, Result
| summarize Requests = count(), Users = dcount(UserPrincipalName), Block = countif(Result == "Block"), Allow = countif(Result == "Allow"), BlockedUsers = dcountif(UserPrincipalName, Result == "Block") by AppDisplayName
| extend PctAllowed = round(100.0 * Allow/(Allow+Block), 2)
| sort by Requests desc
O resultado da consulta anterior deve ser semelhante à seguinte captura de tela:
O exemplo de consulta a seguir examina o log de entrada não interativo dos últimos sete dias, destacando solicitações bloqueadas versus permitidas pelo usuário.
//Per users query
// Select the log you want to query (SigninLogs or AADNonInteractiveUserSignInLogs )
//SigninLogs
AADNonInteractiveUserSignInLogs
// Adjust the time range below
| where TimeGenerated > ago(7d)
| project Id,ConditionalAccessPolicies, UserPrincipalName, AppDisplayName, ResourceDisplayName
| where ConditionalAccessPolicies != "[]"
| where ResourceDisplayName == "Office 365 Exchange Online" or ResourceDisplayName =="Office 365 SharePoint Online" or ResourceDisplayName =="Azure Virtual Desktop" or ResourceDisplayName =="Windows 365" or ResourceDisplayName =="Windows Cloud Login"
| where ResourceDisplayName == "Office 365 Exchange Online" or ResourceDisplayName =="Office 365 SharePoint Online"
//Add userPrincipalName if you want to filter
// | where UserPrincipalName =="<user_principal_Name>"
| mv-expand todynamic(ConditionalAccessPolicies)
| where ConditionalAccessPolicies ["enforcedSessionControls"] contains '["Binding"]' or ConditionalAccessPolicies ["enforcedSessionControls"] contains '["SignInTokenProtection"]'
| where ConditionalAccessPolicies.result !="reportOnlyNotApplied" and ConditionalAccessPolicies.result !="notApplied"
| extend SessionNotSatisfyResult = ConditionalAccessPolicies.sessionControlsNotSatisfied
| extend Result = case (SessionNotSatisfyResult contains 'SignInTokenProtection' or SessionNotSatisfyResult contains 'SignInTokenProtection', 'Block','Allow')
| summarize by Id, UserPrincipalName, AppDisplayName, ResourceDisplayName,Result
| summarize Requests = count(),Block = countif(Result == "Block"), Allow = countif(Result == "Allow") by UserPrincipalName, AppDisplayName,ResourceDisplayName
| extend PctAllowed = round(100.0 * Allow/(Allow+Block), 2)
| sort by UserPrincipalName asc
O exemplo de consulta a seguir examina o log de entrada não interativo dos últimos sete dias, destacando os utilizadores que estão a utilizar dispositivos em que o estado do dispositivo Microsoft Entra ID não preenche os requisitos da política de CA para proteção de token.
AADNonInteractiveUserSignInLogs
// Adjust the time range below
| where TimeGenerated > ago(7d)
| where TokenProtectionStatusDetails!= ""
| extend parsedBindingDetails = parse_json(TokenProtectionStatusDetails)
| extend bindingStatus = tostring(parsedBindingDetails["signInSessionStatus"])
| extend bindingStatusCode = tostring(parsedBindingDetails["signInSessionStatusCode"])
| where bindingStatusCode == 1003
| summarize count() by UserPrincipalName
Experiência do utilizador final
Um usuário que registrou ou inscreveu seu dispositivo suportado não enfrenta diferenças na experiência de entrada em um aplicativo com suporte de proteção de token quando o requisito de proteção de token está habilitado.
Um usuário que não registrou ou registrou seu dispositivo e se a política de proteção de token estiver ativada verá a captura de tela a seguir após a autenticação.
Um usuário que não estiver usando um aplicativo suportado quando a política de proteção de token estiver habilitada verá a captura de tela a seguir após a autenticação.