没有Spring安全性的Grails的OAuth 2.0

时间:2014-04-11 19:50:50

标签: grails oauth spring-security google-authentication grails-2.3

我目前正在为Google SignIn实施Shiro-Authentication和OAuth。这一切都很好,让我根据我的数据库中的用户电子邮件验证Gmail帐户。 我的构建配置如下所示:

    //User roles and permissions
    compile (":shiro:1.2.0") {
        excludes "servlet-api"
        excludes "shiro-quartz"
    }

    //Google SignIn
    compile ":oauth:2.1.0" 

我遇到的唯一问题是,当Google请求我的应用程序权限时,我会这样:enter image description here

当我期待更像这样的事情时:enter image description here

显然仍然使用OAuth 1.0而不是2.0。 我在这里读了很多问题,我找到的最接近的是Google consent screen not shown as expected

此实现的唯一问题是它使用Spring安全性,而我正在使用Shiro。当我尝试使用spring插件时,当我尝试编译它时,我会不断遇到这个问题:

| Error The following artifacts could not be resolved: org.springframework.security:spring-security-core:jar:3.2.0.RC1, org.springframework.security:spring-security-web:jar:3.2.0.RC1: Could not find artifact org.springframework.security:spring-security-core:jar:3.2.0.RC1 in grailsCentral (http://repo.grails.org/grails/plugins)
| Run 'grails dependency-report' for further information.

IDEA hook: Grails not found!
| Error java.lang.NullPointerException
| Error     at org.jetbrains.groovy.grails.rt.Agent$2.run(Agent.java:135)
| Error     at java.lang.Thread.run(Thread.java:695)

非常感谢任何提示或建议。

干杯。

1 个答案:

答案 0 :(得分:1)

我创建了一个sample grails applicationoauth plugin使用google authentication oauth2

试一试。

我已根据建议herejava中创建了一个新的src/java文件,并在Config.groovy的我的Google配置中使用了该文件。

我提供了完整的解决方案here