OAuth セキュリティが設定された Apigee Edge で API プロキシを呼び出した場合、アクセス トークンの検証の責任は Edge が担います。Edge をゲートキーパーと考えてください。検証できるアクセス トークンを持たない API 呼び出しは通過できません。
VerifyAccessToken ポリシーの追加
トークンの検証を構成するには、VerifyAccessToken オペレーションで、API プロキシのフローの先頭(ProxyEndpoint のプレフローの先頭)に OAuthV2 ポリシーを配置します。その場所に配置すると、他の処理が行われる前にアクセス トークンが検証され、トークンが拒否された場合は、Edge は処理を停止し、クライアントにエラーを返します。
下記の手順に従って [API proxies] ページにアクセスします。
Edge
Edge UI を使用して [API proxies] ページにアクセスするには:
- apigee.com/edge にログインします。
- 左側のナビゲーション バーで [Develop] > [API Proxies] を選択します。
Classic Edge(Private Cloud)
Classic Edge UI を使用して [API proxies] ページにアクセスするには:
http://ms-ip:9000
にログインします。ここで、ms-ip は、Management Server ノードの IP アドレスまたは DNS 名です。- 上部のナビゲーション バーで [APIs] > [API Proxies] を選択します。
- リストから、保護するプロキシを選択します。
- 概要ページで [Develop] タブをクリックします。
- ナビゲータで、[Proxy Endpoints] に表示されるエンドポイントの [PreFlow] を選択します。通常、使用するエンドポイントは default と呼ばれるものになりますが、複数のプロキシ エンドポイントを作成できます。複数のエンドポイントがある場合に、それぞれでトークンの検証を実行するには、以下の手順に従うことをおすすめします。
- プロキシ フロー エディタで、[+ Step] をクリックします。
- [Policy Instance New] を選択します。
- ポリシーリストから [OAuth v2.0] を選択します。
- 必要に応じて、ポリシー名と表示名を変更します。たとえば、読みやすくするために、表示名と名前の両方を「VerifyAccessToken」に変更することもできます。
- [Add] をクリックします。
デフォルトのポリシーはすでに VerifyAccessToken オペレーションで構成されているため、これ以上の手順は必要ありません。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <OAuthV2 async="false" continueOnError="false" enabled="true" name="OAuth-v20-1"> <DisplayName>OAuth v2.0 1</DisplayName> <FaultRules/> <Properties/> <Attributes/> <ExternalAuthorization>false</ExternalAuthorization> <Operation>VerifyAccessToken</Operation> <SupportedGrantTypes/> <GenerateResponse enabled="true"/> <Tokens/> </OAuthV2>