Partilhar via


Configurar um fluxo de redefinição de senha forçada no Azure Ative Directory B2C

Antes de começar, use o seletor Escolha um tipo de política para escolher o tipo de política que você está configurando. O Azure Ative Directory B2C oferece dois métodos para definir como os usuários interagem com seus aplicativos: por meio de fluxos de usuário predefinidos ou por meio de políticas personalizadas totalmente configuráveis. As etapas exigidas neste artigo são diferentes para cada método.

Descrição geral

Como administrador, você pode redefinir a senha de um usuário se o usuário esquecer sua senha . Ou você gostaria de forçá-los a redefinir a senha. Neste artigo, você aprenderá como forçar uma redefinição de senha nesses cenários.

Quando um administrador redefine a senha de um usuário por meio do portal do Azure, o valor do atributo forceChangePasswordNextSignIn é definido como true. A jornada de entrada e inscrição verifica o valor desse atributo. Depois que o usuário concluir o login, se o atributo estiver definido como true, o usuário deverá redefinir sua senha. Em seguida, o valor do atributo é definido como back false.

Force password reset flow

O fluxo de redefinição de senha é aplicável a contas locais no Azure AD B2C que usam um endereço de email ou nome de usuário com uma senha para entrar.

Pré-requisitos

Configure seu fluxo de usuário

Para habilitar a configuração Redefinição forçada de senha em um fluxo de usuário de inscrição ou entrada:

  1. Inicie sessão no portal do Azure.
  2. Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para seu locatário do Azure AD B2C no menu Diretórios + assinaturas .
  3. No portal do Azure, procure e selecione Azure AD B2C.
  4. Selecione Fluxos de usuário.
  5. Selecione o fluxo de usuário de inscrição e entrada ou de entrada (do tipo Recomendado) que você deseja personalizar.
  6. No menu esquerdo, em Definições, selecione Propriedades.
  7. Em Configuração de senha, selecione Redefinição forçada de senha.
  8. Selecione Guardar.

Testar o fluxo do usuário

  1. Entre no portal do Azure como administrador de usuário ou administrador de senha. Para obter mais informações sobre as funções disponíveis, consulte Atribuindo funções de administrador na ID do Microsoft Entra.
  2. Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para seu locatário do Azure AD B2C no menu Diretórios + assinaturas .
  3. No portal do Azure, procure e selecione Azure AD B2C.
  4. Selecione Utilizadores. Procure e selecione o utilizador que irá utilizar para testar a reposição da palavra-passe e, em seguida, selecione Repor Palavra-passe.
  5. No portal do Azure, procure e selecione Azure AD B2C.
  6. Selecione Fluxos de usuário.
  7. Selecione um fluxo de usuário de inscrição ou entrada (do tipo Recomendado) que você deseja testar.
  8. Selecione Executar fluxo de utilizador.
  9. Em Aplicativo, selecione o aplicativo Web chamado webapp1 que você registrou anteriormente. O URL de resposta deve mostrar https://jwt.ms.
  10. Selecione Executar fluxo de utilizador.
  11. Inicie sessão com a conta de utilizador para a qual redefiniu a palavra-passe.
  12. Agora você deve alterar a senha do usuário. Altere a senha e selecione Continuar. O token é devolvido e https://jwt.ms deve ser exibido para você.

Configurar sua política personalizada

Obtenha o exemplo da política de redefinição de senha forçada no GitHub. Em cada arquivo, substitua a cadeia de caracteres yourtenant pelo nome do locatário do Azure AD B2C. Por exemplo, se o nome do seu locatário B2C for contosob2c, todas as instâncias de yourtenant.onmicrosoft.com tornar-se-ão contosob2c.onmicrosoft.com.

Carregue e teste a política

  1. Inicie sessão no portal do Azure.
  2. Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para seu locatário do Azure AD B2C no menu Diretórios + assinaturas .
  3. Escolha Todos os serviços no canto superior esquerdo do portal do Azure e, em seguida, procure e selecione Azure AD B2C.
  4. Selecione Identity Experience Framework.
  5. Em Políticas personalizadas, selecione Política de carregamento.
  6. Selecione o arquivo TrustFrameworkExtensionsCustomForcePasswordReset.xml arquivo.
  7. Selecione Carregar.
  8. Repita as etapas 6 a 8 para o arquivo de terceira parte confiável TrustFrameworkExtensionsCustomForcePasswordReset.xml.

