這裏的快速版本我的問題:
是否可以爲您擁有的網站/服務器設置Cookie?
是否有可能以某種方式設置cookie到客戶端的瀏覽器時,cookie是與不同的服務器(在這種情況下,Exchange郵件服務器)使用?在這種情況下,嘗試設置cookie的服務器位於「intranet.myschool.edu」,交換服務器位於「owa_server.myschool.edu」。
下面是完整的問題:
我有一個使用捲曲,使一個HTTP POST到具有表單啓用基於身份驗證我們的Exchange服務器的PHP腳本。
當我成功的HTTP POST(其中包括髮布的URL中的用戶/密碼)時,Exchange Server(或更具體地說,https://my.school.edu/exchweb/bin/auth/owaauth.dll文件)輸出cookie。 具體來說,它輸出「sessionid」和「cadata」ID。
通過將這些cookie ids寫入服務器上的文本文件,cURL/PHP可以引用它,然後從Exchange/OWA服務器請求數據(通過webdav等)。
該部分工作。 我想解決的問題是現在將Cookie ID傳遞給客戶端瀏覽器,以便他們可以使用這些cookie ID自動登錄到他們自己的OWA帳戶。
實質上,我希望我們的用戶使用他們的Active Directory ID登錄到我們的Intranet,並查看他們最近的電子郵件的快照。然後,如果他們需要,我會給他們一個小鏈接來切換到完整的OWA Web應用程序。發生此切換時,我不希望他們必須手動登錄到OWA。由於他們已經在Intranet的前端提交了Active Directory用戶名和密碼,我希望他們能夠自動登錄到OWA中。
我應該注意,使用Windows身份驗證嘗試單點登錄是不可能的,因爲我們有Mac OS,Windows和Linux的組合。
我曾想過我可以做一個「setcookie」,並分配cURL得到的cookie id並將它們放到客戶端瀏覽器中。
這不可能嗎?是否無法通過這種方式「欺騙」Exchange/OWA(或任何其他網站)? 我有cURL捕獲的合法cookie ID。有沒有辦法將這些傳遞給另一臺計算機上的客戶端瀏覽器?
在最糟糕的情況下,使用Javascript將用戶名和密碼自動粘貼到OWA登錄頁面是我唯一的希望嗎? 有沒有人有任何其他想法如何避免我的Exchange/OWA的雙重登錄問題?
感謝您提供的任何幫助!
與Alnitak上面的答案重疊:( – barrowc 2009-01-29 22:19:19