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

Andy Bierman <andy@yumaworks.com> Thu, 24 March 2022 17:48 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 ED25D3A11BA for <netmod@ietfa.amsl.com>; Thu, 24 Mar 2022 10:48:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.797
X-Spam-Level:
X-Spam-Status: No, score=-6.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, RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, T_SPF_PERMERROR=0.01, URIBL_BLOCKED=0.001] autolearn=ham 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 4VNd2aanJV-L for <netmod@ietfa.amsl.com>; Thu, 24 Mar 2022 10:48:38 -0700 (PDT)
Received: from mail-yw1-x1136.google.com (mail-yw1-x1136.google.com [IPv6:2607:f8b0:4864:20::1136]) (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 9D2FA3A07A4 for <netmod@ietf.org>; Thu, 24 Mar 2022 10:48:38 -0700 (PDT)
Received: by mail-yw1-x1136.google.com with SMTP id 00721157ae682-2e5e31c34bfso58952157b3.10 for <netmod@ietf.org>; Thu, 24 Mar 2022 10:48:38 -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=psP03OxLMpUulhFCMopl5ruhdVNrUhumCIl02XXu3YQ=; b=5nSWhQvbZ9HqsGXY39zM1S8nwDhaHXrJD7bZuG3sUgfCkmDwnNBIHfKoXijQcwzE0x F9WWk0Tj/i5ptM0kINrCpRErozpWSOzX1/OXhYx4iaPVpSCXAeGTUT12P5L1IrSIAQEI tdqkHwBK3m4DsIDHPPH5aSt0OCFz4gLLDvw2Dooxt+cKbwzLLMoRRFTLVfH5gytgYCJO X709oWg2RvDsCHRQRYiLKqYR7iHXwxQfpIRLZIdCxLo8p2UmnD7yZY95qAz4CvkKsD6S aWLWOMpUWf/pkJc9rVjB5YC1ismwAJ6DBz2GBBiJLncaMve6be90P2uyJuNF55RDo+zP MAFA==
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=psP03OxLMpUulhFCMopl5ruhdVNrUhumCIl02XXu3YQ=; b=37TrdxmmInScxfgp0fwfBUe7myXObMn2GgGd3A1JCKVyOV4ORDwsnDPOLqYPuqaj6R 5E7w4DrHMBXkEdtKqNBkMKsJXMU93HlCergBaTbTsl2NRrnFyPwNsjcs3iN+1eH3pL0F 3KZvy8yQb2aCT1dr9pjxbzohlh6U0X9+O/RfK/vHHkiMe83eNTqzTH3m0U5z/2RVIWMM EAeZQWAb98AYMEf8e85VzFuff4fHCotk3jdMctVqGWtF/1hXlPVHCEyZfri3oYmXyDyS Amx/BTl28tvB2Ctgp8RdmY591QFDuezkUspvSk3Z4oG+rzHQemNAIWf1HA3O+p4Vd2y3 yYjQ==
X-Gm-Message-State: AOAM530tAJ+KAYHnOioGH4jCkonFId/RDJLBSBhfURHeflyMntBA+sPi 60L2yB+KiSP4N53CZq8KzTrGaTwA5XubCarOH3NEkQ==
X-Google-Smtp-Source: ABdhPJycWZ6bLdbsOScQ4Tvzw7aVvGpfgM0JLi/UirQvu0x9yx9TcN6JtoPbfTcGOsZ56VXCHVm6f0yGoEYy3UyWu/U=
X-Received: by 2002:a81:5dd6:0:b0:2d6:3041:12e0 with SMTP id r205-20020a815dd6000000b002d6304112e0mr6150998ywb.331.1648144117129; Thu, 24 Mar 2022 10:48:37 -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> <VI1PR0701MB23511241EC49157C4910BA0BF0199@VI1PR0701MB2351.eurprd07.prod.outlook.com>
In-Reply-To: <VI1PR0701MB23511241EC49157C4910BA0BF0199@VI1PR0701MB2351.eurprd07.prod.outlook.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Thu, 24 Mar 2022 10:48:26 -0700
Message-ID: <CABCOCHQ4o0ig97jhF52W171a=885CJ6Uc80JiSS_8OO0+cYcBw@mail.gmail.com>
To: Balázs Lengyel <balazs.lengyel@ericsson.com>
Cc: "maqiufang (A)" <maqiufang1=40huawei.com@dmarc.ietf.org>, Kent Watsen <kent+ietf@watsen.net>, NETMOD Group <netmod@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000a3fb5105dafa7434"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/wOQIU37iSz23royeUlWecF1mpZw>
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:48:44 -0000

On Thu, Mar 24, 2022 at 10:14 AM Balázs Lengyel <balazs.lengyel@ericsson.com>
wrote:

> As mentioned earlier immutable is not enough for predefined NACM rules
>
> because the client may always
>
> insert a rule(-list) before the immutable rule(s) that will make the
> immutable
>
> rules ineffective. The problem is that the rule(-sets) are a user ordered
> list
>
> where the order matters. It is not enough to protect the individual
> rule(sets)
>
> the order would also need protection.
>


The NMDA solution would be to simply list the effective rule-lists in
<operational>.
The server rule-list will always be first in <operational> and not even
exist in <intended>.

I think a standard solution has a higher bar than our proprietary
extensions.
The interactions with NACM need to be properly handled.

IMO a proper solution would be an update to NACM itself.
The reason nacm:default-deny-write and nacm:default-deny-all work,
even though they are optional extensions, is because they are mandatory
extensions
if NACM is supported.

A nacm:static-data extension would be similar to the other 2 extensions.
They are short-hand automatic NACM rules.
NACM itself explains how they are handled so there is no conflict with
user-provided rule-lists.




> Balazs
>

Andy


>
>
> *From:* maqiufang (A) <maqiufang1=40huawei.com@dmarc.ietf.org>
> *Sent:* Thursday, 24 March, 2022 15:23
> *To:* Andy Bierman <andy@yumaworks.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
>
>
>
> 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?
>
>
>
> Best Regards,
>
> Qiufang
>
>
>
> *From:* netmod [mailto:netmod-bounces@ietf.org <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
>
>
>
>