Re: [regext] Request WGLC for draft-ietf-regext-rdap-redacted

Mario Loffredo <mario.loffredo@iit.cnr.it> Tue, 15 November 2022 14:05 UTC

Return-Path: <mario.loffredo@iit.cnr.it>
X-Original-To: regext@ietfa.amsl.com
Delivered-To: regext@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2636EC14F6E7 for <regext@ietfa.amsl.com>; Tue, 15 Nov 2022 06:05:46 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.896
X-Spam-Level:
X-Spam-Status: No, score=-6.896 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id rGD4sHPce9fA for <regext@ietfa.amsl.com>; Tue, 15 Nov 2022 06:05:42 -0800 (PST)
Received: from smtp.iit.cnr.it (mx4.iit.cnr.it [146.48.58.11]) by ietfa.amsl.com (Postfix) with ESMTP id 1A451C14F723 for <regext@ietf.org>; Tue, 15 Nov 2022 06:05:38 -0800 (PST)
Received: from localhost (localhost [127.0.0.1]) by smtp.iit.cnr.it (Postfix) with ESMTP id D0285B805E3; Tue, 15 Nov 2022 15:05:36 +0100 (CET)
X-Virus-Scanned: Debian amavisd-new at mx4.iit.cnr.it
Received: from smtp.iit.cnr.it ([127.0.0.1]) by localhost (mx4.iit.cnr.it [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id a6AAarDNILHz; Tue, 15 Nov 2022 15:05:33 +0100 (CET)
Received: from [192.168.16.66] (sa.nic.it [192.12.193.247]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by smtp.iit.cnr.it (Postfix) with ESMTPSA id 840BEB80496; Tue, 15 Nov 2022 15:05:33 +0100 (CET)
Content-Type: multipart/alternative; boundary="------------wWWK9jzDpC3tRq5h1JaH7iWG"
Message-ID: <9cc1b478-8fd8-1604-f737-c9981cbf8973@iit.cnr.it>
Date: Tue, 15 Nov 2022 15:02:34 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2
To: "Gould, James" <jgould=40verisign.com@dmarc.ietf.org>, "regext@ietf.org" <regext@ietf.org>
References: <B02A783B-6868-417C-8CB0-32BEEBB0FA83@verisign.com>
From: Mario Loffredo <mario.loffredo@iit.cnr.it>
In-Reply-To: <B02A783B-6868-417C-8CB0-32BEEBB0FA83@verisign.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/regext/Lie1NyXt_GPxi6upxES94SILmjc>
Subject: Re: [regext] Request WGLC for draft-ietf-regext-rdap-redacted
X-BeenThere: regext@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Registration Protocols Extensions <regext.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/regext>, <mailto:regext-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/regext/>
List-Post: <mailto:regext@ietf.org>
List-Help: <mailto:regext-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/regext>, <mailto:regext-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 15 Nov 2022 14:05:46 -0000

Hi James,

some comments from my side:

1) With reference to the following sentence in section 3.2:

such as "" for a jCard [RFC7095] Text ("text") property or null for non-Text ("text") properties.

it seems to me that RFC7095 doesn't include a clear statement in that sense.

Some VCard types (i.e. text, uri, language-tag, utc-offset, and all date 
type variants) are mapped to JSON strings, other VCard types are mapped 
to other JSON primitive types (i.e number, boolean).

Given that, apart from "fn"  that is a required "text" property, a JSON 
string can be either null or empty.

For sure, the use of the empty string makes more sense for "text" 
values, but null value is not clearly prohibited for the other VCard 
properties mapped to JSON strings.


2) WIth regard to redaction by replacement method, should the example in 
Fig.7 be updated as in the following:

OLD

    "redacted": [
      {
        "name": {
          "type": "Registrant Email"
        },
        "path":"$.entities[?(@.roles[0]=='registrant')]. 
vcardArray[1][?(@[0]=='email')][3]",
        "replacementPath":"$.entities[?(@.roles[0]=='registrant')]. 
vcardArray[1][?(@[0]=='contact-uri')][3]",
        "pathLang": "jsonpath",
        "method": "replacementValue",
      }
    ]

NEW

    "redacted": [
      {
        "name": {
          "type": "Registrant Email"
        },
        "path":"$.entities[?(@.roles[0]=='registrant')]. vcardArray[1][?(@[0]=='email')]",
        "replacementPath":"$.entities[?(@.roles[0]=='registrant')]. 
vcardArray[1][?(@[0]=='contact-uri')]",
        "pathLang": "jsonpath",
        "method": "replacementValue",
      }
    ]

Based on the example in Fig.6, the "email" property instead of the 
"email" value is replaced.


3) Would rephrase the following sentence in section 4.2

OLD

The "redacted" member contains an array of redacted
    objects with the following child members

NEW

The "redacted" member contains an array of
    objects with the following child members

The objects in the "redacted" array are not redacted but rather the 
response fields represented by those objects.


4) Wonder if section 6.2 should include an entry for pathLang.


5) A last feedback about JSONPath Considerations:

5.a) Is it allowed to use wildcard in JSONPath? Think it could be useful 
especially when the same redaction rule is applied to each result of a 
search response.

For example, if a registry policy consists in redacting all the domain 
handles, the "redacted" content could simply be:

            "redacted": [
              {
                "name": {
                  "type": "Registry Domain ID"
                },
                "path": "$.domainSearchResults[*].handle",
                "pathLang": "jsonpath",
                "method": "removal",
                "reason": {
                  "type": "Server policy"
                }
              }
            ]

5.b) I consider this a corner case so feel free to ignore it  ;-)

The VCard label property (as well as the JSContact fullAddress property) 
is usually derived from the postal address information.

When the postal address is partially redacted, what should be the label 
value and the related redaction method?

If you think it's worth managing this case, I would suggest a 
conservative solution:  the label property should be omitted and the 
redaction method should be "removal".


Hope it could be helpful.

Best,

Mario



Il 10/11/2022 19:38, Gould, James ha scritto:
>
> This is a formal request to start the WGLC for 
> draft-ietf-regext-rdap-redacted.  There is a normative reference to 
> draft-ietf-jsonpath-base, which has a JSONPath working group November 
> milestone. draft-ietf-jsonpath-base looks stable and can progress in 
> parallel with draft-ietf-regext-rdap-redacted.
>
> Thanks,
>
> -- 
>
> JG
>
>
>
>
> *James Gould
> *Fellow Engineer
> jgould@Verisign.com 
> <applewebdata://13890C55-AAE8-4BF3-A6CE-B4BA42740803/jgould@Verisign.com>
>
> 703-948-3271
> 12061 Bluemont Way
> Reston, VA 20190
>
> Verisign.com <http://verisigninc.com/>
>
>
> _______________________________________________
> regext mailing list
> regext@ietf.org
> https://www.ietf.org/mailman/listinfo/regext

-- 
Dott. Mario Loffredo
Technological Unit “Digital Innovation”
Institute of Informatics and Telematics (IIT)
National Research Council (CNR)
via G. Moruzzi 1, I-56124 PISA, Italy
Phone: +39.0503153497
Web:http://www.iit.cnr.it/mario.loffredo