DataPower API Gateway

redact - DataPower API Gateway

redact ポリシーを使用して、要求の本文、応答の本文、およびアクティビティー・ログから、指定されたフィールドを完全に削除するか、それらのフィールドを編集します。 法律、 セキュリティー、その他の理由により、機密データ (例えば、 クレジット・カードの詳細) を削除またはブロックするためにこのポリシーは役立ちます。

ゲートウェイのサポート

注: このページでは、 DataPower® API Gatewayでの redact ポリシーの実装について説明します。 を使用している場合は DataPower Gateway (v5 compatible)redact - DataPower Gateway ( v5 互換) を参照してください。

さまざまなタイプのゲートウェイについては、 API Connect のゲートウェイ・タイプを参照してください。

表 1. このポリシーをサポートするゲートウェイと、対応するポリシーバージョンを示す表
ゲートウェイ ポリシーのバージョン
DataPower API Gateway 2.0.0

このトピックでは、 OpenAPI ソースでポリシーを設定する方法について説明します。アセンブリのユーザーインターフェースでポリシーを設定する方法の詳細については、 「Redaction - DataPower API Gateway 」を参照してください。

製品情報

redact ポリシーの形式は次のとおりです。
- redact:
    version: version
    title: title
    description: description
    redactions:
      - action: remove_or_redact
        path: JSONata_expression_for_field_to_remove_or_redact
                .
                .
                .
    root: content_source
注: DataPower API Gatewayでは、 redact ポリシーへの入力は解析済みデータでなければなりません。 解析済みデータを生成する 1 つの方法は、アセンブリー・フローで redact ポリシーの前に parse ポリシーを使用することです。これにより、解析アクションが明示的に制御されます。

プロパティ-

以下の表では、 redact ポリシーのプロパティーについて説明します。
表 2: redact ポリシーのプロパティ
プロパティー 必須 説明 データ・タイプ
version はい ポリシーのバージョン番号 ストリング
title いいえ ポリシーのタイトル。 ストリング
description いいえ ポリシーの説明。 ストリング
root いいえ 編集アクションまたは削除アクションの適用対象となるコンテンツが含まれているデータ・ソースを指定します。 root プロパティーが省略された場合は、API コンテキスト全体にアクションが適用されます。

サポートされている任意の JSONata パス式を使用できます。

アクションを要求データまたは応答データのいずれかに適用する場合は、値 message.body を指定します。 アクションが適用される実際の内容は、アセンブリー・フロー全体での redact ポリシーの位置によって異なります。以下に例を示します。
  • 先頭に位置している場合、アクションはクライアント要求に適用されます。
  • invoke ポリシーの後に配置されている場合、アクションはバックエンドからの応答に適用されます。
  • 末尾に配置されている場合、アクションはクライアントに返される応答に適用されます。

アセンブリフローにおいて、プロパティに対して modegather-only 指定するログポリシーの後に redact このポリシーが使用される場合は、ログに記録されるリクエストのペイロード log.request_body に対して値を、またはログに記録されるレスポンス log.response_body のペイロードに対して値を root 指定してください。

ストリング
path はい ソースで編集または削除するフィールドを特定する JSONata パス式を指定します。 詳細については、 「フィールドをマスキングするためのJSONata式を作成する」 を参照してください ストリング
action はい コンテンツを削除するのか編集するのかを指定します。
以下のいずれかの値を入力します。
  • remove: 指定されたフィールドを完全に削除します。
  • redact: データをブロックするためにフィールドを編集 (「*」で難読化) します。

デフォルト値は redactです。

注: 数値が編集されている場合、編集された値は ****** として表され、タイプは stringに変更されます。
ストリング

# Specify separate remove and redact actions

- redact:
    version: 2.0.0
    title: remove price, redact author
    redactions:
      - action: remove
        path: xpath($, ''//price'')"
      - action: redact
        path: $.**.author"
    root: message.body