微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

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

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

解决方法

尽管容易受到重放攻击,但该方法是有效的。为什么不只使用OpenId?它也可以执行未经请求的断言,这听起来像您想使用的。 OpenId不需要共享数据库。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。