ruby-on-rails - 在 Rails 中跨域单点登录的多站点应用程序?

标签 ruby-on-rails web-services architecture oauth

我必须开发跨域单点登录的多站点应用程序(类似于具有多个谷歌服务的谷歌帐户,如 gmail、docs、google+):

multi applications, multi domains, single sign on

  • 要使用子站点,用户必须在父站点上注册。
  • 每个站点都有自己的逻辑,除了用户登录、积分和
    发票。
  • 从子应用程序我必须能够登录到全局用户
    帐户,花费用户积分并为某些服务生成发票。
  • 注册表单、发票 list 和积分管理面板是
    仅可从父站点/应用程序获得。

  • 在 Rails 3.1 上实现这一点的最佳策略是什么?可扩展性、性能和安全性很重要。
  • 单轨还是多轨应用?
  • 单个数据库还是多个数据库?
  • 主要应用程序中的全局服务还是作为单独的应用程序/引擎?
  • 如何实现单点登录? DB中的单个 session ID或facebook oauth之类的东西?
  • 如何根据子站点的请求实现消费积分和生成发票?
  • 最佳答案

    您应该能够使用 OmniAuth 和多个(且独立的)Rails 应用程序来实现这一点。这些将是有趣的:

  • https://github.com/joshsoftware/sso-devise-omniauth-client
  • https://github.com/joshsoftware/sso-devise-omniauth-provider

  • 关于该主题的博客文章:http://blog.joshsoftware.com/2010/12/16/multiple-applications-with-devise-omniauth-and-single-sign-on/

    关于ruby-on-rails - 在 Rails 中跨域单点登录的多站点应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8504544/

    相关文章:

    wcf - 在不更改站点绑定(bind)的情况下更改 WCF Web 服务的公开端点 URL

    architecture - 在 DDD 架构中将帮助类放在哪里?

    assembly - 我正在尝试学习汇编语言,我有一些疑问,我在下面提到

    css - Rails Layout 样式表在呈现时消失

    ruby-on-rails - Rails 包括 where

    ruby-on-rails - 更新模型时如何更新counter_cache?

    design-patterns - Web 应用程序中的插件架构(示例或代码片段?)

    ruby-on-rails - 将 Globalize 添加到我的 Rails 项目时涉及哪些步骤

    java - WS-安全和运输安全

    java - 网络服务安全