使用 Google 登入 nginx

使用 Google 登入 nginx

我有一個 nginx 伺服器,提供受保護的資源。我想做的最後一件事是管理密碼重設請求,所以我正在查看使用谷歌登入

他們有 PHP、Java、JavaScript 等的範例,但沒有 Apache 或 nginx 的範例。如何設定 nginx 將基本驗證替換為使用谷歌登入功能?

後面的一些代理系統依賴 %REMOTE_USER% 變量,所以我需要保留該變量。感謝幫助。

更新 澄清一下:我有一組位於 Web 伺服器後面的服務(tomcat、node.js、couchdb、vert.x、一些 python),它們可能會也可能不會授權使用者與它們互動。它們的共同點是可以從網路層接收身分資訊。

所以我在網路層做什麼:指定 - “僅經過身份驗證的用戶”(這是一個授權設置,我“重用”來觸發驗證機制)。

一旦用戶通過身份驗證,該身份資訊就會被傳遞。有關基本驗證和 CouchDB 的範例,請檢查這個部落格條目。我可以在 nginx 中做同樣的事情,但這裡的任務是讓其他人使用與外部提供者建立的身份來保密密碼。

答案1

也許你可以運行oauth2_proxy在您的網頁應用程式前面。

反向代理和靜態檔案伺服器,使用提供者(Google、GitHub 等)提供驗證,以透過電子郵件、網域或群組驗證帳戶。

答案2

雖然你可以理論上在網頁伺服器層級實作 OAuth(範例:http://chairnerd.seatgeek.com/oauth-support-for-nginx-with-lua/),這通常是一個非常糟糕的主意。有伺服器端語言的範例,因為那是您應該實現它的地方 - 在您的程式碼中,而不是您的伺服器中。

相關內容