使用DataBase和GUID进行跨域身份验证

时间:2009-11-12 19:27:14

标签: asp.net cross-domain

我有2个站点位于不同的服务器和域上,但我想从一个站点转移到另一个站点而不必重新进行身份验证。

两个站点使用相同的数据库,所以我的想法是有一个Auth表,我在其中放置GUID,用户ID和时间戳。我会在URL中传递GUID并执行查找,以查看GUID是否在表中,并且如果对用户进行了如此认证,那么它将小于X old。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

是的,只要安全性在您的解决方案中并不重要。 如果安全性至关重要(涉及金钱),则应增加一些其他措施。 喜欢 - 加密guid或通过安全连接传递它 - 因此它不能被盗 让guid只使用一次(以避免重放攻击,并在你实现自己的安全性时不断寻找这个系统中的漏洞。

加密并不容易,因为你需要一个密钥,如果你选择了坏密钥,或者存储它们不好,加密就没用了。

了解更多有关架构的信息,客户可能会帮助加强安全性。

请记住,将其作为URL的一部分传递会在guid上留下遍布整个网络的踪迹。也许有更好的方式来传递它,可能是数据。

答案 1 :(得分:1)

执行此操作的安全方法是将OpenID与定向标识一起使用。 这样,第一个站点可以断言正在访问第二个站点的用户的身份。