Re: [netmod] Alternative approach to draft-ma-netmod-immutable-flag-00

Balázs Lengyel <balazs.lengyel@ericsson.com> Thu, 24 March 2022 17:14 UTC

Return-Path: <balazs.lengyel@ericsson.com>
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 15B503A10B2 for <netmod@ietfa.amsl.com>; Thu, 24 Mar 2022 10:14:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.01
X-Spam-Level:
X-Spam-Status: No, score=-7.01 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=ericsson.com
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 L_HE2rUpP6oX for <netmod@ietfa.amsl.com>; Thu, 24 Mar 2022 10:14:46 -0700 (PDT)
Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2062b.outbound.protection.outlook.com [IPv6:2a01:111:f400:7d00::62b]) (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 CF9C13A101D for <netmod@ietf.org>; Thu, 24 Mar 2022 10:14:45 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cZBa3/Skp1SKeDWFaH8YqfoR45hSpBrIe3u0O1gyOCfi2Wo3K9lCwYrkKzT563aD+x5y+lMehYRtKl/nZ+aDFGSUK+WDOzElPPthgVdZ8ZfbCmJVubnjtr78qv/DengkgI3ixH/91Q9khSWiqr9R7Nh4eoTOojIv9GjudEbHBiMP8FcPj8spNTulrq/TFkBvMshdLBXwQNKis5/IIAs2sbZoISB9XSY+sVXzXmv+dSFdqRzhdeJNpS30AVx6C5M0q32qqZ8cSsW60CKPf7RbJUACN4qluz1Rx0gDgTt9t9M9YkhLbk8ywVUD2BUug5RZzrgAbtnIVIgGUUWxaAyzCg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=fFCoFemlIt3FgJX4HGLKwvlCkRB8d/i2zdTL+rE7h6U=; b=e7Cqz4NquF5k2T5za8l8bfkTWpD2+flP7F39alxL0HjJ8SmmmkMCYFD2oimMKx1sisge4p/0aSnIZWCUgxuzpQiR5eOAtxo6t/kRkcHtIV4tV4mdksRUrJiD3EsAzsa4WH44d8IMbtywJ4ESLkzE44QaFi/2IOQ7Bua2Lns5B2tXb5fqWASt18rkp6xCHSPO4qHWMLMTVslRLllLsoMoQqU4477CBzRUGAIJYNG0ETDkC4Q1RCniVAe4B7Ak5mJz7y2akKd3J/1AechYj4ViF/U3gX1jKuTICvdMBPltEJ1rRN2Gq+qDDpBWTGqdXkjLUN91cTbLdCiauIy0MOZ8pw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ericsson.com; dmarc=pass action=none header.from=ericsson.com; dkim=pass header.d=ericsson.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fFCoFemlIt3FgJX4HGLKwvlCkRB8d/i2zdTL+rE7h6U=; b=NNtUvUWqujG4VtZW63N+k+G9U0Q/nIfpvZH+fsd5UHZqdbNmlIO02r3lcivvnqCpfm/SsjqNRwiMXMRIB7/wksDZK1uSEcmUMLAsve0SJc+kZ/EgiRI3AQoU6uKurl1yFJ5EseooIzmMU7A1G3tLXmD50xouCvYj3KodKRQUmUQ=
Received: from VI1PR0701MB2351.eurprd07.prod.outlook.com (2603:10a6:800:6b::18) by PR3PR07MB6604.eurprd07.prod.outlook.com (2603:10a6:102:64::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5102.11; Thu, 24 Mar 2022 17:14:41 +0000
Received: from VI1PR0701MB2351.eurprd07.prod.outlook.com ([fe80::c540:395c:7164:f9d2]) by VI1PR0701MB2351.eurprd07.prod.outlook.com ([fe80::c540:395c:7164:f9d2%6]) with mapi id 15.20.5123.008; Thu, 24 Mar 2022 17:14:41 +0000
From: Balázs Lengyel <balazs.lengyel@ericsson.com>
To: Andy Bierman <andy@yumaworks.com>, "maqiufang (A)" <maqiufang1@huawei.com>
CC: Kent Watsen <kent+ietf@watsen.net>, NETMOD Group <netmod@ietf.org>
Thread-Topic: [netmod] Alternative approach to draft-ma-netmod-immutable-flag-00
Thread-Index: AQHYPvIQIDcZg301ck2evcS37rlEr6zNduPAgAAGLYCAAAfisIAAFGKAgAD+BgCAAA4cAIAAAHXQ
Date: Thu, 24 Mar 2022 17:14:38 +0000
Message-ID: <VI1PR0701MB2351109C91AEA101A04A75A2F0199@VI1PR0701MB2351.eurprd07.prod.outlook.com>
References: <CABCOCHRqZgCfH0j5XnEt0aK0fwVCaxe_aSHCAZn3jb0QLrDuKw@mail.gmail.com> <VI1PR0701MB2351A430BA5F2EEFE96CE094F0189@VI1PR0701MB2351.eurprd07.prod.outlook.com> <CABCOCHSY6CN7Xf05RtTF0jm1S6gLd1umr5BtG3pkkeCBu47Jyw@mail.gmail.com> <VI1PR0701MB23518B3F1FB9EE3EE32C9FDAF0189@VI1PR0701MB2351.eurprd07.prod.outlook.com> <CABCOCHT5D3=cZR=f86FiCQ48=1Enqwi+-eyR3Y-xSE37_cyvzA@mail.gmail.com> <4fb3a9ab84744c42bc54084903f94ba5@huawei.com> <CABCOCHSnadVbAoanUnKtQ_Q7YJVNBwVOTpRS0fzg3Vn64TKw7Q@mail.gmail.com>
In-Reply-To: <CABCOCHSnadVbAoanUnKtQ_Q7YJVNBwVOTpRS0fzg3Vn64TKw7Q@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ericsson.com;
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: aa6e6b91-81e6-4f06-025d-08da0db9c89d
x-ms-traffictypediagnostic: PR3PR07MB6604:EE_
x-microsoft-antispam-prvs: <PR3PR07MB6604B4DAB9D9CDEE4F622619F0199@PR3PR07MB6604.eurprd07.prod.outlook.com>
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: q0RFAlhzZCTJ4L47CSFEH+LB5YlTjlQnPW2bO7R+E6QTrG4lvW7e80yXXiyuSaEOQxpIMLDMlw9r+e5VvUcDc7lBfoZxr5XH7LXyBj7sCCVxKD1NeTF6Rb583thEpgblOcGVFz+dNn2sAunM2RDyHGZAJhrEZRD/p3lPTjAquJpwEVZiHkQpKz4x0byNazH/MgWR9OPas24Az2YgJ49OLBkrpgyp0zlwyD9KT11XKYs2OTqY7QfZDicYw7ZlbfPnk9SlYAJEDYM4Le/mW7jz4Nn4O4gBSzfpVweCr36zoWT2HByfSaKxxYWrzcc8kWdZNwkud2jkGp0tkGWbqGS8FvP+vvbN6LzMZauq3g6/93PvNOGjJYvaKMFNjBslPon5Sot2RbkLpAsbmCr8ZAq0Zd8PhvaXIfV5YRsfkhjE6KYwwGy5+RFiDhbGLd4RQfsAJsuGbA45mzxPFwMyjep4XaQRG3grml3kBIv7w96rfnbpVggTMnFGh1MaM8UklU6Tg3ISxLbBMllfJG7jncNTI/M8ihZM5asq+oAhT5HwoKSId9aiPkvSNuZ9BJodjDKjNqas8KbCeJ+arTP40/yR2W0SsHHrB7367qc+f2Fg0Gi1iyH/957M7ep0nfzbcQJaE4PDSG11wa0n0nHH8b64Pi/pH9UtWHyyg+LssnqPsRQ0csKPPn40hFVSW7XG5TNoAxV9SIKQy0pvohX9Esk7vb/SlP20OSHyIbWCPOWwo1pC0hzvf/u6NB+Ggq97JJC9T7gqrxHY0GDDKXfr1BRGrBNoX6+jLuQULJacmNo4lakKP16PZmYaqz96B3oCynuFZAsyEir6ApxYSsvm7i2S9Q==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:VI1PR0701MB2351.eurprd07.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(4636009)(366004)(166002)(6666004)(82960400001)(6506007)(53546011)(122000001)(2906002)(7696005)(55016003)(26005)(38100700002)(186003)(9686003)(8676002)(66946007)(66476007)(66446008)(64756008)(85182001)(83380400001)(71200400001)(85202003)(110136005)(54906003)(33656002)(86362001)(76116006)(4326008)(66556008)(316002)(52536014)(8936002)(9326002)(5660300002)(38070700005)(966005)(66574015)(508600001); DIR:OUT; SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: /tjWEQjx4p83vTl1wd+4PRgQEG2sxVKp1lSCGdAo7/KI3X7pNV66MaK6TQOwbU+KhBRts7MbuqPNh0dXFKaHZmSLAvB92mJCLJWNmeciDQq9jCKG8tRVAj5UUDzIpWGNLhDy01ymPf6WGnSgIJVuUBxvpPEYdtFMtv3IYjgazIhb2bgTs9kBRC9zw8lma55NTycr/lV4b06DLvI3/5oRBsA9W/YbrDbFyT1UPhHNqXN1jmsYuhQZkdAsHm/iw91rA0WUxrw1PjF+JW7nPg7ddr5q5S1QoHZ6B0aVZkX7TbOIPzZ6JNrADH93/JRoaoQReHWy4Ju1KU2tGUEzZCwIJqSbnL10mBkii22KP6T+YttjQriWzCbk7mG54Y+kg5oR2M98gpQwk4dzyR9wd2fD6J8Tg2hM08ThCIsBfztYTdO7+Y0llH5T48QPqQ057Bp4um10/IZJVZ7EEhfCWpe4iqWOl/MLCfSWFI+euf9yRScCVLu6QSHL12QiiafZz+eWC6LckxCxhgS72b/0QBsT9iRquEJKFJ2qClPwfC0P3DkCEi1Acpq/uNmJENNOFdNNIeB8zxEstj7Ksxeh2JgyvhdhoUGU88usLqUpA0DVP087JUBeaobzL/IkCF7lBFl0UxPygdsP9jKpDyUuz3IaGXmN3gT32uDpmXWIuCGt95vkSdN2BKQFgTc01G8AXCi7kzzKwCXCy4tAYiAvIRcKex40uESGsTP1lQOBucfW5oKuW90J12OPZayCBa50s8YtVVDGGgC1qwejnwPWwvr1lZE9WkQo2SFSKZA40a+M0u8LkMPop1OyGUrKcejS4w2WpIsXpSNVFYpiys6D+Rz+iq/r8JHZpjW/I26PIPjS8m66OlhrkipNkBiTKQuDuTznflxDAEpqSy/WwRcEh1FERHvu8dWFvmQ5bTojluoKQ4kOCTTpvNo4QqEVyNEOgy6A3+ha52JdzetKsAQAPmyMUEJYLbLDj7HBbiZndilxJPn+8vtXCqpV9TDCBVh+UZRcE6XTZyVJQVTfd/kn+hFEnQC6wJKmPBGrAmzMBZBE4nkuPd90uux6NVptdokfFb81nGucy3zIxW2xfnGAAGauL8MHQKtAhzjCuqHoZj7Y2Oee6Kzesp6+x4K+REhTY9NmtR8AC0/3P11VANdkZGtuUPQfkDa5yMiEO2kbTS5xwUCkz48ZrAAoGiOXTm5/63d7JdA9k1MGOFyS59X2EtMbPQV6eX4jK0utFYnLtse/TLfX/xCO7YGTBOt8FL29lRKGOvz6YDvdtkDe2eCpX0Prso4VjvesPzKj3B0UVlhiLFJkfdi+Pdz8Jlob1vVqOgWPoQUWo6CXPhRfsq2riUiCZS0f0pixhCI2HwonG9z5F8eUJoKr5RUTS2lhaC5pTiyZ5bHvOrCS9jyMB2A/s2+VWUM8EFrsWjz5neaBd4BhOF6wy5FzU/phfPnMfH7CY2LUkb790hOTTuYjQJSWehvLNA==
Content-Type: multipart/alternative; boundary="_000_VI1PR0701MB2351109C91AEA101A04A75A2F0199VI1PR0701MB2351_"
MIME-Version: 1.0
X-OriginatorOrg: ericsson.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: VI1PR0701MB2351.eurprd07.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: aa6e6b91-81e6-4f06-025d-08da0db9c89d
X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Mar 2022 17:14:38.8285 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 92e84ceb-fbfd-47ab-be52-080c6b87953f
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: pkD63mnQ++Aw4G1GpZNj66sI295vf732Ld6IfFFmdKUZQL3AMzSusz0Jrj7S3nzip98omcN+AOKZJj5bsJjPw9wk7117MHsWVAwh5XyuyLM=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR07MB6604
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/TflI1RC8ZXtRo6kqJPDc8SB_tkw>
Subject: Re: [netmod] Alternative approach to draft-ma-netmod-immutable-flag-00
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: Thu, 24 Mar 2022 17:14:56 -0000

Hello,
So it seems we agree, that a schema level immutable property based on yang extensions is needed. (I am not commenting on the other parts just now.)
Regards Balazs

From: Andy Bierman <andy@yumaworks.com>
Sent: Thursday, 24 March, 2022 16:13
To: maqiufang (A) <maqiufang1@huawei.com>
Cc: Balázs Lengyel <balazs.lengyel@ericsson.com>; Kent Watsen <kent+ietf@watsen.net>; NETMOD Group <netmod@ietf.org>
Subject: Re: [netmod] Alternative approach to draft-ma-netmod-immutable-flag-00



On Thu, Mar 24, 2022 at 7:22 AM maqiufang (A) <maqiufang1@huawei.com<mailto:maqiufang1@huawei.com>> wrote:
Hi, Andy, Balazs,

I can see your points in some of the use cases.
But as Kent mentioned, the motivation of this work is that we have some system-defined instance which are read-only to clients.
And there may be some cases where a list/leaf-list data node may exist in multiple instances with different control rules.

To be specific, An instance-level annotation could be useful in following use cases:

a)       The system generates some QoS templates when QoS functionality is enabled, and some of the generated templates are read-only, while others are free to be updated by the clients.

b)       The system predefines some list/leaf-list instances which are read-only for clients(the clients cannot update or delete them, like predefined NACM rules), but the clients is free to add/update/delete their own defined instances.

