java - 根据用户属性自定义授权

标签 java spring spring-security

在我的应用程序中,用户第一次登录后,必须更改默认密码。对于此过程,我有一个 changepassword.xhtml 页面,他可以在其中更改密码。我想限制对另一个页面的访问并将他重定向到 changepassword.xhtml 直到他更改了默认密码。用户类有一个 firstTime 属性,我可以在其中注册他是否是第一次登录。

我可以在我的配置类中管理它吗?

最佳答案

我认为您必须向用户添加USER_NEED_CHANGE_PASSWORD_ROLE角色,并仅授予他访问密码更改页面的权限。还需要在密码更改的标志的基础上存储并实现authentication-success-handler-ref = "my_handler"

当用户成功持有第一次授权后,检查该标志的状态。如果该标志需要更改密码,则重定向到密码更改页面。更改密码后将他重定向到登录页面。

关于java - 根据用户属性自定义授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38305996/

相关文章:

java - 在查询中使用 NULL 作为占位符值时避免 IllegalArgumentException?

java - 创建用于管理和解析命令参数的参数处理程序

spring - 配置两个@InitBinder 以使用相同的模型或实体但用于不同的@RequestMappings

java - Spring 4 中缺少 SpringBeanJobFactory

spring-security - Spring 安全 : Getting error "The server understood the request but refuses to authorize it"

java - 在您的联系人列表中查找 Android 用户

java - 使用 StringTemplate 渲染列表列表

java - Spring JUnit 测试 - 实例化问题

java - Spring Security 拦截器 URL 不起作用

java - 使用 spring-security-saml 在应用程序中没有配置 IDP 错误