我使用GORM选项使用grails spring security rest插件将生成的令牌存储在我的Grails 3.x应用程序的数据库中。
应用程序生成令牌但不会存储在数据库中。我们是否需要覆盖tokenStorage方法并拥有自己的实现来将令牌存储在数据库中
application.groovy中配置的插件属性列在下面
grails.plugin.springsecurity.rest.token.validation.useBearerToken = false
grails.plugin.springsecurity.rest.login.endpointUrl = '/api/login'
grails.plugin.springsecurity.rest.token.validation.headerName = 'X-Auth-Token'
grails.plugin.springsecurity.rest.token.storage.useJwt = false
grails.plugin.springsecurity.rest.token.storage.useGorm=true
grails.plugin.springsecurity.rest.token.storage.gorm.tokenDomainClassName='com.auth.AuthenticationToken'
grails.plugin.springsecurity.rest.token.storage.gorm.tokenValuePropertyName='token'
grails.plugin.springsecurity.rest.token.storage.gorm.usernamePropertyName='username'
grails.plugin.springsecurity.rest.login.passwordPropertyName = 'password'
grails.plugin.springsecurity.rest.login.useJsonCredentials = true
grails.plugin.springsecurity.rest.login.useRequestParamsCredentials = false
grails.plugin.springsecurity.rest.token.rendering.authoritiesPropertyName = 'permissions'
答案 0 :(得分:2)
确保已将以下内容添加到build.gradle:
compile 'org.grails.plugins:spring-security-rest:2.0.0.M2'
compile 'org.grails.plugins:spring-security-rest-gorm:2.0.0.M2'
您已在application.groovy或application.yml
中定义了以下内容grails.plugin.springsecurity.rest.token.storage.useGorm=true
grails.plugin.springsecurity.rest.token.storage.gorm.tokenDomainClassName = 'com.yourdomain.AuthenticationToken'
grails.plugin.springsecurity.rest.token.storage.gorm.tokenValuePropertyName = 'tokenValue'
grails.plugin.springsecurity.rest.token.storage.gorm.usernamePropertyName = 'username'
答案 1 :(得分:0)
几乎没有任何信息可以帮助您。没有构建配置,没有日志,也不知道如何发出请求......
但是根据您对问题的描述,我的猜测是您在类路径中缺少GORM模块。它清楚地说明in the documentation。
请务必阅读what's new in 2.0章节。
答案 2 :(得分:0)
我遇到了同样的问题,没有存储令牌,也没有看到错误消息。
安装GORM插件后:
compile "org.grails.plugins:spring-security-rest-gorm:2.0.0.M2"
我可以登录并将一个令牌保存到表格中。