Executar a política

  1. Abra a política que carregou B2C_1A_TrustFrameworkExtensions_custom_ForcePasswordReset.
  2. Em Aplicativo, selecione o aplicativo que você registrou anteriormente. Para ver o token, o URL de resposta deve mostrar https://jwt.ms.
  3. Selecione Executar agora.
  4. Inicie sessão com a conta de utilizador para a qual redefiniu a palavra-passe.
  5. Agora você deve alterar a senha do usuário. Altere a senha e selecione Continuar. O token é devolvido e https://jwt.ms deve ser exibido para você.

Forçar redefinição de senha no próximo login

Para forçar a redefinição da senha no próximo login, atualize o perfil de senha da conta usando a operação de usuário do MS Graph Update. Para fazer isso, você precisa atribuir ao seu aplicativo Microsoft Graph a função de administrador de usuário. Siga as etapas em Conceder função de administrador de usuário para atribuir ao seu aplicativo Microsoft Graph uma função de administrador de usuário.

O exemplo a seguir atualiza o atributo forceChangePasswordNextSignIn do perfil de senha para true, que força o usuário a redefinir a senha no próximo login.

PATCH https://graph.microsoft.com/v1.0/users/<user-object-ID>
Content-type: application/json

{
    "passwordProfile": {
      "forceChangePasswordNextSignIn": true
    }
}

Depois que o perfil de senha da conta tiver sido definido, você também deverá configurar o fluxo de redefinição de senha forçada, conforme descrito neste artigo.

Forçar uma redefinição de senha após 90 dias

Como administrador, você pode definir a expiração da senha de um usuário para 90 dias, usando o MS Graph. Após 90 dias, o valor do atributo forceChangePasswordNextSignIn é automaticamente definido como true. Para forçar uma redefinição de senha após 90 dias, remova o DisablePasswordExpiration valor do atributo de política de senha do perfil do usuário.

O exemplo a seguir atualiza a política de senha para None, o que força uma redefinição de senha após 90 dias:

PATCH https://graph.microsoft.com/v1.0/users/<user-object-ID>
Content-type: application/json

{
  "passwordPolicies": "None"
}

Se você desabilitou a complexidade de senha forte, atualize a política de senha para DisableStrongPassword:

Nota

Depois que o usuário redefinir sua senha, as passwordPolicies serão alteradas de volta para DisablePasswordExpiration

PATCH https://graph.microsoft.com/v1.0/users/<user-object-ID>
Content-type: application/json

{
  "passwordPolicies": "DisableStrongPassword"
}

Depois que uma política de expiração de senha tiver sido definida, você também deverá configurar o fluxo de redefinição de senha forçada, conforme descrito neste artigo.

Duração da expiração da palavra-passe

Por padrão, a senha é definida para não expirar. No entanto, o valor é configurável usando o cmdlet Update-MgDomain do módulo PowerShell do Microsoft Graph. Este comando atualiza o locatário para que as senhas de todos os usuários expirem após alguns dias de configuração. Por exemplo:

Import-Module Microsoft.Graph.Identity.DirectoryManagement

Connect-MgGraph  -Scopes 'Domain.ReadWrite.All'

$domainId = "contoso.com"
$params = @{
	passwordValidityPeriodInDays = 90
	passwordNotificationWindowInDays = 15
}

Update-MgDomain -DomainId $domainId -BodyParameter $params

Nota

passwordValidityPeriodInDays Indica o período de tempo, em dias, durante o qual uma palavra-passe permanece válida antes de ter de ser alterada. passwordNotificationWindowInDays Indica o período de tempo, em dias antes da data de expiração da senha, quando os usuários recebem sua primeira notificação para indicar que sua senha está prestes a expirar.

Próximos passos

Configure uma redefinição de senha de autoatendimento.