0

我需要使用 wso2 身份服务器版本 5.11 在我的应用程序中添加密码到期功能。参考以下文档:https ://is.docs.wso2.com/en/latest/learn/password-expiry/ 根据上述文档,我们需要下载最新 IS 5.11 不支持的密码策略验证器。此外,我没有在身份提供者的常驻部分的密码策略下获得密码到期选项。

请建议我如何在 wso2 IS 5.11 中添加密码到期功能,这将在用户密码到期后重定向我的应用程序以更改密码窗口。

提前致谢!

4

1 回答 1

1

为此,
先决条件

  1. 如果服务器已经在运行,请停止它。
  2. 从这里下载 Password Reset Enforcer 代码并使用 mvn clean install -DskipTest
  3. 将以下行添加到<IS_HOME>/repository/conf/deployment.toml文件
    [[event_handler]]
    name= "passwordExpiry"
    subscriptions =["POST_UPDATE_CREDENTIAL", "POST_UPDATE_CREDENTIAL_BY_ADMIN", "POST_ADD_USER"]
    [event_handler.properties]
    passwordExpiryInDays= "30"
    enableDataPublishing= false
    priorReminderTimeInDays= "0"
  1. 检查构建文件并将身份验证页面 ( <PASSWORD_RESET_ENFORCER_ARTIFACTS>/is/pwd-reset.jsp) 复制到<IS_HOME>/repository/deployment/server/webapps/authenticationendpoint/目录。
  2. 将连接器 ( org.wso2.carbon.extension.identity.authenticator.passwordpolicy.connector-<version>.jar) 复制到<IS_HOME>/repository/components/dropins/目录。

配置过期策略

  1. 启动身份服务器并登录。
  2. 在 Main 选项卡下的 Identity 部分中,单击 Identity Providers 下的 Resident。
  3. 转到密码策略下的密码到期。
  4. 根据您的要求更改密码到期日。(默认情况下,密码重置强制执行器将在 30 天内使密码过期。)
  5. 单击更新以保存更改。 密码过期策略

配置

  1. 转到claims管理控制台并找到http://wso2.org/claims/identity/lastPasswordUpdateTimeURI 或last password update声明并将其设置为默认支持。
  2. 创建一个新用户,然后转到管理控制台并转到user-profile该用户并将Last Password Update值更新为较低的值。 更新用户的最后一次密码更新
  3. 转到Local and Outbound Authentication Configuration您的服务的“服务提供商”页面中的部分。
  4. 选择Advanced Configuration单选按钮选项。添加basic authentication作为第一步和Password Reset Enforcer authentication第二步。User subject identifier从此步骤中选择basic authenticationUse attributes从此步骤中选择Password Reset Enforcer服务提供商配置
  5. 现在尝试再次登录应用程序,您将被要求输入密码。

更多信息:https ://github.com/wso2-extensions/identity-outbound-auth-passwordPolicy/blob/master/docs/config.md

于 2021-10-04T09:08:20.827 回答