簡體   English   中英

在防火牆后面的Wildfly / Keycloak安全Web應用程序調用時使用oauth2保護Google App Engine應用程序的安全

[英]Securing a google app engine application with oauth2 on call from a Wildfly/Keycloak secured web application behind a firewall

要求

  • 我的要求是編寫一個在防火牆后運行的安全Web應用程序,並通過OAuth2協議訪問Google App Engine應用程序。 不應以任何其他方式(開發人員/管理員保存)訪問Google App引擎。 編程語言是Java。 授權是服務器對服務器。

部署方式

  • 我將在帶有Keycloak的WildFly(JBoss)上運行一個“關 ”應用程序,並將使用活動目錄登錄此在防火牆后運行的Web應用程序上的用戶。 這樣,在我所服務的企業中擁有帳戶的每個人都應有權訪問google app引擎應用程序。 同樣,此處理作為部署到WildFly的Java EE Web應用程序在企業的防火牆后面運行。
  • 成功登錄后的下一步是使用戶重定向到google app引擎正在服務的網頁。 我不希望其他任何用戶(我的開發者帳戶/所有者帳戶除外)都可以訪問此網址。

  • 我已經創建了JSON用戶憑證文件,並從google開發者控制台為我的google app引擎項目下載了文件。 我還在我的Gatekeeper項目的maven pom文件中包含了google-api-client。 來自https:// developers的 <dependency> <groupId>com.google.api-client</groupId> <artifactId>google-api-client</artifactId> <version>1.20.0</version> </dependency> 。 google.com/api-client-library/java/google-api-java-client/setup

問題

  • 如何使用Google api客戶端編碼(Java)OAuth 2.0的奇妙世界? 我想我將在“網守Web應用程序”(Java)上添加代碼,並在我的appengine-web.xml中添加一些配置xml 我的App Engine應用程序是否需要其他代碼? 是否有人有分步說明或示例代碼/配置? 我已閱讀https://developers.google.com/identity/protocols/OAuth2ServiceAccount ,但對如何申請一無所知。

在此先感謝您的幫助。 我想這對於SaaS提供商來說是非常普遍的情況?

如前所述,您至少要問兩個問題。 首先,如何通過防火牆后面的OpenID Connect 1.0身份驗證服務器(在本例中為Keycloak)對應用程序進行身份驗證。 其次,如何使用google-api-client

我建議您看一下OAuth聖經,以了解OAuth 2.0如何實現“兩足”和“三足”流程。 三足式身份驗證更安全,但是防火牆會帶來問題。

另外,如果您將google-api-client部分分解為更具體定義的問題,則更有可能獲得幫助。

暫無
暫無

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

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