我正在开发仅在公司内部使用的内部网站。其中一个页面的要求是登录到我们的供应商网站(它们都在不同的域上)。
为此,我在内部网站的 iframe 中打开这些供应商网站。
说,
- 内部网站:us.com
- 供应商网站:foo.com、bar.com
在 us.com/openvendor 上,有两个选项:foo 和 bar。当用户点击 foo 时,页面内的 iframe 会以登录状态打开 foo.com。
为此,我复制了 foo.com 的登录表单,并将所有必需的参数(如用户名、密码等)发布到 foo.com 的页面。我将不同供应商的所有用户名和密码存储在数据库中。
我为什么要这样做?因为我们不希望该站点的用户(主要是我们的 CRM 团队)知道密码(以免他们使用它来进行不需要和未跟踪的交易),并且通过 us.com 完成的活动被记录和保存。
因此,从本质上讲,我们使用户能够登录到任何供应商网站,只需单击一个链接。
这一直很好,直到有一天我不得不添加一个新的供应商站点,该站点不发布用于身份验证的 html 表单。这个站点(比如 whattodo.com)使用登录凭据对 url 进行 ajax 调用,它返回一个身份验证 cookie。然后网站设置此 cookie 以使用户登录。
现在如何让我的最终用户通过点击登录到 whattodo.com?
- 我无法对 whattodo.com 进行 ajax 调用
- 即使我通过将 auth cookie 值存储在我的数据库中并每月更新它来克服上述问题(是的,那是 cookie 过期的时候),我也无法在用户浏览器的 whattodo.com 域下设置这个 cookie。
请提出一个可能的解决方案。
请随时编辑标题。我敢肯定有一个更好的总结这个问题。