0
我试图根据自己的需要调整springSecurity插件,所以当用户进行身份验证时,必须检查一个密钥对用户有效,然后存储在用户会话中(用户可以有几个键)。springSecurityService和参数在会话中设置
形式登录:
<form action='${request.contextPath}/j_spring_security_check' method='POST' id='loginForm' name='loginForm' controller="login" onLoading="showSpinner();" onComplete="hideSpinner();" class="form-horizontal" autocomplete='off'>
<g:if test='${flash.msg}'><div class='errors_pw3'><g:message code="default.message.login"/> </div><br/></g:if>
<div class="control-group" style="margin-left:80px;">
<label class="control-label" for='j_datastore'><g:message code="label.datastore" default="Key:" /></label>
<div class="controls">
<input type='text' name='key' id='key' value='${session.user.key}' class="span7"/>
</div>
</div>
<div class="control-group" style="margin-left:80px;">
<label class="control-label" for='j_username'><g:message code="label.ubistoreid" /></label>
<div class="controls">
<input type='text' name='j_username' id='username' value='${request.remoteUser}' class="span7"/>
</div>
</div>
<div class="control-group" style="margin-left:80px;">
<label class="control-label" for='j_password'><g:message code="label.password" /></label>
<div class="controls">
<input type='password' name='j_password' id='password' class="span7"/>
</div>
</div>
登录控制器:
def auth = {
def config = SpringSecurityUtils.securityConfig
def principal = springSecurityService.principal
// Store key in the session
session.setAttribute("KEY",params.key)
println params.key + "*******"
println params.params + "-----"
if (springSecurityService.isLoggedIn()) {
redirect uri:'/secure'
}
else if (params["login_error"]) {
if(request.getParameterValues('login_error')[0] == '1') {
flash.msg = "User or password invalid !"
}
}
String view = 'index'
String postUrl = "${request.contextPath}${config.apf.filterProcessesUrl}"
render view: view, model: [postUrl: postUrl,rememberMeParameter: config.rememberMe.parameter,params:params]
}
】这个params不传递到会话
请,如何修改springSecurityService到: 1)检查密钥条目是否授权给用户? (用户域类包含一个set<Key> keys
条目以授权密钥列表)
2)后来在用户的会话中使用它(一旦被验证)
登录控制器添加,为什么参数是空的? – 2013-05-01 19:32:49