問題タブ [kong]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
273 参照

amazon-web-services - kong と AWS マーケットプレイス

これらの両方のテクノロジーは初めてです。以下の手順を実行しようとしています

1) AWS マーケットプレイスで Kong をインストールする

2) 私はイギリスにいます。他に選択できる地域がないため、地域をアイルランドとして選択しました。次に、手動起動をクリックしました

無料利用枠 t2.micro を選択して ec2 管理コンソールを開きました

Windows IP を指定し、セキュリティ グループを作成して指示しましたが、エラーが発生します。この AWS Marketplace 製品のインスタンス構成はサポートされていません。サポートされているインスタンス タイプ、リージョン、およびオペレーティング システムの詳細については、 http://aws.amazon.com/marketplace/pp?sku=8enaazwzxnn2uypvc4p8u39daを参照してください。

0 投票する
0 に答える
890 参照

authentication - Kong Request Transformer、動的な値、Redis から取得

ここで説明した内容に基づいて、私のマイクロ サービスに Oauth 2.0 と JWT に基づいてこのセキュリティ メカニズムを実装する必要があります: http://nordicapis.com/how-to-control-user-identity-within-microservices/

Kong (getting.org) を使用しています。

ある時点で、上記の記事のアプローチに従って、私のゲートウェイ (この場合は kong) は、リクエストを最終的なマイクロサービスに渡す前に、アクセス トークンを JWT に変換する必要があります (JWT は最終リクエスト)。

この変換は、できれば Redis への単純なルックアップになります。

Kong には「リクエスト トランスフォーマー」という名前のプラグインがあり、ヘッダーを変更できます。: https://getkong.org/plugins/request-transformer/

ただし、(現在) 動的な値 (redis で検索された値など) は許可されていません。

Kong 用のそのようなプラグインを知っている人はいますか?

クイックグーグルは、私をこの議論に導きました: https://gitter.im/Mashape/kong/archives/2015/08/06

誰かが似たようなもので、すでに機能しているものについての指針を教えてくれるかどうか疑問に思っています。

ありがとう、ラカ

0 投票する
1 に答える
801 参照

oauth-2.0 - provision_key が kong oauth2 に入っていない

kong apimanager をoauth2で使用しようとしました。ドキュメントに従って、API登録を行い、そのサービスにoauth2kongプラグインを追加しましたが、応答がありません。これについて助けてくださいprovision_key

0 投票する
2 に答える
9217 参照

load-balancing - KONG API ゲートウェイでの負荷分散

ユーザー リクエストの負荷を分散するために、Kong API ゲートウェイの背後にマイクロ サービスの複数のインスタンスがあります。

たとえば、マイクロ サービス 1 は、KONG API ゲートウェイの背後に保持されている複数のインスタンスで乗算されます。このような場合、ユーザー 1 からのリクエストは最初のインスタンスにヒットし、ユーザー 2 からのリクエストは可用性に基づいて同じサービスの他のインスタンスにヒットする必要があります (負荷分散)。(つまり) kong で単一の API に対して複数のアップストリーム URL を使用できるかどうか。負荷分散にnginxを使用したくありません。どうすれば解決できるかアドバイスをお願いします。

0 投票する
1 に答える
1461 参照

cassandra - Cassandra 2.2.7 を使用した Kong のセットアップ

Kongを使い始めたばかりですが、この問題に直面しています。

Mac で Kong をセットアップしようとしていて、こちらの手順に従っています。

コング for Mac

すでに Cassandra 2.2.7 をインストールしてローカルで実行しています。「cqlsh」を介して接続し、キースペースなどを作成できます。

しかし、次のコマンドを実行しても kong が起動しません。

--vv オプションを試してみたところ、次の出力が得られました。

問題の正確な内容を示すログがローカルに表示されません。私はウェブ上でかなり見ましたが、解決策が見つかりませんでした。

私が欠けているものについて何か考えはありますか?

0 投票する
1 に答える
206 参照

lua - Kong: ビジネス ロジックやビジネス データを kong データストアに保存するのは良い考えですか?

