我正在编写一个需要与 ASP.NET 登录集成的 PHP 脚本(它恰好是在 Sitecore 上构建的,不确定这是否重要)。我需要复制生成/登录/加密会话和数据 cookie 的能力,还需要通过检测/解密会话和数据 cookie 来检测用户是否登录。PHP 和 ASP 脚本可以共享同一个 MS SQL 数据库并且位于同一个文件系统上,所以这不是问题。我的大部分问题都只是在 PHP 中设置/读取 ASP cookie。
我有 2 个由 ASP.NET 设置的 cookie,
ASP.NET_SessionId 和 .ASPXAUTH
我相信 ASP.NET_SessionId 显然是用于会话的,而 .ASPXAUTH 是用于数据的。
我的问题是:
- 我相信,为了知道是否有人通过 ASP 会话登录(或登录),在 PHP 中,我需要将会话数据与存储在文件系统上的会话进行比较,是否有人知道在哪里(或是什么决定了它们的位置?
- 有人知道用于加密/解密 ASPXAUTH cookie 的算法吗? 我知道标准的“加密”和“解密”方法,但我想知道使它们精确运行的代码。 IE 是否首先是某种数据数组,然后对其进行加盐和哈希处理?输出的字节是否需要移位/转换?如果是这样,以什么顺序/方式?
我感谢任何帮助,我将在接下来的几天内为最有帮助回答这些问题的人奖励答案。
目前我已经能够通过 PHP 中的 setcookie() 重现 cookie 生成。也就是说,我可以通过 ASP.NET 应用程序登录,获取 cookie 数据,将其插入 PHP 应用程序并通过 ASP.NET 应用程序注销。对于那些要捉弄我的人,我很清楚这是可能的,我不需要解释我为什么要这样做,但这需要很多时间、金钱和原因,所以是的,我确实需要同时使用PHP 和 ASP.NET。
谢谢!
更新
我相信我能够使用这个答案部分解密 cookie:https : //stackoverflow.com/a/988018/775586 有人知道如何完成它吗?