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

Andy Bierman <andy@yumaworks.com> Thu, 24 March 2022 15:13 UTC

Return-Path: <andy@yumaworks.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 25B153A0FB0 for <netmod@ietfa.amsl.com>; Thu, 24 Mar 2022 08:13:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.797
X-Spam-Level:
X-Spam-Status: No, score=-1.797 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=0.1, SPF_HELO_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, T_SPF_PERMERROR=0.01, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20210112.gappssmtp.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 9JXpzVW033KB for <netmod@ietfa.amsl.com>; Thu, 24 Mar 2022 08:13:25 -0700 (PDT)
Received: from mail-yw1-x112e.google.com (mail-yw1-x112e.google.com [IPv6:2607:f8b0:4864:20::112e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 624223A0FD7 for <netmod@ietf.org>; Thu, 24 Mar 2022 08:13:25 -0700 (PDT)
Received: by mail-yw1-x112e.google.com with SMTP id 00721157ae682-2db2add4516so54428737b3.1 for <netmod@ietf.org>; Thu, 24 Mar 2022 08:13:25 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20210112.gappssmtp.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=nud3jHnJ0vbOuXUqWWJx6mKKk9nj7u+X+MUNaTak2ao=; b=fiPL98lcYkP95qGlsvRN+BQcYgMBAVQuoCalu2+q11Rjmm51rOTSg8oIu2zREOMumh rg8mTJ7ER9xqArNyc1Ea0iAUlrhM5LEASckZ6g+dWKhaQKyR3i6mQ4uVK89PaimvkojY IjJw61XGecBv+Vpxz7fOQCLwMsrCE2hah+CiZ0jGoPWneF9Y8qfcWs2Vv1FFZyLRsYB8 5VpQ3O2cT4f/VXt1PEQNlg9IZ8GdUDzTtHMVRT9PwSd9+8C3GASN64b2akTqbJRhRJyx z+Czb7SyFt6iVh/M5aO1lBn3jAMUfhQOEskVViAaHPJ8OLGSgdP+VftTsyfwJEVR2Dmv 2QdQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=nud3jHnJ0vbOuXUqWWJx6mKKk9nj7u+X+MUNaTak2ao=; b=7wwmljlOp8mJ2SEMACwaL2iPif6D3hzKNl/4ekWgfU8Jao1BCZryPtBDnu9gecPSf/ f3EY6BMrKOAOrkw5YE+9ztBewIiJER4b+VKORN2MGBX8WwE+GU8WAXtFynegt8CC/Knp FqOflKF5ZVyJPAjtZhunDIVEoGGWuF6FKDRUnbHmussvOrTbeW0fiRLayjLpeV/YoICQ i1NDkQRRN7hDIc2k35fkOHhrH4zKi24Cjeiu7vP1SLgiLTfPDf705xn7Ztkj2yddFxmY Lt3KRRSDwp9nk++vq7e8jdo30Pc4fqTbi0D4V9/VMB3II52U8Mh0cULlPMzbBvcb1s9w 05WA==
X-Gm-Message-State: AOAM531KZxOYdpBadRZE49iruFymD4Pea7BJHN2eflanba+IWoC1Qq/T Jk51Rp3r22MJJkAlCDX1gBsfsNjgriteUJc/L8N2oA==
X-Google-Smtp-Source: ABdhPJwNf8zbHTXNA4DIKqTikq0IGXHGuqHJPWwXsBi1JxAzV6thSAgDS4n85Z6sCrO5b7gw06ibl0d430fNRflwwAE=
X-Received: by 2002:a0d:e80e:0:b0:2e5:ba68:80bc with SMTP id r14-20020a0de80e000000b002e5ba6880bcmr5343092ywe.350.1648134803972; Thu, 24 Mar 2022 08:13:23 -0700 (PDT)
MIME-Version: 1.0
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>
In-Reply-To: <4fb3a9ab84744c42bc54084903f94ba5@huawei.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Thu, 24 Mar 2022 08:13:12 -0700
Message-ID: <CABCOCHSnadVbAoanUnKtQ_Q7YJVNBwVOTpRS0fzg3Vn64TKw7Q@mail.gmail.com>
To: "maqiufang (A)" <maqiufang1@huawei.com>
Cc: Balázs Lengyel <balazs.lengyel=40ericsson.com@dmarc.ietf.org>, Kent Watsen <kent+ietf@watsen.net>, NETMOD Group <netmod@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000088784005daf84941"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/2r_p1KbTk-970HQO_uM5esnVnUo>
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 15:13:30 -0000

On Thu, Mar 24, 2022 at 7:22 AM maqiufang (A) <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] *On Behalf Of *Andy
> Bierman
> *Sent:* Thursday, March 24, 2022 7:14 AM
> *To:* Balázs Lengyel <balazs.lengyel@ericsson.com>
> *Cc:* NetMod WG <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> wrote:
>
>
>
>
>
> *From:* Andy Bierman <andy@yumaworks.com>
> *Sent:* Wednesday, 23 March, 2022 22:32
> *To:* Balázs Lengyel <balazs.lengyel@ericsson.com>
> *Cc:* NetMod WG <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> 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> *On Behalf Of *Andy Bierman
> *Sent:* Wednesday, 23 March, 2022 21:10
> *To:* NetMod WG <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
>
>
>
>