Kong で使用されるデータストアは、構成を永続的に保存して水平方向のスケーリングを可能にするために使用されることを理解しています。

私が疑問に思っているのは、API ゲートウェイのデータソース自体に実際のビジネス データを格納し、このデータソースから読み取ったデータに基づいて API をルーティングすることも可能かということです。

例えば。ユーザーが過去に 3 人の異なる著者から購入したことがある場合、それらの著者のみによるすべての書籍のリストを表示したいと考えています。ここでは、注文履歴がビジネス データであり、その著者の本だけを彼に見せることがビジネス ロジックです。

リクエストが API ゲートウェイを通過した後、通常どおりユーザーの注文履歴を取得し、必要なデータを表示できました。

しかし、ユーザーの注文履歴を kong データソースに保存し、lua でカスタム プラグインを記述して、ゲートウェイ自体からユーザーの作成者リストを取得し、作成者の ID を必要なモジュールに渡すことは可能ですか?それらの著者の本を表示するだけですか?

また、可能であれば、そうすることをお勧めしますか?

0 投票する
1 に答える
945 参照

kong - パブリック リソースとプライベート リソースを持つ単一サービスの Kong

サービスの認証プラグインを有効にすると、そのすべてのリソースで認証が必要になります。一部のリソースをホワイトリストに登録して公開したい場合はどうすればよいでしょうか。

0 投票する
1 に答える
1013 参照

docker - etcd または consul で kong サーバーを使用するには?

kong を使用してマイクロサービスまたは API を管理したいのですが、kong は docker で構築された新しいマイクロ サービスを見つけることができません。では、kong は etcd や consul と連携できますか?</p>

0 投票する
1 に答える
2406 参照

api - 自己管理型のユーザー データベースを使用した Kong と OAuth についてサポートが必要

Kong と OAuth を使用して、Web アプリとその他の API を構築する必要があります。


今私が持っています:

  • コングのサーバー。
  • サーバーには、ID、ユーザー名、パスワードなどのユーザー情報が保存されます。ユーザーデータベースと名付けました。

する必要がある:

  • Web アプリやその他のアプリは、OAuth2.0 で API を使用する予定です。
  • API は Kong のみが提供します。

Kong のドキュメントによると、私は Resource Owner Password Credential を設計しました。これは次のようなものです。

(これらの API は accessToken を取得するためのものであり、認証方法はありません)

  1. ユーザー側からユーザー名とパスワードを Kong に送信
  2. Kong はそれを User-Database にルーティングします。
  3. User-Database はユーザー名とパスワードを確認し、リクエストを Kong に送信します。リクエストには、ユーザー名、パスワード、provision_key、autherticated_userid が含まれます。(*)
  4. Kong は access_token を User-Database に応答し、autherticated_userid、access_token、およびスコープも記憶します。Kong は、アクセス トークンの有効期限が切れる前にそれらを記憶します。
  5. User-Database が Kong からの応答を受信した後、ステップ 1 と 2 にも応答し、最終的に User-End は将来の使用のためにアクセス トークンを取得します。

(アクセストークンを取得)

  1. User-End は、認証が必要な API にリクエストを送信します。

ここに画像の説明を入力


ステップ3でわからないことがありました。

コングに関する文書によると:

$ curl https://your.api.com/oauth2/token \ --header "Authorization: Basic czZCaGRSa3F0MzpnWDFmQmF0M2JW" \ --data "client_id=XXX" \ --data "client_secret=XXX" \ --data "scope=XXX" \ --data "provision_key=XXX" \ --data "authenticated_userid=XXX" \ --data "username=XXX" \ --data "password=XXX"

The provision_key is the key the plugin has generated when it has been added to the API, while authenticated_userid is the ID of the end user whose username and password belong to.

すべてのユーザー情報を自己管理ユーザー データベースと Kong の両方に保存する必要がありますか?

または、見逃したものや最適化できるものはありますか?

リンク: Kong リソース所有者パスワード認証情報