當前位置:首頁 » 編程語言 » php實現單點登錄

php實現單點登錄

發布時間: 2022-06-21 06:10:30

『壹』 php 單點登錄的一些問題

你指的是同步登錄吧,就是在一個地方登錄帳號,其他網站也會同步登錄上帳號。
一般的做法是在登錄的時候發送打開其他網站預留的同步登錄網頁,這樣就可以實現同步登錄了,可以參考一下ucenter,這個是用的比較多的。

『貳』 php 單點登錄

思路很簡單,只要5個子系統的用戶表信息是一樣的,那找到5個子系統的登陸寫入cookie或session代碼,將其統一一下就可以了!然後再找到判斷登陸狀態的代碼,也將其統一一下就OK!

『叄』 PHP怎麼實現單點登錄

1、直接網上找一個單點登錄系統,把這2個系統整合到一起,
2、自己寫一個單點登錄系統,藉助中間表,比如你以java系統為主,在java系統裡面嵌入了php系統,當點擊php系統的欄目時就先去中間表check一下,然後直接跳到你的php系統上面就好,
3、如果沒有許可權啥的,你就直接放一個連接傳用戶名和密碼直接登錄訪問也行。

『肆』 有人做過PHP單點登錄嗎

單點登錄最簡單的實現方式就是使用cookie作為媒介,存放用戶憑證。用戶登錄父應用之後,應用返回一個加密的cookie,當用戶訪問子應用的時候,攜帶上這個cookie,授權應用解密cookie並進行校驗,校驗通過則登錄當前用戶。

『伍』 PHP 單點登錄代碼

假設有三個不同域名,a.com, b.com, c.com,將其中之一作為真正的登陸入口,所有的域名下發起的登陸,全部重定向到這個節點,這里假設選擇a.com/login.php為統一登入節點,為了方便說明,把a.com叫做主節點,其餘叫做從節點。

假設現在從任意站點發出登陸請求,最終都被帶到 a.com/login.php?from=b.com&sfkey=xxxxxx,用戶輸入登陸信息,假設登陸成功,返回一個登陸成功中間頁面,在這個頁面里,包含下面html代碼

<iframe width="0" height="0" src="b.com/sso.php?sessid=xxxxxxxxxxxx&sfkey=xxxxxxxxxxx"></iframe>
<iframe width="0" height="0" src="c.com/sso.php?sessid=xxxxxxxxxxxx&sfkey=xxxxxxxxxxx"></iframe>

sessid是登陸成功以後的session ID,sfkey是一個安全碼,這兩個串在login.php里綁定到當前登陸的用戶記錄上。

這個時候a.com實際已經登陸完畢,獲得了PHPSESSID的cookie。兩個iframe的作用是把獲得的session id立刻同步到從節點上,從節點的sso.php獲得sessid和sfkey後,首先校驗這個配對是否存在,如果存在,立刻把sessid值設為當前session id

session_id($_GET['sessid']); // 使用a.com產生的session id
session_start();

sso.php請求完畢後,b.com和c.com這兩個站點就獲得了和a.com一樣的PHPSESSID cookie;

這個頁面會把用戶重定向回所來自的頁面(到達login.php的時候記住了),重定向完成後,用戶已經在所有網站完成了同步登陸。
a.com發送iframe請求的時候使用加密的sessid=xxxxxx里的sessid,從節點的sso.php獲取密文後解密才獲得真實的session id
可以用單獨域名來作為登陸主節點,比如login.x.com,而不用a b c中的任意一個,login.x.com做且僅作登陸服務。

『陸』 php 怎麼實現單點登錄

您好,即插即用方式實現單點登錄:
對於 B/S結構應用系統,用戶只需通過瀏覽器界面登錄一次,即可通過UTrust SSO單點登錄系統訪問後台的多個用戶許可權內的Web應用系統,無需逐一輸入用戶名、密碼登錄。對於 C/S結構應用系統,通過IE控制項來實現對C/S系統客戶端的單點登錄,用戶輸入一次用戶名、密碼,即可訪問所有被授權的C/S系統資源。無論對於B/S和C/S結構的應用系統,實現單點登錄的功能時,後台應用系統無需任何修改。•後置代理方式實現單點登錄 對於有改造條件的B/S結構應用系統,UTrustSSO也提供了後置代理的方式實現單點登錄。SSO 系統提供各種API,Agent代理,對原有應用系統進行改造,改變原有應用系統的認證方式,同時採用認證伺服器提供的技術進行一次性身份認證,實現單點登錄。

『柒』 PHP和Mysql資料庫如何實現單點登錄

一般兩種方案:
1
共享SESSION(db,nosql等)
2
通過介面對每個域名下寫cookie(常見ucenter)。
至於那些在頁面上做處理,不現實的。一則涉及面廣,二則維護不方便,也不符合業務封裝(模塊化)的架構思維。
答題不易,互相理解,您的採納是我前進的動力,感謝您。

『捌』 php實現單點登錄

可以使用cookie
但是作為一個系統來說 你這樣做一點不安全

『玖』 php中用cookie如何實現單點登錄,求大師解釋,詳細一點

判斷登錄成功後,創建cookie
代碼:setcookie("cookie名稱",1,time()+1200); 1200為過期時間,單位秒
然後根據cookie判斷,
代碼:if($_COOKIE["cookie名稱"]!="") 成功 else 失敗

『拾』 詳解PHP如何實現單點登錄

可以配合session和資料庫(或緩存如redis或memcache)實現,具體步驟如下:

  1. 在登錄成功後保存一個時間戳+隨機字元的值,這個值暫時叫sign。把這個值存入資料庫(緩存),同時也存入session中。

  2. 寫一個函數,功能如下:讀取資料庫(緩存)中的sign,跟session中的sign對比。如不一致,則注銷當前session並提示:當前用戶已在其他地方登錄,你被頂下線。這個函數放到「鉤子」裡面,實現在每一個操作步驟之前都先調用此函數。

這樣,一個簡單的單點登錄功能就實現了。原理其實很簡單,就是每次登錄都把資料庫(緩存)裡面的sign都覆蓋一遍,這樣當之前登錄的人檢測到這個sign不一致以後就強制下線。

熱點內容
x2哪個配置性價比高 發布:2025-02-06 00:40:12 瀏覽:109
豬哥亮訪問張菲 發布:2025-02-06 00:37:52 瀏覽:570
期貨賬戶怎麼改密碼 發布:2025-02-06 00:32:35 瀏覽:279
qq自動上傳群文件 發布:2025-02-06 00:26:25 瀏覽:110
安卓照片放在什麼地方 發布:2025-02-06 00:26:24 瀏覽:988
linux系統鏡像iso 發布:2025-02-06 00:15:39 瀏覽:188
存儲上料模塊的意義 發布:2025-02-06 00:14:14 瀏覽:125
unix時間戳轉換php 發布:2025-02-06 00:13:27 瀏覽:404
我的世界網易電腦板好玩的槍械rpg伺服器 發布:2025-02-06 00:08:04 瀏覽:346
非揮發性記憶體永久性存儲器 發布:2025-02-06 00:07:17 瀏覽:267