【问题标题】:Multiple domains for oauth providers configuration in Grails 2.3Grails 2.3 中 oauth 提供程序配置的多个域
【发布时间】:2014-07-03 17:08:51
【问题描述】:

使用 Grails 2.3.8 和

plugins {
  compile ':spring-security-core:2.0-RC2'
  compile ':spring-security-oauth:2.0.2'
  compile ':spring-security-oauth-facebook:0.1'
  compile ':spring-security-oauth-google:0.1'
}

以及默认提供程序设置:

oauth{
 providers{

facebook{
  api = org.scribe.builder.api.FacebookApi
  key = '11111'
  secret = '222222'
  successUri = "http://localhost:8880/oauth/facebook/success"
  failureUri = "http://localhost:8880/oauth/facebook/error"
  callback = "http://localhost:8880/oauth/facebook/callback"
  scope = 'email'
}
}

据我了解,我必须使用绝对 URL 进行回调。这是一个问题,因为我的应用程序映射到多个域,例如 myapp.com、myapp.de、myapp.ru 等。

是否可以开箱即用地为每个域提供回调 URL?

TIA

【问题讨论】:

  • 如何在应用程序中管理多个域?
  • 它们在 apache 配置中定义
  • 你能读取配置文件中的服务器 url 吗?
  • 在配置文件中 - 当然不是!

标签: grails multiple-domains spring-security-oauth2


【解决方案1】:

所以,我想通了!

这个解决方案有点丑陋,但很有魅力:

在我的配置中,我必须更改提供程序,以便服务器名称反映在提供程序名称和回调 URL 中:

oauth{
  providers{

    facebook{
      api = org.scribe.builder.api.FacebookApi
      key = '11111'
      secret = '22222222'
      scope = 'email'
    }

    'facebook_localhost'{
      api = org.scribe.builder.api.FacebookApi
      key = '111111'
      secret = '222222222'
      successUri = "http://localhost:8880/oauth/facebook_localhost/success"
      failureUri = "http://localhost:8880/oauth/facebook_localhost/error"
      callback = "http://localhost:8880/oauth/facebook_localhost/callback"
      scope = 'email'
    }

    'facebook_wwwmysitenet'{
      api = org.scribe.builder.api.FacebookApi
      key = '9999999'
      secret = '888888888888'
      successUri = "http://www.mesite.net/oauth/facebook_wwwmesitenet/success"
      failureUri = "http://www.mesite.net/oauth/facebook_wwwmesitenet/error"
      callback = "http://www.mesite.net/oauth/facebook_wwwmesitenet/callback"
      scope = 'email'
    }
  }
}

为了使处理更容易,我删除了服务器名称中的点。

我为谷歌做的一样。

【讨论】:

    猜你喜欢
    • 2015-01-10
    • 1970-01-01
    • 2011-12-26
    • 2011-03-28
    • 1970-01-01
    • 2021-09-28
    • 2013-03-31
    • 2020-08-12
    • 1970-01-01
    相关资源
    最近更新 更多