首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP与ASP经典(VBScript)之间的共享登录

问PHP与ASP经典(VBScript)之间的共享登录
EN

Stack Overflow用户
提问于 2016-09-09 15:50:54
回答 2查看 411关注 0票数 0

我试图更新/维护一个较旧的网站,该网站最初是用经典ASP/VBScript编写的,后来添加了PHP页面。我想设置它,以便PHP处理登录,但是登录状态可以在PHP和ASP/VBScript之间共享。请注意,页面和语言是相当混杂的--在网站上花费时间的人可能会在每种语言中遇到几个不同的页面,没有特定的顺序。

(最终,我希望它能用PHP完全重写,但我必须一次吃一口大象;现在我只想提高安全性。)

让我们假设我已经成功地登录并使用类似于phpPass的方法验证了PHP中的用户。我如何告诉ASP/VBScript页面他们刚刚拉出他们已经登录了?我怎么才能安全地做这件事呢?

(谢谢你的帮助!)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-02-28 22:52:32

我在这个问题上找到的最好的答案是以下几点。特定于在经典ASP和ASP.net之间共享登录,但是方法完全相同:

正如您可能已经知道的,经典的asp和asp.net不能共享相同的会话状态,因此您确实需要有一种机制来从一个登录到另一个。 我要做的是:当有人登录时,创建一个您为该用户保存在数据库中的唯一GUID。当您从一个站点跳到另一个站点时,将GUID传递到查询字符串中。当您尝试自动登录到另一个站点时,请查找该GUID,并查看它是否与任何人连接。如果是的话,就登录。 这样,您就不会传递用户可以猜测或解密的任何内容。

此外,向数据库添加时间戳也是明智的;GUID应该只有效一两秒钟。登录PHP端,然后切换到ASP并检查GUID。

不完全安全,但似乎和我要找到的一样安全。

来源:https://stackoverflow.com/a/921575/339440

编辑以添加:每个注释,也记录用户的IP地址到数据库,并比较它在ASP方面。不准传送!

更正:在这种情况下,"GUID“是用词不当的。这里你需要的是一个随机的字符串,而不是一个GUID。GUID是具有少数几种特定格式之一的半随机结构,在这里不适用。

票数 0
EN

Stack Overflow用户

发布于 2016-09-17 11:28:35

您不能通过经典ASP/VBScript和PHP共享会话,因为它们以不同的方式创建/使用会话。我的解决方案不是那么安全,但会奏效的:

  1. 通过1种语言(例如PHP)将用户登录
  2. 将初始会话变量传递给URL并获取ASP以查看查询字符串,然后在那里为ASP创建另一个会话。

这将处理it...although,而不是那么安全!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39415393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档