gpt4 book ai didi

Azure AD B2C 密码过期

转载 作者:行者123 更新时间:2023-12-01 10:26:45 32 4
gpt4 key购买 nike

我们在解决方案中利用Azure AD B2C,并采用“注册或登录”策略。定期(我没有计算确切的天数),当我尝试登录时,我得到:“无效的用户名或密码”。我必须重置密码才能使其正常工作。

所以我有两个问题:

  • 是否有默认密码过期策略? Azure B2C Connect 上的功能请求之一是启用此类自定义过期策略的定义,但我在文档中没有发现默认策略已经到位。有没有办法消除这种默认行为(即没有过期)?

  • 消息“用户名或密码无效”具有误导性,应为“您的密码已过期”。有办法改变吗?

谢谢!

最佳答案

Is there a default password expiration policy?

对于 B2C 本地帐户:

注意:本地帐户只能通过注册或 AAD Graph API 创建。您无法通过在 B2C 租户 AAD 中单击“新建用户”来创建它。

默认情况下没有针对本地帐户的密码过期策略。Azure AD B2C 的注册、注册或登录以及密码重置策略使用“强”密码强度,并且不使用“强”密码强度。不要使 Azure AD B2C 中本地帐户的任何密码过期。您可以在 this FAQ 中看到这一点.

但是,在某些情况下您可能会遇到 B2C 本地帐户用户密码过期的情况。

  • 默认情况下,如果本地帐户是通过内置密码策略创建的,则此策略将设置 passwordPolicies属性至DisablePasswordExpiration 。这样B2C本地用户的密码就不会过期。

  • 但是,如果本地帐户是通过自定义策略或 Azure AD Graph API 创建的,则您必须设置 passwordPolicies属性(property)为DisablePasswordExpiration手动。

因此,如果您不将密码策略的属性设置为 DisablePasswordExpiration,您的本地用户的密码可能会在 90 天后过期而不通知。 .

Is there any way to remove this default behavior (i.e. no expiration)? The message "invalid username or password" is misleading and should be "your password has expired". Any way to change that?

本地帐户的解决方案:

  1. 您可以引用this example通过 AAD Graph API 创建没有密码过期的 B2C 本地用户:

    POST https://graph.windows.net/contosob2c.onmicrosoft.com/users?api-version=1.6
    Authorization: Bearer eyJhbGciOiJSUzI1NiIsIng1dCI6IjdkRC1nZWNOZ1gxWmY3R0xrT3ZwT0IyZGNWQSIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJod...
    Content-Type: application/json
    Content-Length: 338
    {
    // All of these properties are required to create consumer users.
    "accountEnabled": true,
    "signInNames": [ // controls which identifier the user uses to sign in to the account
    {
    "type": "emailAddress", // can be 'emailAddress' or 'userName'
    "value": "<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="53393c36303c3d20263e362113343e323a3f7d303c3e" rel="noreferrer noopener nofollow">[email protected]</a>"
    }
    ],
    "creationType": "LocalAccount", // always set to 'LocalAccount'
    "displayName": "Joe Consumer", // a value that can be used for displaying to the end user
    "mailNickname": "joec", // an email alias for the user
    "passwordProfile": {
    "password": "P@ssword!",
    "forceChangePasswordNextLogin": false // always set to false
    },
    "passwordPolicies": "DisablePasswordExpiration"
    }
  2. 将受影响用户的密码策略属性更新为 DisablePasswordExpiration PATCH 通过AAD Graph API的方法,可以引用this documentation更新您的 B2C 用户。

  3. 要求所有受影响的 B2C 用户更改密码。

<小时/>

对于社交帐户:

密码过期取决于身份提供商的密码策略。 AAD can also be an identity provider in AAD B2C .

仅适用于工作或学校帐户的 AAD 密码过期策略。可应用于在 Azure AD 中创建和管理的用户帐户的可用密码策略设置。

因此,如果您将 AAD 作为 AAD B2C 的社交帐户,密码过期策略将影响这些社交帐户。

AAD 社交帐户的解决方案:

如果您的帐户是 Azure AD 中的社交帐户,请使用您的公司管理员凭据连接到该租户。执行以下命令之一:

  1. 要将一个用户的密码设置为永不过期,请使用用户主体名称 (UPN) 或用户的用户 ID 运行以下 cmdlet: Set-MsolUser -UserPrincipalName <user ID> -PasswordNeverExpires $true

  2. 要将组织中所有用户的密码设置为永不过期,请运行以下 cmdlet:Get-MSOLUser | Set-MsolUser -PasswordNeverExpires $true

您可以在 this document 中查看有关 Azure AD 中密码策略的更多详细信息。 .

关于Azure AD B2C 密码过期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47051521/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com