0

我要修改两个不同的网络应用程序,又名“Foo”和“Bar”。

它们都在https下运行,第一个 athttps://example.com/foo和后一个 at https://another.com/bar

我的目标是在 Foo 上放一个链接,这样我就可以在 Bar 自动登录。

像这样的东西:

<a href="https://another.com/bar/auth?token=das456s5a4sda2121asae">Click</a>

这些应用程序托管在不同的服务器上,但它们都可以访问同一个数据库。

鉴于上述情况,在使用 URL 参数对用户进行身份验证之前应该考虑什么?

例如,我需要生成令牌。我应该只加密用户+到期日期吗?关于身份验证令牌生成的任何其他建议?

可以启用 CORS,但我会把它作为最后的手段。

不确定这是否相关,但Bar使用Spring-Security

4

1 回答 1

1

为了获得适当的安全性,您需要为您的 SSO(单点登录)使用一些额外的服务作为 CAS(中央身份验证服务, https: //en.wikipedia.org/wiki/Central_Authentication_Service)。

例如,您可以使用http://www.jasig.org/cas

如果您继续使用令牌进行预授权链接,

  • 任何有链接的人都可以登录到您的网站
  • 您必须为每个站点复制相同的机制实现
于 2013-07-17T01:49:41.747 回答