我在集成过程中在Spring Security之外有一个自定义身份验证实现。
我正在基于现有用户模型在身份验证过程中生成一个Spring用户。
除了getAuthority函数外,其他所有东西似乎都工作正常。
我在实现UserDetails的User模型中具有以下内容。
@Override
public Set<GrantedAuthority> getAuthorities() {
Set<GrantedAuthority> authorities = new HashSet<GrantedAuthority>();
authorities.add(new SimpleGrantedAuthority(this.role));
return authorities;
}
但是,我得到以下答复。
“message”:“需要授权的文本表示形式”,
我相信我缺少在数据库中生成正确ROLES的功能。当前
private String role
是“USER”。我认为我的问题是这个。
我的角色字段的正确格式是什么,以使其正常工作?插入此角色的最佳方法是什么?
最佳答案
这取决于。
如果您使用的是Spring
的默认安全配置,则需要“ROLE_
”前缀。
通常,基本值是:ROLE_USER
和ROLE_ADMIN
。
如果不是,请检查自定义配置。
相关问题: