将用户登录到不同的URL

本文关键字:URL 用户 登录 | 更新日期: 2023-09-27 17:54:36

所以我有一个管理面板的网站在不同的url比主要网站。我们目前对主站点上所有用户的密码进行了散列处理。客户想要的是一种从管理站点自动登录到主站点的方法。我有问题完成这一点,因为跨url会话设置是一个真正的痛苦。到目前为止,我已经尝试了一个web服务,并使用HttpWebRequest来访问一个会自动登录用户的网页。由于会话问题,这些都不起作用。

所以我想我的问题是,实现这一点的最好方法是什么?它也必须非常安全。我目前正在使用一个过期的哈希来安全登录。

更新

我在考虑Open ID。虽然我不能使用它,因为我们已经定义了一个身份验证系统,但想法是一样的,我想在不修改身份验证逻辑的情况下开发类似的东西。

将用户登录到不同的URL

我正在做的是使用数据库来共享会话/用户id:

  • 在web应用程序A,我有一个链接到web应用程序b
  • 链接有一个唯一的web应用a的登录ID(例如会话ID)作为参数。

"工作流程"大致如下:

  1. 当用户点击链接时(或仅在Page_Load中),会话ID被存储到DB。
  2. 正在打开Web应用B,正在传递Web应用A的会话ID
  3. Web应用B在数据库中查找Web应用a的会话ID。
  4. 当被发现时,会进行一些安全检查(例如记录年龄)。
  5. 如果一切正常,用户登录web应用b。

表的结构是这样的:

+--------------------------------------------------------+
| ID | SessionID | UserID | DateWhenThisRecordWasCreated |
+--------------------------------------------------------+

有了这个配置,你可以在不同的相关应用程序之间传递登录,它们只需要访问相同的数据库。(如果不能共享数据库,可以考虑web应用A提供SOAP web服务,而web应用B可以查询)

我无法想象任何安全整体在这;另一方面,如果有人能想到一个,我将很高兴听到你的反馈。