2017-05-03 2 views
1

Kong API Gatewayを使用して、これらのAPIにアクセスするために1つのトークンを取得するために、すべてのAPIにOAuth2プラグインを追加しました。クライアント証明書フローのOAuth2プラグインを使用して、Kongのトークン1つで複数のAPIにアクセスする

私が呼ぶ:必要なフィールドを持つwww.example.com/oauth2/tokengrant typeclient idclient secret

それがAPIを追加するために私を強制的に:www.example.com/apiendpoint/oauth2/token

残念ながら、生成されたトークンは特定のAPIにしかアクセスできません。

私が試してみた:

www.example.com/apis/oauth2/token 
www.example.com/token 

としてだけでなく、最新のAPIドス見直し: https://getkong.org/docs/0.10.x/admin-api/ 働いているのどれを。

すべてのAPIにアクセスするために1つのトークンを生成することはできますか?

答えて

1

これは今日の香港では不可能です。https://github.com/Mashape/kong/issues号を開いて、Kongのコミュニティにあなたの要望を見せてもらうことができます。

+0

Cheers Cooper。すべてのAPIにkey-authプラグインをインストールし、個々のエンドポイントにaclプラグインをインストールすることで、私はそれを回避することができました。 1つのキーがaclグループに応じて複数のAPIにアクセスできるようにうまく機能しているようです。 –

0

これを行う方法を探している人におすすめです。あなたが希望するAPIトークンを設定することができます

$ curl -X POST http://kong:8001/oauth2_tokens \ 
    --data "api_id=API-ID" \ 
    --data "scope=SOME-SCOPE" \ 
    --data "credential_id=KONG-APPLICATION-ID" \ 
    --data "token_type=bearer" \ 
    --data "access_token=SOME-TOKEN" \ 
    --data "refresh_token=SOME-TOKEN" \ 
    --data "expires_in=3600" 

この方法:頼まれたものを達成するために

方法は、管理APIにポストを行うことです。

KONG-APPLICATION-IDは、/ consumers/consumername/oauth2 APIポイントにあります。

+0

これはうまくいくはずですが、関係するすべてのAPIについて、すべてのKong生成トークンを上書きするため、ハッキングの方法です。 –

+0

私はこのmetodを使っていて、既存のトークンは同じままです。 – Daniel

関連する問題