2016-03-29 15 views
1

私たちは、IPC認証と認可のベストプラクティスを理解しようとしています。私は説明します。 マイクロサービスベースのアーキテクチャSaaSには、認証専用のサービスがあります。このサービスは、認証と認証トークン(JWT)の管理を担当します。マイクロサービス - IPC認証/認可

すべては、ログインしてさまざまなサービスからのリソースを消費し始めるユーザーと完全に良好に機能します。

質問は、(特定のユーザーのコンテキストなしで)他のサービスによって開始された要求を認証して承認する方法です。

  1. サービスごとに専用のユーザを生成し、適切な権限を持つ他のユーザが のように扱うべきですか?
  2. サービス間に「ハードコードされた」/動的トークンが導入されていますか?
  3. 他のアイデア?

私たちの最大の懸念は、別のサービスからの要求が権限の高いレベルで処理されているので、このようなトークン/パスワードがいくつかの点で妥協することになるです。

乾杯、

答えて

0

私は、ちょうどmicroservicesの世界では、私の足が濡れ始めmicroservicesの専門家ではありません。私が今まで読んだことから、これはいろいろな方法で処理することができました。あなたが言及したように、サービスが互いに認識するようにハードコーディングすることです。しかし、私はは、このアイデアを個人的にはと好きではなかった。私は本当にを気に入っソリューションは、これらのシナリオを処理するためののOAuth2を使用している - 私が見つけた面白い実装はGluuサーバーであると私はクライアントの資格情報がタイプを与えると思うあなたが探しているものである - https://gluu.org/docs/integrate/oauth2grants/参照してください。 。

楽しんでください:)

0

通常、APIゲートウェイは、どのMSシステムにも組み込まれています。 すべてのサービスはカプセル化されており、APIゲートウェイなしではアクセスできないはずです。

このようなカプセル化は、リクエスタペイロードを提供せずに、サービス間の直接通信を可能にします。

この場合、リクエストは異なるものとして扱われ、異なるロジック/ミドルウェアのパイプラインに従います。追加の特別なユーザーは必要ありません。