對於測試環境的管理員角色給用戶,我有一個.ldif
文件授予ben
用戶的ADMIN
角色,因爲這個角色是我的春節安全configuation要求:.hasRole("ADMIN").anyRequest()
。授予在ldif文件
這裏是.ldif
文件內容:
dn: ou=groups,dc=springframework,dc=org
objectclass: top
objectclass: organizationalUnit
ou: groups
dn: ou=people,dc=springframework,dc=org
objectclass: top
objectclass: organizationalUnit
ou: people
dn: uid=ben,ou=people,dc=springframework,dc=org
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
cn: Ben LeHeros
sn: Ben
uid: ben
userPassword: {SHA}nFCebWjxfaLbHHG1Qk5UU4trbvQ=
dn: uid=toto,ou=people,dc=springframework,dc=org
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
cn: Toto LeHeros
sn: Toto
uid: toto
userPassword: totopass
dn: cn=adMIN,ou=groups,dc=springframework,dc=org
objectclass: top
objectclass: groupOfNames
cn: ADMin
uniqueMember: uid=ben,ou=people,dc=springframework,dc=org
dn: cn=user,ou=groups,dc=baeldung,dc=com
objectclass: top
objectclass: groupOfNames
cn: user
member: uid=toto,ou=people,dc=springframework,dc=org
測試環境Spring Security的配置如下:
有幾點看法:
1的測試成功並且用戶被認證和認證爲具有管理員角色。
2-如果不是將角色認證配置爲.hasRole("ADMIN").anyRequest()
我將其作爲.hasRole("admin").anyRequest()
,那麼在測試中給出的用戶角色將不被接受,並且測試在認證時將以403(而不是401)失敗。
3-情況似乎並不在.ldif
文件無關緊要的admin
組可以寫成adMIN
和ADMin
和測試仍然是成功的。
4-由user
組爲用戶更換admin
組,使測試失敗,一個403,也就是說,用戶需要管理員角色先登錄。
dn: cn=user,ou=groups,dc=springframework,dc=org
objectclass: top
objectclass: groupOfNames
cn: user
uniqueMember: uid=ben,ou=people,dc=springframework,dc=org
怎麼來的案件在.ldif
文件中無關緊要,並且在configure
方法中有問題?