Re: [netmod] A review of draft-ietf-netmod-node-tags

Adrian Farrel <adrian@olddog.co.uk> Tue, 18 January 2022 17:12 UTC

Return-Path: <adrian@olddog.co.uk>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A2ED83A0EBA; Tue, 18 Jan 2022 09:12:53 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.898
X-Spam-Level:
X-Spam-Status: No, score=-1.898 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_NONE=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id flZmtHAls-Wh; Tue, 18 Jan 2022 09:12:51 -0800 (PST)
Received: from mta5.iomartmail.com (mta5.iomartmail.com [62.128.193.155]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C97153A0EB3; Tue, 18 Jan 2022 09:12:49 -0800 (PST)
Received: from vs3.iomartmail.com (vs3.iomartmail.com [10.12.10.124]) by mta5.iomartmail.com (8.14.4/8.14.4) with ESMTP id 20IHCfxV021986; Tue, 18 Jan 2022 17:12:41 GMT
Received: from vs3.iomartmail.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 430114604E; Tue, 18 Jan 2022 17:12:41 +0000 (GMT)
Received: from vs3.iomartmail.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 36ACD4604A; Tue, 18 Jan 2022 17:12:41 +0000 (GMT)
Received: from asmtp1.iomartmail.com (unknown [10.12.10.248]) by vs3.iomartmail.com (Postfix) with ESMTPS; Tue, 18 Jan 2022 17:12:41 +0000 (GMT)
Received: from LAPTOPK7AS653V ([185.69.145.142]) (authenticated bits=0) by asmtp1.iomartmail.com (8.14.4/8.14.4) with ESMTP id 20IHCdeL007890 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Tue, 18 Jan 2022 17:12:40 GMT
Reply-To: adrian@olddog.co.uk
From: Adrian Farrel <adrian@olddog.co.uk>
To: 'Qin Wu' <bill.wu@huawei.com>, draft-ietf-netmod-node-tags@ietf.org
Cc: netmod@ietf.org
References: <264b58a0a6b44a538efa719ae3733e0a@huawei.com>
In-Reply-To: <264b58a0a6b44a538efa719ae3733e0a@huawei.com>
Date: Tue, 18 Jan 2022 17:12:38 -0000
Organization: Old Dog Consulting
Message-ID: <08ff01d80c8e$996d5c00$cc481400$@olddog.co.uk>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQFIzLyTSdNsJyj+h9oPw3UjX2SpU62Hex8Q
Content-Language: en-gb
X-Originating-IP: 185.69.145.142
X-Thinkmail-Auth: adrian@olddog.co.uk
X-TM-AS-GCONF: 00
X-TM-AS-Product-Ver: IMSVA-9.1.0.2090-8.6.0.1018-26662.001
X-TM-AS-Result: No--8.307-10.0-31-10
X-imss-scan-details: No--8.307-10.0-31-10
X-TMASE-Version: IMSVA-9.1.0.2090-8.6.1018-26662.001
X-TMASE-Result: 10--8.306800-10.000000
X-TMASE-MatchedRID: IeZYkn8zfFqWfDtBOz4q23FPUrVDm6jtkYC3rjkUXRLJZ+JM5CpHLwj8 UxwkHuUprdokn0WqAQduAjj4f+4n7Z9vFrcDXJOncTwOmq5GKdCOQOsE4nDCdNctGlxeXl/oKwf B7hX80rB/XSpwlE73NmnVaU8TY9DTp3ZzV11tDxJFM72aEhcbjfNkoMDX+kiusR73pvMuk6/NyK ie5lK2W6u7wh9A0CZnJu6v9wN0Cth8pgecdPLWZeGECTbIgjb5vMRNh9hLjFnjMdiTHFh6iLWOD dZ1PDmEGLSSpvoNQGLXAHaQJpnqMwI7Gpw9G1GaA9lly13c/gEPIY8i9XFmcEYza41dGqxSGFdU BSjRvjVxQEXhOGEerT5RrJh6dRuER0cAoC1UfG0sisyWO3dp2+EpCHUsKYYGRjHvrQ40Nxb0SP6 aaCYYIeoxKXKdqFC+M05HN+qVepgu2707SrUFQpCYtcHXhxbaAp+UH372RZUREWgPwB+LAVCN6+ 8V4rq9ipu3Dgwr8W7nQNZEDCSthBYoHJXE1cfP51R1wVM1b2RC61vu00HIv4u1Cw16UFQX1a9Gw 6X1fIhD7ydxTs38vX9zra8MQqOLNFHH7wqq3u+sxwwrc2bx2UzzNX6FuGYDA+je4ylW3ch576my 5IxjuhfWglSaoT03Dii45QCc2NPu8PnZh8NGsoboZ15KqReTChdI4sLlrjhgDDNFig+GrItZZtD Tqgqm5eDBzq/GzcQQNFchCV9e3zN1VvnSogA6sFkCLeeufNt4vJw38bkAE9DxDdXabYEQjR4V6n kvUCoXeTN3xAWeQpwY1Ri8V/JbMeIPuyyqyWyeAiCmPx4NwLTrdaH1ZWqCpvI8UZOf47hTZDOrz lZ+cHQdJ7XfU86eOwBXM346/+ytxt625a0HisoJ9Pb9kR8VTV/+mJ9sVd5FzovdRTGQHXuIykvR sDaK
X-TMASE-SNAP-Result: 1.821001.0001-0-1-22:0,33:0,34:0-0
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/KFD7adf3xQe65aJzgQM8RqGg0-I>
Subject: Re: [netmod] A review of draft-ietf-netmod-node-tags
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: NETMOD WG list <netmod.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netmod>, <mailto:netmod-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netmod/>
List-Post: <mailto:netmod@ietf.org>
List-Help: <mailto:netmod-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netmod>, <mailto:netmod-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 18 Jan 2022 17:12:54 -0000

Thanks Qin,

Good convergence. Edited down to just the remaining points.

Best,
Adrian

>There is some contradiction between and within sections 4.3 and 4.4
>
>1. If a user tag is defined as any tag that has the prefix "user:"
>   how can you then say that users are not required to use the "user:"
>   prefix? That would mean that a user tag is any tag that does or
>   does not have the prefix "user:"
[Qin Wu] Correct.
>2. If any tag not starting with "ietf:", "vendor:", or "user:" is 
>   reserved, how can a user create a tag that doesn't start with
>   "user:"?
[Qin Wu] :I understand your concern, but my understanding on reserved tag,
upon such reserved tag is allocated, it should start with "xxx:",
         Therefore such reserved tag can not be seen as user tag. It seems
unlikely there is contraction if my understanding is correct.
         Correct me if I am wrong.

[AF] Ah, I missed the point!

A user tag is:
- any tag with the prefix "user" 
or
- any tag that has no prefix at all

Thus, and for the avoidance of confusion, the colon (":") when it appears
for the first time, is always assumed to be the separator between a prefix
and the rest of the tag. And so, when a user tag does not have a prefix, it
MUST NOT contain a colon. 

---

>Section 9.1 reasonably uses the "Specification Required" assignment policy.
But, according to 8126, that policy requires the appointment of a designated
expert. According to section 5.3 of 8126...

>   When a designated expert is used, the documentation should give clear
>   guidance to the designated expert, laying out criteria for performing
>   an evaluation and reasons for rejecting a request.

>So you need to add a section to cover this. It can be simple if the rule is
"read the specification, check it is permanent and readily available, and
watch for inappropriate use of language." Or it might be more complex if you
want the DE to check more stuff.
[Qin Wu] Thanks for the reference, I re-read section 5.3 of RFC8126, it also
said:
"
   In the case where
   there are no specific documented criteria, the presumption should be
   that a code point should be granted unless there is a compelling
   reason to the contrary (and see also Section 5.4).
"
My understanding is documented criteria is not mandatory, if you have code
point value (i.e., prefix value in section 9.1)that needs to be allocated
based on IANA request.
I think section 9.1 may fall into this case. 

[AF] I agree with your reading of 8126, but also that it is hard for someone
in 5 years' time to know whether you left out guidance for the DE by mistake
or intended that this "no specific criteria" clause should apply.

[AF] Therefore, if you have no specific criteria, I think it is good to say
so as...

    There is no specific guidance for the Designated Expert and there is a 
    presumption that a code point should be granted unless there is a
    compelling reason to the contrary.

[Qin] For section 9.2, I agree to add one rule, i.e., "IANA assigned tags
must conform to Net-Unicode as defined in [RFC5198], and they shall not need
normalization". I believe this is the guidance given to the designated
expert.

[AF] That's great. Can you make that...
"The Designated Expert is expected to verify that IANA assigned tags conform
to ...."

Hope this address your comment.

>Section 5 has
>   As the main consumer of
>   data object tags are users, users may also remove any tag from a live
>   server, no matter how the tag became associated with a data object
>   within a YANG module.
>
>Suppose there are two users accessing the same YANG data objects on a live
server. This doesn't seem unreasonable in the case of different users or
monitoring tools reading data about the network or devices.
>
>Doesn't this text lead to "warring tag removal" where one user adds a tag,
and another user removes it?
>
>Maybe this is limited to user tags so that each user may have their own
tags. But, in this case, it needs to be clearer what a user tag contains and
how it is used. 
>
>It would still be pretty annoying is Benoit added user:benoit to some data
objects, and I went and removed them.

[Qin Wu] Yes, I believe it is limited to user tags, since IETF tags are
design time tags, so does implementation tags. It is unlikely to face the
situation "warring tag removal".
But for user tag, your are right, user has its own tags and each user may
have different privilege therefore. User with low privilege can not remove
the tag owned by high privilege user.
But I am not sure this is the scope of this document, It seems to me
implementation specific and should not in the scope of this document, agree?
(See also section 5.3)

[AF] Agree about implementation. But maybe, "An implementation MAY include
mechanisms to stop users' removing each other's tags or to apply privilege
levels to different users."

>Should section 10 talk about the risks associated with an attacker adding
or removing tags so that a requester gets the wrong data?

[Qin Wu] User tag is not registered, how user tag is defined and removed is
not scope of this document, in my opinion. Take a look at RFC8819, RFC8819
also doesn't flag this as a issue, do you think we should do this?

[AF] Hmmm. Maybe 8819 missed this?
I agree this refers to the previous point.
Actually: 
1. Just go back and check that it is clear that only user tags can be
added/removed dynamically
2. Add a note to section 10 to say
   "Note that appropriate privilege and security levels need to be applied
to the addition and removal of user tags to ensure that a user receives the
correct data."

>1.
>
>   or some place where offline document are kept
>
>I don't think a "place" advertises. Maybe "an application or server where
offline documents are kept"
[Qin Wu]:I think somewhere can be a website, Maybe or websites where offline
documents are kept, make sense?

[AF] Yes