当前位置:  开发笔记 > 编程语言 > 正文

是否可以为您拥有的站点/服务器设置cookie?

如何解决《是否可以为您拥有的站点/服务器设置cookie?》经验,为你挑选了1个好方法。

这是我的问题的快速版本:

当cookie用于其他服务器(在这种情况下是Exchange邮件服务器)时,是否可以以某种方式将cookie设置到客户端的浏览器中?在这种情况下,尝试设置cookie的服务器位于"intranet.myschool.edu",交换服务器位于"owa_server.myschool.edu".


这是完整的问题:

我有一个PHP脚本,它使用cURL对启用了基于表单的身份验证的Exchange服务器进行HTTP POST.

当我成功进行HTTP POST(包括发布网址中的用户/传递),Exchange Server(或更具体地说,https://my.school.edu/exchweb/bin/auth/owaauth.dll文件)输出cookies.具体来说,它输出"sessionid"和"cadata"id.

将这些cookie ID写入服务器上的文本文件后,cURL/PHP可以引用它,然后从Exchange/OWA服务器请求数据(通过webdav等).

那部分有效.我想解决的问题是现在将cookie ID传递给客户端浏览器,以便他们可以使用这些cookie ID自动登录到自己的OWA帐户.

本质上,我希望我们的用户使用他们的Active Directory ID登录我们的Intranet,并查看他们最近的电子邮件的快照.然后,如果他们需要,我会给他们一个小的链接切换到完整的OWA Web应用程序.当这种切换发生时,我不希望他们必须手动登录OWA.由于他们已经在Intranet的前面提交了他们的Active Directory用户名和密码,我希望他们能够自动登录到OWA.

我应该注意,由于我们混合使用Mac OS,Windows和Linux,因此无法使用Windows身份验证尝试进行单点登录.

我以为我能够做一个"setcookie"并分配cURL获得的cookie ID并将它们放入客户端浏览器中.

这不可能吗?是不可能以这种方式"欺骗"Exchange/OWA(或任何其他网站).我有cURL捕获的合法cookie ID.有没有办法将这些传递给另一台计算机上的客户端浏览器?

在最糟糕的情况下,使用Javascript只是自动将用户名和密码粘贴到OWA登录页面是我唯一的希望吗?有没有人对如何避免我的Exchange/OWA双重登录问题有任何其他想法?

感谢您提供的任何帮助!



1> barrowc..:

来自RFC 2965(NB HDN ="主机域名")

主机A的名称域匹配主机B的if

  *  their host name strings string-compare equal; or

  * A is a HDN string and has the form NB, where N is a non-empty
     name string, B has the form .B', and B' is a HDN string.  (So,
     x.y.com domain-matches .Y.com but not Y.com.)

请注意,域匹配不是可交换的操作:abccom
domain-matches .c.com,但不是相反的.

所以使用.myschool.edu域应该工作.NB领先.是必不可少的

推荐阅读
地之南_816
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有