2011-12-01 292 views
0

我正在嘗試通過Facebook應用程序提交用戶插入的證書,該證書必須由外部系統驗證。我正在嘗試通過此網站提交他們https://studenti.unisalento.it/。我閱讀了很多關於PHP擴展libcurl發佈的數據的文章,管理cookie,ecc(像這樣:http://www.herikstad.net/2011/06/logging-to-https-websites-using-php.html )但我不能將憑證發佈到像這樣的登錄提示系統https://studenti.unisalento.it/auth/Logon.do 任何想法???謝謝!Php Curl提交登錄

編輯: 我注意到你可以用這個方案在url中登錄輸入憑證:https://username:[email protected]/auth/Logon.do?p_p_id=58&p_p_lifecycle=1&p_p_state=normal&p_p_mode=view&p_p_col_id=column-1&p_p_col_count=1&saveLastPath=0&_58_struts_action=你可以利用這個使用libcurl函數嗎?

回答

2

正確的答案,即使它不是你正在尋找的答案是:不要這樣做。

你想讓學生輸入他們的大學登錄名和密碼到你的Facebook應用程序?

你有沒有跟大學討論過這個問題?

他們怎麼知道你的應用程序沒有在某處存儲提交的登錄名和密碼,以便以後可以進入學生帳戶?

可能的答案是:他們沒有。

這就是爲什麼像OAuth和Shibboleth這樣的東西被髮明。它們允許您從第三方認證用戶而不收集用戶的實際憑證。

unisalento.it似乎有一個Shibboleth安裝。如果您運行的是合法認可的應用程序,請考慮使用不涉及收集用戶名和密碼的其他身份驗證方案。

由於您使用PHP,simpleSAMLphp可能會有用。

+0

謝謝!是的,Facebook與我大學信息系統的整合是我畢業論文的目的。我認爲Shibboleth正是我正在尋找的... – davideb

+1

我添加了一個關於simpleSAMLphp的註釋,這對您可能會有幫助。 – Trott

+0

對不起,您是否已經使用simpleSAMLphp?我閱讀了幾頁文檔,我已經聽到了有關UserAgent,ServiceProvider和IdentityProvider之間交互的足夠信息,但我無法找到有關如何通過外部ServiceProvider驗證憑據的綜合文檔。首先感謝 – davideb