While YANG-extension can be useful for a schema-level immutability.
I am thinking that, maybe we need both to complete the solution?

IMO the instance-level is not interesting and should not be standardized.
The only common usage seems to be a simple boolean flag.
It looks like access control to me because it is access control.
If an operator created NACM rules allowing client access to a static node,
then the NACM config would be ignored and the operator would be confused.
This problem exists no matter what external (AND PURELY OPTIONAL) statement is used.



Best Regards,
Qiufang

Andy


From: netmod [mailto:netmod-bounces@ietf.org<mailto:netmod-bounces@ietf.org>] On Behalf Of Andy Bierman
Sent: Thursday, March 24, 2022 7:14 AM
To: Balázs Lengyel <balazs.lengyel@ericsson.com<mailto:balazs.lengyel@ericsson.com>>
Cc: NetMod WG <netmod@ietf.org<mailto:netmod@ietf.org>>
Subject: Re: [netmod] Alternative approach to draft-ma-netmod-immutable-flag-00



On Wed, Mar 23, 2022 at 3:06 PM Balázs Lengyel <balazs.lengyel@ericsson.com<mailto:balazs.lengyel@ericsson.com>> wrote:


From: Andy Bierman <andy@yumaworks.com<mailto:andy@yumaworks.com>>
Sent: Wednesday, 23 March, 2022 22:32
To: Balázs Lengyel <balazs.lengyel@ericsson.com<mailto:balazs.lengyel@ericsson.com>>
Cc: NetMod WG <netmod@ietf.org<mailto:netmod@ietf.org>>
Subject: Re: [netmod] Alternative approach to draft-ma-netmod-immutable-flag-00



