0
我在Spring-MVC应用程序中使用Spring安全框架。我必须在数据库中检查用户名和密码是否匹配,当然使用spring security。在多个网站上,我找到了角色的使用。我的程序或数据库中没有这样的属性角色。我可以排除这种情况,或者在使用Spring-Security时是否有必要使用角色。我张贴一些代码。请看看。春季安全认证,其中的角色的一部分?
<authentication-provider>
<jdbc-user-service data-source-ref="dataSource" users-by-username-query="select username,password from users where username=?" authorities-by-username-query="select u.username, r.authority from users u, roles r where u.userid = r.userid and u.username =?" />
</authentication-provider>
的LoginController:
@Controller
@PreAuthorize("hasRole('ROLE_USER')")
public class LoginController {
@RequestMapping(value = "/login", method = RequestMethod.GET)
public String login(){
return "login";
}
}
用户等级:
@Entity
@Table(name="registration")
public class User {
private String Username;
private String password;
}
哪里作用,这一切进来的画面。 P.S:我根据我的例子添加了预授权。谢谢。
谢谢。我是Spring安全新手。所以我想我需要在表格中创建一个角色。 PreAuthorize语句应该在哪里?在userController中? – 2014-09-26 14:19:47
你应该能够在网上找到很多很好的例子和代码库。做一点研究!出于各种原因,我喜欢在服务层保留PreAuthorize注释。 – proulxs 2014-09-26 14:30:24
好吧,我会,但不幸的是现在我想让这个东西工作。我现在应该在UserController中使用它吗? – 2014-09-26 14:37:19