簡體   English   中英

設計OAuth2身份驗證流程

[英]Designing the flow of OAuth2 authentication

我正在嘗試為父/子關系提出適當的OAuth2身份驗證流程。
App-A和App-B是兩個獨立的應用程序。 App-A打開App-B的iframe中時從一個鏈接的點擊App-A

我負責維護App-B
如何設計流程,以便App-B識別來自App-A用戶並在兩個應用程序之間保持相同的會話?

到目前為止,這是我想出的流程:

  1. App-A將提供客戶端ID和秘密密鑰對App-B的相互作用之前。

  2. 用戶使用parentIdApp-B GET /person端點發出請求。

  3. 然后, App-B會將請求發送給App-A服務器,該請求的客戶端ID,私鑰和redirect-url設置為GET /person

現在, App-A將發送給App-B以傳遞經過身份驗證的用戶的會話信息。

如果流程沒有意義,您可以擺脫它

您的問題類似於在多個應用程序中維護會話。

您的方法的問題是您需要從前端或以某種方式向AppA(維護當前用戶會話)發出該請求,以公開客戶端ID /秘密

這是您可以實現的一些想法,

兩個應用程序都在同一父域下嗎? 如果是這樣的話,

類似於appA.domain.comappB.domain.com然后,在成功通過身份驗證之后,您可以在父域* .. domain.com中設置一些會話標識符cookie,然后從appB中獲取獲取當前用戶會話,從中可以獲取也是accessToken。

如果兩個應用程序都在不同的域中 ,則

您需要具有一些將共同維護會話的公共身份驗證服務器,因此,當appA加載且沒有可用會話時,它可以重定向到公共身份驗證服務器,該服務器依次檢查會話(如果不讓用戶登錄),然后將數據發送回去到appA

appB的流程相同。

另請檢查此鏈接http://merbist.com/2012/04/04/building-and-implementing-a-single-sign-on-solution/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM