「RESTアダプタ」の制限事項
次の「RESTアダプタ」に関する制限に注意してください。
- 「RESTアダプタ」は、トリガー接続のあるプライベート・エンドポイントをサポートしていません。 起動接続のみがサポートされています。 トリガー接続を使用しようとすると、次のエラーが発生します:
Connection with PrivateEndpoint access type is not supported for trigger. Please choose a valid access type for the trigger. - OCIサービス起動セキュリティ・ポリシーは、アイデンティティ・ドメインに対して有効になっていないクラウド・テナンシでは機能しません。 クラウド・テナンシのステータスがわからない場合は、管理者に問い合せてください。
- インバウンド通信のTransport Layer Security (TLS)バージョン1.3はサポートされていません。
- RESTエンドポイントは、双方向SSLまたは相互TLS認証(mTLS)を使用して保護できます。 「RESTアダプタ」は、これらのエンドポイントへのアクセスをサポートしています。 OAuthアクセス・トークンを取得および管理する認可エンドポイントは、RESTエンドポイントでもあります。 ただし、これらのエンドポイントは、双方向SSLを使用して保護されている場合、「RESTアダプタ」接続での使用が保証されません。
- 接続エージェントを介した外部サービスへのコールでは、双方向SSLはサポートされていません。 双方向SSLには、接続エージェントなしでOracle Integrationからの直接接続が必要です。
-
JSONファイル・サンプルの許容最大制限は100 KBです。
-
プレーン/テキスト・コンテンツ・タイプは、Rawペイロード・オプションを使用して「RESTアダプタ」によって未解析のコンテンツとして送受信できます。
-
NTLMまたはダイジェスト・トークン・ベースの認証を使用して保護されている外部REST APIの消費はサポートされていません。
- 接続ページでオンプレミス接続エージェントを使用するように「RESTアダプタ」を構成する場合、「セキュリティ・ポリシー」リストの「基本認証」、「OAuthクライアントの資格証明」、「OAuthのリソース所有者のパスワード資格証明」、「OAuthカスタム2足歩行」および「セキュリティ・ポリシーなし」セキュリティ・ポリシーのみがサポートされます。
「セキュリティ・ポリシー」リストにある次のセキュリティ・ポリシーは、接続エージェントでの使用はサポートされていません:
- AWS署名バージョン4
- OAuth認証コード資格証明
- OAuthカスタム3レッグ・フロー
- APIキー・ベース認証
- OAuth 1.0 1レッグ認証
- OCI署名バージョン1
「エージェントによるオンプレミスREST APIサポート」を参照してください。
-
「RESTアダプタ」は、サービスを起動する前に問合せパラメータの値を自動的にエンコードします。 「RESTアダプタ」には、すでに問合せパラメータをエンコードしているかどうかわからない方法があります。 問合せパラメータにunencoded値を必ず割り当ててください。 エンコードされた値を割り当てると、二重エンコーディングになります。
たとえば、問合せパラメータ
qに次の値が含まれているとします。q=a+bこれは、
qの値がa bであることを意図していたが、ユーザーによってエンコードされたことを意味する場合があります。この目的は
a+bも送信されている可能性があります。これは、送信前にa%2BbとしてURLエンコードされる必要があります。 - OpenAPIsを公開する場合、多相構成メンバーはサポートされません。
\u0000から\u001Fの範囲のUnicode文字は制御文字であり、JSON要素では使用できません。- レスポンス・ステータスをカスタマイズできます。 ただし、実行時オーバーライドはインタフェースの一部として認識されないため、これはSwagger規約の一部としては表示されません。
- HTTPレスポンス・ステータスは、次の条件下ではカスタマイズできません:
- リクエストが非同期の場合。 これは、レスポンス・ステータスが常に
201であるためです。 - トリガーのリクエスト/レスポンス処理中に発生したエラーは、事前定義済のエラー・コードを使用してレポートされます。
- このようなシナリオでは、基本的なルーティング統合(データ統合のマップ)でフォルト処理およびエラー・レスポンスは許可されません。
- HTTPレスポンス・ステータスが
204に設定されている場合、レスポンスはコンテンツなしで返送されます。
- リクエストが非同期の場合。 これは、レスポンス・ステータスが常に
- Oracle NetSuiteとの統合にOAuth 1.0 One Legged Authenticationセキュリティ・ポリシーを使用する場合は、「RESTアダプタ」接続でHMAC-SHA256またはHMAC-SHA1が使用されていることを確認します。 更新が必要な場合は、統合の再アクティブ化は必要ありません。 「接続セキュリティの構成」を参照してください。
Swagger/OpenAPIの制限
すべてのSwagger構造が「RESTアダプタ」で認識されるわけではありません。 Swagger/OpenAPIを公開および使用する場合は、次の制限事項に注意してください。
公開制限
「RESTアダプタ」の公開に関する次の制限事項に注意してください。
- OpenAPIsを公開する場合、多相構成メンバーはサポートされません。
- 「RESTアダプタ」トリガー接続を使用して作成されたエンドポイントは、SwaggerおよびopenAPI定義を使用して記述されます。 XMLリクエスト/レスポンスを持つRESTエンドポイントが正しく記述されていません。 クライアントはSwagger/openAPI定義に依存してはいけません。
- 各「RESTアダプタ」トリガー接続エンドポイントは、Swaggerドキュメントとして公開されます。 通常、Swaggerドキュメントには単一のリソースと動詞があります。
ただし、複数の動詞およびリソースがある場合、Swaggerドキュメントには、Swaggerの複数のリソースまたはパスと、各リソースの複数の動詞が含まれます。
- OpenAPIでは、キーが文字列であるディクショナリ・タイプを定義できますが、ディクショナリ・タイプはOracle Integrationではサポートされていません。
- JSONペイロードのみが公開用にサポートされています。 XMLペイロードはサポートされていません。
消費制限
クライアントとしての「RESTアダプタ」は、既存のリソースを検出およびリストできるSwagger定義を使用して構成できます。 ただし、現在、一部のSwagger操作はRESTアダプタで正しく消費できません:
- 消費がサポートされているのは、次の3つのマルチパート組合せのみです:
- multipart/form-dataを使用した1つ以上のファイル・アップロード本文パートと任意の数のプレーン・テキスト・フィールド
- multipart/form-dataを使用した1つ以上のファイル・アップロード本文パートおよび1つのJSON本文パート
- マルチパート/混合を使用した1つ以上のファイル・アップロード本文パートおよび1つのJSON本文パート
- JSONのコンテンツはオブジェクトである必要があります
- XML
- 最上位の配列
- Raw/application/octet-stream
- OpenAPI 3.0を使用して説明されている外部REST API
- multipart/form-data、multipart/mixed、application/octet-streamなどのコンテンツ・タイプに関するメタデータを持つ外部REST APIのSwagger文書
- 「RESTアダプタ」起動接続では、ネストされた構造を持つSwagger文書を消費できません。 たとえば:
Employee → payroll → item (line 1, line2) Manager → payroll → item (line 3, line4)このような場合、Swaggerパーサーは
itemの最初の定義をキャッシュし、その定義を使用して不正なマネージャ・スキーマを引き起こします。 この問題は解決されていますが、下位互換性のために修正は現在有効になっていません。リクエストまたはレスポンスのないRESTエンドポイントは、Swagger-based接続またはローカル統合を使用して消費できません。 Swagger-based接続を使用してローカル統合またはアダプタ・エンドポイント構成ウィザードを初期化した後にエラーが表示された場合は、特定のSwaggers.の消費に関する制限を確認してください。
次の追加の制限に注意してください:
- OpenAPI仕様の欠落しているサーバーURLは、OpenAPIホスト・ポートから解決されます。 サーバーURLがOpenAPI仕様にない場合、ベースURLはOpenAPI仕様がホストされているOpenAPI URLのdomain/host:portから解決されます。 たとえば、ターゲット・エンドポイントは、OpenAPI仕様がホストされているホストおよびポートを使用して次のように解決されます:
http(s)://host:port/path-from-openapi - ヘッダー/カスタム・ヘッダーは手動で追加する必要があり、OpenAPI仕様からは検出されません。
- 接続性エージェントの制限:
- Swagger APIの消費は、接続エージェントでは機能しません。
- OpenAPIの消費は、接続エージェントでは機能しません。
- SwaggerまたはOpenAPI仕様で複数の成功レスポンスが定義されている場合、Oracle Integrationは次の基準に基づいてレスポンスを使用します:
- Oracle Integrationは、まず成功レスポンスを探します(
200)。 - 定義に
200レスポンスが含まれていない場合、Oracle Integrationはdefaultを使用してレスポンス定義を検索します。 defaultが定義されていない場合、Oracle Integrationは201定義のレスポンスを検索します。
各カテゴリで、Oracle Integrationはまず
application/jsonに対応するレスポンスを使用します。 それ以外の場合、Oracle Integrationは、ステータス・コードに対するレスポンスのリストの最初のレスポンスを使用します。 - Oracle Integrationは、まず成功レスポンスを探します(