【问题标题】:Spring Security User弹簧安全用户
【发布时间】:2010-05-15 12:25:15
【问题描述】:

使用自定义属性创建新用户时,Spring 中的最佳实践是什么...扩展 org.springframework.security.core.userdetails.User 或在 UserDetailsS​​ervice 中创建用户(这是 IceFaces 中采用的方法教程)。

public UserDetails loadUserByUsername(String username)
        throws UsernameNotFoundException, DataAccessException {
    AppUser user = userDAO.findUser(username);
    if (user == null)
        throw new UsernameNotFoundException("User not found: " + username);
    else {
        return makeUser(user);
    }
}

private User makeUser(AppUser user) {
    return new User(user.getLogin(), user
            .getPassword(), true, true, true, true,
            makeGrantedAuthorities(user));
}

【问题讨论】:

    标签: spring-security


    【解决方案1】:

    如果您的用户权限适合 Spring Security User 类的上下文,那么只需编写您自己的 UserDetails 服务就可以了。但是,如果您的用户具有其他未封装在默认Userclass 中的可用字段中的属性,那么您将需要同时执行这两项操作。没有真正的“最佳实践” - 两者都是不错的选择,这实际上取决于您的用例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-01-03
      • 2018-09-08
      • 1970-01-01
      • 2015-01-09
      • 2017-08-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多