2017-01-03 19 views
0

インターネットで使用するために保護する必要がある内部レガシーAPIがあります。 SSL終端を提供するためにリバースプロキシを使用することに決めましたが、問題はOAuthトークンを使用してアクセスを制御する方法です。それは私がここで説明することはできませんさまざまな理由で不可能だアプリケーションを変更するには今インターネット上の従来のAPIの保護

、。 APIをインターネットに公開するには、すばやく汚れたものが必要です(ただし、安全です)。

は、私はいくつかの研究をしていたと私はこのアイデアを持っていた:HAProxyを使用し、ヘッダにOAuthのトーク​​ンをチェックするためにLUAスクリプトを作成し、異なるユーザへのアクセスかどうかを与えます。また、Apacheをリバースプロキシとして使用し、同じようにモジュールを作成することも検討しています。

私の懸念は、パフォーマンスとセキュリティについてです...私は最善のアプローチを取っていますか?あなたはこのユースケースに対してより良いものを知っていますか?

答えて

1

どのようにクライアントアプリケーション(= APIの呼び出し側)とあなたのAPIの間でAPIゲートウェイを配置するでしょうか?たとえば、カスタム認可者Amazon API Gatewayを使用する場合は、OAuthトークンの検証を外部認可者に委任し、OAuthトークンが正常に検証された場合にのみAPIを呼び出すことができます。このアーキテクチャでは、APIの実装を変更することなく、OAuthトークンでAPIを保護できます。アマゾンだけでなく、いくつかの他の企業

だけではなく、API管理/ゲートウェイ・ソリューションを提供しています。たとえば、Microsoft、CA Technologiesなどです。

FYI:

  1. Introducing custom authorizers in Amazon API Gateway(アマゾン計算ブログ)
  2. Use Amazon API Gateway Custom Authorizers(AWSドキュメント)
  3. Amazon API Gateway Custom Authorizer + OAuth(Authlete)
+0

私は、あなたが "APIゲートウェイ" とそれを釘付けと思います。私はそれをオプションとは考えていませんでした。あなたは私に探し続ける新しい道を与えました。ありがとう! – JonDoe297

関連する問題