2012-08-17 52 views
1

我有以下情況。使用鏈接自動登錄到網站,只能從Intranet訪問此鏈接

我們有一個用PHP編寫的網站,用戶需要登錄才能訪問網站。

現在不同的客戶端有登錄詳細信息,但我們還需要提供一個自動登錄功能,在該客戶端Intranet的頁面上給出鏈接並將其存儲在該頁面中,在此Intranet中工作的所有員工都應能夠自動登錄到網站使用此鏈接。

但問題是,如果在Intranet外部訪問此鏈接,客戶端應該無法自動登錄,但應該使用用戶名和密碼。有沒有辦法檢查鏈接是否在客戶端的Intranet內訪問。

我想過驗證外部IP地址,但如果ISP使用DHCP分配IP地址,則可能會更改。

不幸的是,該網站無法在內部網中託管。

+0

*所有*員工將如何使用單個鏈接自動登錄? – 2012-08-17 12:48:06

+0

@arxanas - 雖然給鏈接一個特殊的字符串,這將驗證登錄 – Roland 2012-08-17 12:56:31

+1

我的意思是說,他們都會有相同的帳戶?一條鏈路將如何區分員工? – 2012-08-17 12:57:20

回答

6

嗯,這是hacky,但你可以做的是,你有一個cookie檢查你的PHP代碼中的某個cookie。

大家在你的辦公室訪問,增加了餅乾給他們的瀏覽器頁面,然後限制到該頁面訪問。

然後允許擁有該Cookie許可的人繞過您的PHP代碼中的登錄。

+0

這個dos沒有解決問題,因爲誰能夠*竊取* autologin鏈接也可以竊取cookie。我想知道,誰贊成這個愚蠢的主意。 – 2012-08-17 13:04:55

+0

@tereškommmmm *** coooookieees *** – Neal 2012-08-17 13:09:26

+0

@巧克力曲奇餅乾 – Lusitanian 2012-08-17 13:12:39