私はバックエンドAPIを持っています。Azure API Managementを使用してプロキシしたいです。 このバックエンドAPIを使用するには、ベアラOauth2トークンを提供する必要があります。 Azure APIMを使用して私のOauth2フローを処理したいと思っています。クライアントアプリケーションで消費される非常にシンプルなAPIを公開したいと思います。クライアントのAppがOauth2を使用しないようにしたい。 APIMでどのように処理できますか? Oauth2でバックエンドAPIを保護する方法を示すサンプルが多数見つかりましたが、実装しようとしているユースケースではありません。おかげさまで Azure API Management:バックエンドAPIを使用したOauth2
1
A
答えて
0
あなたがしなければならないことは、要求使用ヘッダーポリシーを使用して、承認ヘッダーを希望の値に設定することです。あなたがポリシーのトークンをハードコーディングできるなら、それはうまくいくでしょう。
送信要求を使用してポリシー内でOAuthフローを整理する必要がある場合。要するに、あなたは、あなたにアプリケーションのIDと秘密をOAuthエンドポイントに送り、その応答を解析してトークンを取得し、それを要求に添付することです。ここで
1
は、この作品を作るための政策の抜粋です:
<send-request ignore-error="true" timeout="20" response-variable-name="bearerToken" mode="new">
<set-url>{{authorizationServer}}</set-url>
<set-method>POST</set-method>
<set-header name="Content-Type" exists-action="override">
<value>application/x-www-form-urlencoded</value>
</set-header>
<set-body>
@{
return "client_id={{clientId}}&resource={{scope}}&client_secret={{clientSecret}}&grant_type=client_credentials";
}
</set-body>
</send-request>
<set-header name="Authorization" exists-action="override">
<value>
@("Bearer " + (String)((IResponse)context.Variables["bearerToken"]).Body.As<JObject>()["access_token"])
</value>
</set-header>
<!-- We do not want to expose our APIM subscription key to the backend API -->
<set-header exists-action="delete" name="Ocp-Apim-Subscription-Key"/>
からAPIMポリシースニペットの枝に
とすぐに
関連する問題
- 1. Azure Management API X509Certificate2を使用した認証の問題
- 2. OAuth2を使用したAPI上のRequestsLibrary
- 3. Azure API管理とバックエンドWeb API
- 4. Azure Api Management Gitリポジトリのパスワードの生成
- 5. APIアドレスをカスタマイズする方法(Azure API MANAGEMENT)
- 6. Rest APIを使用したAzureコンテナサービス
- 7. OAuth2を使用してC APIでGoogle APIで認証する
- 8. aws APIゲートウェイlambdaを使用してWebバックエンドAPIを構築
- 9. ARMテンプレートを使用してAzure API ManagementにAPIをインポートすることはできますか?
- 10. Azure API管理によるDocumentDB APIを使用したCosmosDb
- 11. Azure API Managementを介してAPIを呼び出すと、User.Identity.Nameが空になる
- 12. Azure Resource ManagerとAzure API Managementの違いは何ですか?
- 13. SSLを使用したAzure Mobile Appバックエンド
- 14. OAUTH2認証要求ヘッダーを使用したロボットフレームワークのAPIテスト
- 15. Socrata APIを使用したOAuth2の実装
- 16. Google Play APIを使用したHTTPError 401とApp EngineのOAuth2
- 17. OAuth2を使用したJava Spring(Maven)REST API
- 18. oAuth2を使用したSpringブートAPIの保護|フィルタユーザー
- 19. PythonのOAuth2 with sudsを使用したGoogle Adwords API認証
- 20. REST API AWS Cognitoを使用したoauth2タイプ認証
- 21. Azure API Managementで複数の認証プロバイダを使用できますか?
- 22. バックエンドとしてJava Rest APIを使用したAngular JSログイン
- 23. Ember.jsと動的IPバックエンドAPIを使用したWebアプリケーション
- 24. JDBCの代わりにバックエンドのAPIを使用したSpringセッション
- 25. odataバックエンドを使用したAPI管理は、$ metadata work
- 26. Office 365用OAuth2 Javaアプリケーション用REST API
- 27. Ocp-Apim-Subscription-Keyを設定せずにAzure API Management経由でAPIにアクセス
- 28. OAuth2を設定したSpringブートkatharsis API
- 29. カスタムAPIのOAuth2
- 30. eJabberd API with OAuth2