使用通过URL传递的加密令牌进行跨域身份验证

| 我正在研究如何针对域abc.com对用户进行身份验证,然后允许他们访问站点xyz.com的安全区域而无需再次登录。 经过一番阅读,以下解决方案看起来可行: 用户通过常规表单身份验证登录到站点abc.com 成功登录后,将在共享数据库中创建一条记录,其中包含guid,用户名和当前日期/时间。 通过加密Guid生成安全令牌,然后返回到站点xyz.com的重定向,并将安全令牌作为querystring参数。 网站xyz.com收到传入的请求,解密令牌,在数据库中找到匹配的记录(按过去的分钟过滤),然后为相关用户生成表单身份验证cookie,然后将用户重定向回abc.com。 用户现在应该具有两种形式的身份验证cookie,每个域一个。 这种方法基本上合理吗?您知道有什么好的参考资料吗?     
已邀请:
尽管容易受到重放攻击,但该方法是有效的。为什么不只使用OpenId?它也可以执行未经请求的断言,这听起来像您想使用的。 OpenId不需要共享数据库。     

要回复问题请先登录注册