Spring Security 如何在Grails中使用pin码而不是用户名和密码登录

vfwfrxfs  于 2023-01-17  发布在  Spring
关注(0)|答案(1)|浏览(134)

我正在使用Grails 2.4.3和Spring Security spring-security-core:2.0-RC 5。我可以使用用户名和密码轻松登录。现在有一个要求,我必须使用pin号而不是用户名和密码登录。
登录表单中将没有用户名和密码字段。现在这就是问题所在。我无法尝试它,因为我不知道如何代替用户名和密码。在这里,我只能与用户名和密码字段共享我的登录表单,其工作方式如下:

<form action='${postUrl}' method='POST' id='loginForm' class='cssform' autocomplete='off'>
            <div>
                <span><label>Username</label></span>
                <span><input type="text" class="textbox" name='j_username' id="active"></span>
            </div>
            <div>
                <span><label>Password</label></span>
                <span><input type="password" name='j_password' class="password"></span>
            </div>
            <div class="sign">
                <div class="submit">
                    <input type='submit' id="submit" value='${message(code: "springSecurity.login.button")}'/>
                </div>
                <div class="clear"> </div>
            </div>
        </form>
3xiyfsfu

3xiyfsfu1#

你想修改的所有东西都在DefaultSecurityConfig.groovy插件下。
我记得这样做的电子邮件ID,并已覆盖了几个安全配置。
要将j_username表单字段设置为不同的名称,您可以覆盖
grails.plugin.springsecurity.apf.用户名参数=邮政编码//您的域名字段名
并通过覆盖安全配置中的以下内容来更改需要被视为域类中用户名的字段:
grails.插件.springsecurity.用户查找.用户名属性名称='邮政编码'
记得深入研究DefaultSecurityConfig.groovy文件的任何其他这样的定制。我会建议创建一个单独的安全配置文件,并在那里覆盖任何配置,如果需要的话。

相关问题