我想允许在父站点上发生的登录自动允许iframed站点登录。
这是具体情况:
我有一个简单的登录页面网站。登录后,用户将获得带有一系列URLS的菜单(所有URL具有相同的基本域,但具有不同的端口)。
main.example.com (main site)
main.example.com:14002 (iframe #1)
main.example.com:14003 (iframe #2)
...
用户选择菜单项之一,然后将网址加载到iframe中。
菜单从数据库表中移出。
所有URL都将从IIS加载,但是它们都在不同的端口上运行,因此我们可以很好地控制重新启动它们并在一天中部署新的URL。
我正在努力寻找一种方法来允许主站点登录,以允许iframe网站安全登录。
换句话说,iframed站点如何安全地知道登录主站点的用户的用户ID?
这些不是被随机化的任意站点。我们控制了所有源代码。
答案 0 :(得分:0)
这就是我们最终要做的:
使用此技术,主站点将带有令牌的cookie放置在其中,以便模块站点可以看到它:
document.cookie = "key=token;domain=mydomain.com"
然后module.mydomain.com网站使用令牌对master.mydomain.com网站进行Web服务调用,以检索登录的用户ID。
如果没有cookie或令牌已过期,则会在iframe窗口中向用户显示一个登录屏幕。