On Wed, Mar 23, 2022 at 2:16 PM Balázs Lengyel <balazs.lengyel@ericsson.com<mailto:balazs.lengyel@ericsson.com>> wrote:
Hello Andy,
I also propose an extension. (see my mail Review of draft-ma-netmod-immutable-flag-00)
In Ericsson we saw no need for exceptions, but do see the need for applying it to descendant nodes. Typically we need to protect a full subtree.

Why do you need the exceptions? Could you provide some use-case examples ?

I think create/delete-only and modify-only access modes are used the most, after no-access.
BALAZS: How is a modify-only data-node different from a mandatory data-node? It must be there but can be changed. It get’s an initial value somehow.

Mandatory=true requires the system to provide a value.
Modify-only allows the system to decide when an instance is created.


BALAZS: Any examples when would a create/delete only data node be used?

Sometimes developers do not want to write complex instrumentation that supports
modification of resources.  Instead a user has to delete the old entry and create a new
one with (potentially) different parameters.



Applying to descendant nodes may be better, or may require more work to
undo the extension used in an ancestor node. This impacts the extension usage within a grouping.

BALAZS2: I did not include it in my mail, but we actually have one more rule:
“Top level statements in augment or groupings do NOT inherit
       the static-data value from containing nodes, they default to
       static-data false.”


