1

私は現在、春のクラウド マイクロサービスでセキュリティ ソリューションを構築しています。

Spring OAuth2 と Zuul 実装を組み合わせると、次のような認証プロセスを簡単に構築できます。

  • ユーザーが UI を呼び出します。UI は最初に、ユーザーが認証されていないことを認識しています。
  • 認証サーバーにリダイレクトして、ユーザーにログイン資格情報を要求します
  • コードまたはトークンを提供して、彼をUIにリダイレクトします。

認証サーバーがzuulの背後にある方法で、パスワード認証フローを使用したフローを好む

例えば:

  • 1.2.3.4:8080 は Zuul (angularJS を使用した UI を使用)、ドメイン「example.com」です。
  • 1.2.3.5:9000 は認証サーバーです

1.2.3.5:9000 に直接アクセスするように zuul を構成し、フォーム フィールドと基本認証を渡してクライアント ID を渡すことができました。

認証サーバーはそれ自体を eureka に登録するため、「example.com/auth_server」も使用できます。これは同じですが、zuul を介して管理されます。または、手動で構成することもできます....それでも:

Zuul が呼び出しから基本認証ヘッダーを削除しているため、パスワード認証は機能しません。

この時点で、私は何か間違ったことをしていることがわかります...エッジサーバーには独自のセキュリティソリューションがあり、基本認証を認証にトンネリングすることは最善の方法ではない可能性があるためです....しかし

zuul を介して ouath2 でパスワード認証を管理するにはどうすればよいですか?

助けてください :)

4

2 に答える 2

0

デフォルトでは、「Cookie」、「Set-Cookie」、「Authorization」はルート上の機密ヘッダーとしてマークされ、転送されません。設定zuul.routes.myroute.sensitiveHeaders=''により、これらのヘッダーを通過できるようにする必要がありますが、それが最善のアイデアであるかどうかはわかりません。

于 2016-03-14T17:39:00.710 に答える