SAP OData メタデータを API としてインポートする
適用対象: すべての API Management レベル
この記事では、メタデータの記述を使用して OData サービスをインポートする方法について説明します。 この記事では、SAP ゲートウェイ基盤を例として使用します。
この記事では、次のことを行います。
- SAP サービスから OData メタデータを取得する
- OData メタデータを直接 API Management にインポートする、または OpenAPI 仕様への変換後に API Management にインポートする
- API の構成を完了する
- Azure Portal での API のテスト
Note
OData API をそのメタデータの説明から API Management にインポートする操作はプレビュー段階です。 詳細については、こちらを参照してください。
前提条件
既存の API Management インスタンスがある。 まだない場合は、作成してください。
OData v2 または v4 として公開されている SAP システムとサービス。
SAP バックエンドが自己署名証明書 (テスト目的) を使用している場合は、SSL の信頼チェーンの検証を無効にすることが必要になる場合があります。 これを行うには、API Management インスタンスでバックエンドを構成します。
- Azure portal の [API] で、[バックエンド]>[+ 追加] を選択します。
- SAP バックエンド サービスを指すカスタム URL を追加します。
- [Validate certificate chain](証明書チェーンを検証する) および [Validate certificate name](証明書名を検証する) のチェックボックスをオフにします。
注意
運用環境のシナリオでは、エンドツーエンドの SSL 検証に適切な証明書を使用します。
SAP サービスから OData メタデータを取得する
次のいずれかの方法を使用して、SAP サービスからメタデータ XML を取得します。 メタデータ XML を OpenAPI 仕様に変換する場合は、ファイルをローカルに保存します。
- SAP ゲートウェイ クライアント (トランザクション
/IWFND/GW_CLIENT
) を使用します。 - または、XML を取得するための次の直接 HTTP 呼び出しを行います。
http://<OData server URL>:<port>/<path>/$metadata
API Management インスタンスに移動します。
Azure portal で、[API Management サービス] を検索して選択します。
[API Management サービス] ページで、ご自身の API Management インスタンスを選択します。
API を API Management にインポートする
API を API Management にインポートするには、メタデータ XML を OData API として直接インポートするか、またはメタデータ XML を OpenAPI 仕様に変換するいずれかの方法を選択します。
OData メタデータをインポートする
左側のメニューで、 [API]>[+ API の追加] を選択します。
[定義から作成] で [OData] を選択します。
API 設定を入力します。 API の [設定] タブに移動することで、後で設定を更新することができます。
[OData 仕様]で、OData メタデータ エンドポイントの URL を入力します。これは通常、サービス ルートへの URL であり、
/$metadata
が追加されています。 または、インポートするローカルの OData XML ファイルを選択します。残りの設定を入力して API を構成します。 設定については、「最初の API のインポートと発行」のチュートリアルで説明されています。
[作成] を選択します
API が [API] リストに追加されます。 OData メタデータ説明の中で公開されているエンティティ セットと関数が、API の [Entity sets and functions] タブ上に表示されます。
OData スキーマを更新する
ポータルでエディターにアクセスして、API の OData スキーマを表示できます。 API が変更された場合は、ファイルまたは OData サービス エンドポイントから API Management のスキーマを更新することもできます。
portal で、API Management インスタンスに移動します。
左側のメニューで、[API]> OData API を選択します。
[Entity sets and functions] タブ上で、エンティティ セットまたは関数の横にあるコンテキスト メニュー ([...]) を選択し、[Edit] を選択します。
スキーマを確認します。 更新する場合は、[ファイルから更新する] または [エンドポイントからスキーマを更新する] を選択します。
OData API をテストする
左側のメニューで、[API]> OData API を選択します。
[Entity sets and functions] タブ上で、エンティティ セットまたは関数の横にあるコンテキスト メニュー ([...]) を選択し、[Test] を選択します。
テスト コンソール内で、テスト用の [Template parameters]、[Query parameters]、[Headers] を入力し、[Test] を選択します。 ポータル内での API のテストについて詳しくはこちらを参照してください。
OData API をセキュリティで保護する
OData API 要求を介した攻撃から保護するために、既存の認証および認可ポリシーの両方と OData 検証ポリシーを適用して、OData API をセキュリティで保護します。
ヒント
ポータルの [API ポリシー] タブで、OData API のポリシーを 構成します。
実稼働に関する考慮事項
- API Management を SAP ゲートウェイと統合するには、エンドツーエンドのシナリオの例を参照してください。
- API Management ポリシーを使用して SAP バックエンドへのアクセスを制御します。 たとえば、API が OData API としてインポートされる場合は、OData 要求を検証するポリシーを使用します。 SAP プリンシパルの伝達と X-CSRF トークンの取り込みのためのポリシー スニペットも参照してください。
- 大規模な API のデプロイ、管理、移行のガイダンスについては、以下を参照してください。
関連トピック
- API のインポートの制限事項
- OpenAPI 仕様のインポート
- SOAP API のインポート
- SOAP API のインポートと REST への変換
- App Service API をインポートする
- コンテナー アプリ API をインポートする
- Websocket API のインポート
- GraphQL API のインポート
- GraphQL スキーマをインポートし、フィールド リゾルバーを設定する
- Azure 関数アプリをインポートする
- Azure ロジック アプリをインポートする
- Service Fabric サービスをインポートする
- OData API をインポートする
- SAP OData メタデータをインポートする
- gRPC API をインポートする
- API の編集