有人可以幫我理解OpenID是如何工作的嗎?我對以下答案感興趣:OpenID是如何工作的?
- 如果使用OpenId,還需要存儲用戶ID和密碼嗎?
- 我的應用程序在用戶登錄時如何創建新會話?
- 當用戶註銷應用程序時,除清除會話數據外,還需要做其他任何事情嗎?我需要通知openId服務器嗎?
有人可以幫我理解OpenID是如何工作的嗎?我對以下答案感興趣:OpenID是如何工作的?
我最近做了一個openid認證系統,這是它的工作原理。
登錄:
身份驗證請求:
存在這樣的OpenID網址映射到用戶的表。
爲每個請求:
你還必須存儲的用戶ID和密碼 如果使用OpenID登錄?
用戶ID是,口令沒有(除非您提供其他方式除了OpenID的登錄)
如何我的應用程序發現和 當有人在登錄 創建一個新的會話?
會話正常處理,會話用於通過身份驗證的用戶和未經身份驗證的用戶。
當我使用日誌我自己出 的應用程序,我需要從我的應用程序做任何事情 不僅僅是清除他們的會話 更多? (我是否需要 告知openId服務器?)
沒有。
我的理解是這樣的:
的OpenID,用戶可以登錄以分散的方式。這意味着用戶的登錄憑據由一個站點處理,供應商
您的系統將與提供商交互以確定用戶是否是他們自稱的用戶。如果他們通過檢查,您的系統將他們登錄。
您仍然需要存儲一些用戶信息,因爲他們如何使用您的系統的詳細信息必須存儲在您的系統中。
因此,如果Google是開放式ID提供商,那麼SO可以驗證我是否登錄了Google,是誰,我說我是誰。然後SO說,很好,這個用戶在我們的系統中是hvgotcodes,並且給了我對於我在SO中的人有意義的特權。
在回答關於註銷的具體問題時,是的,在開放id提供程序驗證用戶憑證後,您仍然會將用戶登錄到系統中,因此您可以從自己的系統處理其註銷狀態。