This seems complicated to users and developers to track how the final schema tree was derived.

The 'static-data' extension seems fine to me.
We have to support 'user-write' anyways, so it is better if it is not too close to this extension.
Things that seem the same, but are NOT the same cause the most support tickets.


Regards Balazs

Andy

Andy




From: netmod <netmod-bounces@ietf.org<mailto:netmod-bounces@ietf.org>> On Behalf Of Andy Bierman
Sent: Wednesday, 23 March, 2022 21:10
To: NetMod WG <netmod@ietf.org<mailto:netmod@ietf.org>>
Subject: [netmod] Alternative approach to draft-ma-netmod-immutable-flag-00

Hi,

IMO the problem should be viewed as a refinement to the
access control policy of the device.  A standard mechanism
such as a YANG extension would be better than a growing
mix of proprietary solutions.

We have such a YANG extension called "user-write" that is widely deployed.
A simple boolean is not fine enough granularity, so a bits type is
needed instead to allow control of create, update, and delete access operations.


https://www.yumaworks.com/pub/latest/yangauto/yumapro-yangauto-guide.html#ncx-user-write<https://protect2.fireeye.com/v1/url?k=31323334-501d5122-313273af-454445555731-876c03f0bc610d95&q=1&e=c875257e-41f5-45d6-a9e9-871e5ebb4243&u=https%3A%2F%2Fwww.yumaworks.com%2Fpub%2Flatest%2Fyangauto%2Fyumapro-yangauto-guide.html%23ncx-user-write>


Andy