「RESTアダプタ」の機能
「RESTアダプタ」は、「RESTアダプタ」接続をトリガーとして構成することで、統合をREST APIとして公開することができます。 「RESTアダプタ」は、「RESTアダプタ」接続を起動として構成することによって、任意の外部REST APIを使用することもできます。 このセクションでは、「RESTアダプタ」がトリガーまたは起動接続として使用される場合の機能について説明します。
ノート:
「RESTアダプタ」は、すべてのエンドポイントが公開されているときにそれを処理します。 「RESTアダプタ」は、接続先のアプリケーションによって公開されているAPIをフィルタリングまたは変更しません。 接続先のアプリケーションのネイティブ・アダプタがある場合は、代わりにそのアダプタを使用してください。 ネイティブ・アダプタの代わりに「RESTアダプタ」を使用することを選択した場合は、それぞれのアプリケーションの資料で指定されているように、APIの制約および非推奨ポリシーが適用されます。Oracle HCM Cloud SOAP APIに接続するには、「Oracle HCM Cloudアダプタの機能」を参照してください。
統合をREST APIとして公開するためのトリガー接続の構成時の機能
「RESTアダプタ」は、統合をREST APIとして公開するためのトリガー接続として構成される場合に、次の機能を提供します。 トリガー接続として構成されている場合、「RESTアダプタ」を使用すると、統合でアプリケーションからインバウンド・メッセージを受信できます。
RESTエンドポイントの公開
リクエストを受け入れて非同期に処理できるRESTエンドポイントを公開できます。
ペイロード形式のアップロード
-
「RESTアダプタ」構成時にXMLコンテンツのデータ定義を定義するための圧縮アーカイブとしての複雑なXMLスキーマ定義。 「複雑なスキーマのサポート」を参照してください。
-
「RESTアダプタ」構成時にXMLコンテンツのデータ定義を定義するサンプルXMLドキュメント。 スキーマの生成には、次のXMLドキュメントがサポートされています:
-
名前空間のないXML。
-
同質の名前空間を持つXML。
-
XMLファイルのサイズは最大3 MBです。
-
-
制限ファセットが有効になっているsimpleTypesを持つスキーマ。 名前付き型と匿名型の両方がサポートされています。
エンドポイント・プロパティの構成
-
相対リソースURI。
-
HTTPメソッドのGET、PUT、POST、DELETEおよびPATCH。
-
テンプレートおよび問合せパラメータ
-
Request/response payload.
-
JSON、XML、バイナリ(インラインおよび非構造化)およびURLフォームでエンコードされたペイロードをサポートします。
-
トップレベルの配列を含む同種のJSON配列をサポートします。
-
多次元JSON配列をサポートします(「JSONドキュメントにおける同種の多次元配列のサポート」を参照)。
-
-
「RESTアダプタ」を使用して公開されたREST APIは、Basic認証、OAuthトークン・ベースの認証およびJWTベースの認証を使用して保護されます。
-
REST APIはHTTPSプロトコルを実装するため、すべての着信リクエストにトランスポート・レベルのセキュリティが適用されます。
- リソースURIとHTTPアクション/動詞が異なる複数の操作エントリ・ポイント。 各操作は、1つの統合内で異なる選択アクション・ブランチを表します。 この機能により、異なる操作を実行するために複数の統合(それぞれが個別のリソースURIおよび動詞を持つ)を作成する必要がなくなります。 「Oracle Integration 3での統合の使用」の「単一のRESTアダプタ・トリガー接続での複数リソースのリクエストの受信」を参照してください。
-
「RESTアダプタ」を使用して公開されるREST APIは、CORS準拠です(「クロス・オリジン・リソース共有(CORS)」を参照)。
- セキュリティ・ポリシー、ヘッダー、パラメータなど、RESTアダプタ接続の構成時に選択した構成オプションについて、アダプタ・エンドポイント構成ウィザードの「サマリー」ページでのcURL構文の生成例。 「サマリー・ページ」を参照してください。
受信メッセージおよび添付サイズ制限の強制
次のサポートが提供されています:
-
添付のない受信(トリガー)メッセージ・リクエストがサイズ制限を超えないようにします。 「Oracle Integration 3のプロビジョニングと管理」の「サービス制限」を参照してください。
添付ファイル付きのメッセージ(multipart/mixedやmultipart/form-dataなど)は、この制約の対象ではありません。 構造化メッセージのサイズ(XML/JSONなど)がサイズ制限を超えると、HTTPエラー・コード・メッセージがクライアントに返されます:
413 Request entity too large。 -
受信(トリガー)JSONアタッチメントがサイズ制限を超えないようにします。 JSONアタッチメントのサイズが制限を超えると、HTTPエラー・コード・メッセージがクライアントに返されます:
413 Request entity too large。 「Oracle Integration 3のプロビジョニングと管理」の「サービス制限」を参照してください。 -
クライアントからの受信(トリガー)構造化メッセージ・ペイロード・リクエスト(JSON、XML、HTML、YAMLまたはYMLを含む任意のcontent-typeヘッダー)がサイズ制限を超えないようにします。 構造化メッセージのサイズがこれらの値を超えると、HTTPエラー・コード・メッセージがクライアントに返されます:
413 Request entity too large。「Oracle Integration 3のプロビジョニングと管理」の「サービス制限」を参照してください。
マルチパート/混合およびマルチパート/フォーム・データ型のサポート
次のサポートが提供されています:
- 「RESTアダプタ」トリガー接続で、multipart/mixedおよびmultipart/form-dataを使用したOpenAPIの消費および公開。 「マルチパート/混在およびマルチパート/フォーム・データを使用したOpenAPI文書の消費および公開」を参照してください。
-
マルチパート添付(コンテンツ・タイプ): 統合の作成時に、リクエスト/レスポンス・メッセージのmultipart/mixedおよびmultipart/form-data。マルチパート・アタッチメントを含む受信リクエスト・メッセージを受け入れるか、マルチパート・アタッチメントを含むレスポンスを送信するRESTエンドポイントを公開します(「トリガー接続と起動接続のマルチパート・アタッチメントのサポート」を参照)。
サポートSwagger
「RESTアダプタ」を使用して公開されるREST API用のSwagger 2.0準拠ドキュメントの自動生成がサポートされています。 このドキュメントでは、生成されたREST APIのメタデータについて説明します。
標準およびカスタムHTTPヘッダーの公開
統合をモデル化するための標準およびカスタムHTTPヘッダーは、標準およびカスタムHTTPヘッダー・プロパティをダウンストリーム処理のためにOracle Integrationに公開するためにサポートされています(「標準ヘッダー・サポートとカスタム・ヘッダー・サポート」を参照)。
ユーザー・アイデンティティのOracle NetSuiteへの伝播
ユーザー・アイデンティティを「RESTアダプタ」からOracle NetSuiteに伝播するためのカスタムJWTクレームの作成がサポートされています。 アイデンティティ伝播を使用すると、ユーザーの同じトークンIDおよびトークン・シークレットをOracle NetSuiteに安全に転送できます。 「カスタムJWT要求を使用したRESTアダプタからOracle NetSuiteへのユーザー・アイデンティティの伝播」を参照してください。
外部REST APIを使用するための起動接続の構成時の機能
「RESTアダプタ」は、外部REST APIを消費するための呼出し接続として構成される場合に、次の機能を提供します。 起動接続として構成されると、「RESTアダプタ」はターゲット・アプリケーション・エンドポイントにメッセージを送信します。
- 送信メッセージおよび添付サイズ制限の強制
- OpenAPIドキュメントの公開
- Oracle Cloud Infrastructure APIの起動
- プライベート・リソースへの接続
- REST APIの使用
- Amazon Web Servicesの起動(AWS)
- エンドポイント・プロパティの構成
- ペイロード形式のアップロード
- マルチパート/混合およびマルチパート/フォーム・データ型のサポート
- サポート・リソース・プリンシパル・セッション・トークン
- JWTクライアントおよびユーザー・アサーションのサポート
- 機密データの難読化のサポート
- 標準およびカスタムHTTPヘッダーの公開
- 共存REST APIの起動
- エンドポイントの動的な変更
送信メッセージおよび添付サイズ制限の強制
次のサポートが提供されています:
-
アウトバウンドRESTリクエストの添付ファイルを含むレスポンスが1 GBを超えないようにします。 これらの添付には、multipart/mixed、multipart/form-dataまたはapplication/octet-streamを使用できます。 添付ファイルが1 GBを超える場合は、HTTPエラー・コード・メッセージが返されます:
413 Request entity too large -
クライアントから非構造化ペイロード(multipart-formdataおよびbinary/octed-stream)を返す送信(invoke)メッセージがサイズ制限を超えないようにします。
-
クライアントに構造化メッセージ・ペイロード(JSON、XML、HTML、YAMLまたはYMLを含む任意のcontent-typeヘッダー)を返す送信(起動)メッセージがサイズ制限を超えないようにします。
「Oracle Integration 3のプロビジョニングと管理」の「サービス制限」を参照してください。
OpenAPIドキュメントの公開
RESTベースの統合は、OpenAPIドキュメントとして公開できます。 OpenAPIサポートは、「RESTアダプタ」を起動接続として構成する場合に使用できます。 公開または使用するOpenAPIドキュメントへのリンクを指定します。
OpenAPIサポートでは、次のタスクを実行できます:
-
- Oracle Integration RESTエンドポイントを説明するOpenAPIドキュメントを公開します。 postmanなどのRESTクライアントを使用して、公開されたドキュメントでRESTエンドポイントを起動することができます。
「OpenAPIドキュメントとしてのRESTベースの統合の公開」を参照してください。
- 「RESTアダプタ」を使用してOpenAPI文書を消費します。
アダプタ・エンドポイント構成ウィザードで現在無効になっている標準ヘッダーを除き、OpenAPI定義のヘッダーは自動的にサポートされます。
- Oracle Integration RESTエンドポイントを説明するOpenAPIドキュメントを公開します。 postmanなどのRESTクライアントを使用して、公開されたドキュメントでRESTエンドポイントを起動することができます。
Oracle Cloud Infrastructure APIの起動
Oracle関数、ストリーミング、ストレージなどのOracle Cloud Infrastructure APIを、Oracle Integration統合フローの不可欠な部分として呼び出すことができます。
プライベート・リソースへの接続
プライベート・エンドポイントを使用して、仮想クラウド・ネットワーク(VCN)内のプライベート・リソースに接続できます。 「Oracle Integration 3のプロビジョニングと管理」と「エンドポイント・アクセス・タイプの構成」の「プライベート・リソースへの接続」を参照してください。 このタイプの接続では、接続エージェントは使用されません。 「RESTアダプタ」は、トリガー接続のあるプライベート・エンドポイントをサポートしていません。 起動接続のみがサポートされています。
REST APIの使用
-
Swagger 2.0/RAML/OpenAPIドキュメントおよびOracleメタデータ・カタログを使用して記述されたREST APIの使用。 「RESTアダプタ」は、構成用のドキュメントに存在する使用可能なリソースおよび操作を自動的に検出して提示できます。 ドキュメントで使用可能な操作固有のリクエスト・メッセージおよびレスポンス・メッセージに関するメタデータは、マッピングおよびその他のアクティビティで自動的に使用可能になります。
-
Swagger/RAML/OpenAPIドキュメントを使用して説明されていない外部REST APIの使用。 リクエストとレスポンス・メッセージのシェイプを記述するHTTPメソッドとサンプルJSONドキュメント/XMLスキーマを宣言的に指定することができます。
-
HTTP Basic認証、OAuthクライアント資格証明(2-leggedフロー)、OAuthリソース所有者パスワード資格証明(2-leggedフロー)、OAuth認可コード資格証明(3-leggedフロー)、OAuthカスタム3-Leggedフロー、OAuthカスタム2-Leggedフロー、OAuth 1.0a One Legged認証、Amazon Web Services (AWS)シグネチャ・バージョン4およびOracle Cloud Infrastructure (OCI)シグネチャ・バージョン1を使用して保護されるREST APIの消費。 保護されていないAPIの使用もサポートされています。
-
トランスポート・レベルのセキュリティを使用して保護されている外部REST APIの使用。 「RESTアダプタ」は、一方向SSLおよび双方向SSLをサポートします。 Oracle Integrationは、あまり知られていない認証局(CA)または自己署名証明書を使用して保護されている外部APIのパブリック証明書をアップロードするための証明書管理ユーザー・インタフェースをサポートしています。
-
クライアント側(Oracle Integration)のアイデンティティを必要とする双方向SSLサーバーでホストされる外部REST APIの消費。 Oracle Integrationは、外部APIをホストするサーバーとクライアント側のアイデンティティを交換するためのサポートを提供します。
Amazon Web Servicesの起動(AWS)
Amazon Web Services (AWS)シグネチャ・バージョン4の認証タイプをサポートする外部RESTエンドポイントを呼び出すことができます。 オンプレミス環境でホストされているAWS APIを呼び出す必要があるシナリオでは、Amazon Web Services (AWS) Signature Version 4セキュリティ・ポリシーを接続エージェントとともに使用できます。
エンドポイント・プロパティの構成
-
相対リソースURI。
-
HTTPメソッドのGET、PUT、POST、DELETEおよびPATCH。
-
テンプレートおよび問合せパラメータ
-
リクエスト/レスポンス・ペイロード:
-
JSON、XML、バイナリ(インラインおよび非構造化)およびURLフォームでエンコードされたペイロードをサポートします。
-
均質なJSON配列をサポートします。
-
多次元JSON配列をサポートします(「JSONドキュメントにおける同種の多次元配列のサポート」を参照)。
-
リクエスト本文の一部としてフォーム・パラメータの配信をサポートします。
-
-
セキュリティ・ポリシー、ヘッダー、パラメータなど、RESTアダプタ接続の構成時に選択した構成オプションについて、アダプタ・エンドポイント構成ウィザードの「サマリー」ページでのcURL構文の生成例。 「サマリー・ページ」を参照してください。
ペイロード形式のアップロード
-
「RESTアダプタ」構成時にXMLコンテンツのデータ定義を定義するサンプルXMLドキュメント。 データ定義の生成には、次のXML文書がサポートされています:
-
名前空間のないXML。
-
同質の名前空間を持つXML。
-
XMLファイルのサイズは最大3 MBです。
-
-
「RESTアダプタ」構成時にデータ定義を定義するサンプルJSONドキュメント。
-
「RESTアダプタ」構成中にXMLコンテンツのデータ定義を定義するための圧縮アーカイブとしての複雑なXMLスキーマ定義(「複雑なスキーマのサポート」を参照)。
-
制限ファセットが有効になっているsimpleTypesを持つスキーマ。 名前付き型と匿名型の両方がサポートされています。
マルチパート/混合およびマルチパート/フォーム・データ型のサポート
次のサポートが提供されています:
-
マルチパート・アタッチメント(コンテンツ・タイプ): 統合のリクエスト/レスポンス・メッセージのmultipart/mixedおよびmultipart/form-data。マルチパート・アタッチメントを含む受信リクエスト・メッセージを受け入れる外部RESTエンドポイントにリクエストを送信したり、マルチパート・アタッチメントを含むレスポンスを送信します(「トリガー接続と起動接続のマルチパート・アタッチメントのサポート」を参照)。
サポート・リソース・プリンシパル・セッション・トークン
リソース・プリンシパル・セッション・トークン(RPST)を使用できます。 RPSTを使用すると、Oracle Integrationインスタンス(リソース)は、Oracle Cloud Infrastructureファンクション、Oracle Cloud Infrastructureオブジェクト・ストレージ、Oracle Cloud Infrastructure VisionなどのOracle Cloud Infrastructureサービスを使用して自身を認証し、消費できます。 「リソース・プリンシパル・セッション・トークンのサポート」と「RPSTおよびOCIサービス起動セキュリティ・ポリシーの使用」を参照してください。
JWTクライアントおよびユーザー・アサーションのサポート
JWTクライアントおよびOAuthクライアント資格証明を持つユーザー・アサーションは、それぞれJWTクライアント・アサーション・セキュリティ・ポリシーおよびJWTユーザー・アサーション・セキュリティ・ポリシーを使用してサポートされます。 JWTアサーションを使用すると、OAuthクライアント・シークレットをセキュアとみなさないサービス・プロバイダを起動できます。 信頼は、クライアント・シークレット・キーではなくキー・ペアの交換で確立されます。 「アウトバウンド呼出しに対するJWTアサーションのサポート」と「JWTアサーションを使用したサービス・プロバイダAPIの起動」を参照してください。
JWTユーザー・アサーション・セキュリティ・ポリシーを使用するOAuthでは、REST API操作の起動時にOAuthアイデンティティ伝播もサポートされます。 OAuthアイデンティティ伝播を使用すると、サービス間で同じユーザー・アイデンティティおよびアクセス資格証明を安全に転送できます。 「サービス間でのOAuthユーザー・アイデンティティの伝播」を参照してください。
機密データの難読化のサポート
OAuthカスタム3レッグ・フロー・セキュリティ・ポリシーおよびOAuthカスタム2レッグ・フロー・セキュリティ・ポリシーのフィールドを構成する場合、クライアントID、クライアント・シークレット、スコープ、APIキーなどの機密データの不明瞭化がサポートされています。 「データ難読化のサポート」を参照してください。
標準およびカスタムHTTPヘッダーの公開
次のサポートが提供されています:
-
外部REST APIによって公開される標準HTTPヘッダーおよびカスタムHTTPヘッダーへのアクセスおよび設定(「標準ヘッダー・サポートとカスタム・ヘッダー・サポート」を参照)。
-
拡張性サポートを使用して、複数のOAuth 2プロバイダにアクセスします(「標準ヘッダー・サポートとカスタム・ヘッダー・サポート」を参照)。
共存REST APIの起動
コロケーションされたREST APIは、最適化された方法で起動できます。
Oracle Integrationランタイムは、エンドポイントURLにロード・バランサ・アドレスがあるかどうかをチェックすることによって、起動されたエンドポイントが同じ場所にあるかどうかを判断します。 エンドポイントURLにロード・バランサ・アドレスがある場合、エンドポイントは同じ場所にあるとみなされ、非SSL HTTPプロトコルを使用してローカルにサービスにアクセスすることによってHTTPリクエストが最適化されます。
エンドポイントの動的な変更
(起動)アウトバウンド・エンドポイント構成を動的に変更できます(「動的RESTエンドポイントのサポート」を参照)。