单子登录子域

时间:2010-02-04 10:21:51

标签: php asp.net single-sign-on subdomain

请问我想了解如何在运行混合编程平台,asp.net和php的子域上实现单点登录?

3 个答案:

答案 0 :(得分:2)

如果顶级域名相同,您可以使用Cookie。 CodeProject上有一个article

答案 1 :(得分:2)

我知道这已经过时了,但我想我会通过谷歌搜索来解决这个问题。

对于单一登录跨平台,您可能希望实施基于SAML的解决方案。 SAML代表安全断言标记语言,是一种基于XML的解决方案。另一方面,您可以使用开源库,使其更容易被称为SimpleSAMLphp(simplesamlphp.org)。

我不确定asp.net方面是否有开源库供您使用,但由于SAML是一个开放标准,您应该可以使用纯asp.net进行。

答案 2 :(得分:0)

子域单点登录的实现

以下可以是为同一域或子域实施单点登录的步骤

  1. 对于第一次访问的用户,检查cookie是否存在,时间不存在
  2. 显示登录页面
  3. 验证用户
  4. 验证用户后,生成一个令牌,该令牌可以是任何需要在域之间共享的任何十六进制数
  5. 在令牌生成之后,在根路径中设置具有跨域的公用名称的cookie,并说出名称为“SSOkey”的cookie。和路径为' /'
  6. 将用户返回到成功页面
  7. 现在,当用户访问子域时,检查cookie是否存在并且如果存在则不会过期,而不是直接将用户重定向到成功页面,否则您可以显示登录页面。
  8. 通过以上步骤,您可以实现单点登录,以及上述步骤,您可以为安全性添加各种验证层