2017-05-31 103 views
0

驗證Django的用戶我想將用戶從我的Django應用到其他Web應用程序重定向。只允許允許的用戶訪問其他Web應用程序,該權限在Django User模型中設置。我想,其他Web應用程序來驗證訪問用戶是否通過查詢使用API​​端點Django的應用程序的權限。如何從其他應用程序

但其他Web應用程序不再具有request.user參數或其他方式基於Django的用戶模型對用戶進行認證(不wan't他再次登錄)。有沒有像設置跨域會話cookie或任何其他方式,我可以實現它?

+0

是否有任何東西阻止您使用OAuth? – yorodm

+1

怎麼樣:你在你的django應用程序端產生一個隨機數,把nonce傳遞給你的另一個應用程序,然後它向你的django服務器發出一個驗證查詢來驗證隨機數? – ACimander

回答

0

我這樣做最近。

你甚至都不需要第二個應用檢索的用戶,可以動態創建的用戶!

在第一個應用程序,讓他們點擊一個網址,將做一個非常特殊的GET請求到另一個應用程序。

GET請求將編碼幾個變量與HMAC。姓名,電子郵件或您需要使用兩臺服務器共享的特定SECRET_KEY的任何其他值。

在第二個應用程序中,您可以使用相同的SECRET_KEY解碼該請求並登錄您的用戶。

請參閱:https://docs.python.org/3/library/hmac.html

相關問題