Re: [Netconf] LC on subscribed-notifications-10

Andy Bierman <andy@yumaworks.com> Wed, 14 March 2018 16:52 UTC

Return-Path: <andy@yumaworks.com>
X-Original-To: netconf@ietfa.amsl.com
Delivered-To: netconf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8CBE812D77B for <netconf@ietfa.amsl.com>; Wed, 14 Mar 2018 09:52:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0
X-Spam-Level:
X-Spam-Status: No, score=0 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.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 0ZD90eWLt6yP for <netconf@ietfa.amsl.com>; Wed, 14 Mar 2018 09:52:36 -0700 (PDT)
Received: from mail-lf0-x231.google.com (mail-lf0-x231.google.com [IPv6:2a00:1450:4010:c07::231]) (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 4D16D127869 for <netconf@ietf.org>; Wed, 14 Mar 2018 09:52:35 -0700 (PDT)
Received: by mail-lf0-x231.google.com with SMTP id h127-v6so5811960lfg.12 for <netconf@ietf.org>; Wed, 14 Mar 2018 09:52:35 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=U1q1+FLt/3fUXax1KW42vBz9GV7ZAQCiI8JqSYzEgWk=; b=GYn1ZPSabRP7+3y8J4mNOCmlws6DHp3BKyFPxcHkzQhWrCKbzeyhI+4jVVZyrcZuFp zWBgOSxw4WlK+DC+JG6Ws1nDgbyS7m9y7UqaRvfnMF3EzWOFHKXijSY09o3794QMMfIs ehgaY8rrt1tWNYYer6vCYWutpOemkKM02EVLdAR1K69Y6TrB4g/OOGAx43/DSWI+XNfF 8IU/HjpqySSyqaz8/M77J87tGvEszcTNepYmQSnu7GtfEbeWxhvy4DxgTj4KaNZGgjIh wiSnYo4T+0qI0RkLmFfCfhZzQJfr1P3xLkoGlvm77V59JNLEGd8pEDbGPYygGO7wOshU bsXw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=U1q1+FLt/3fUXax1KW42vBz9GV7ZAQCiI8JqSYzEgWk=; b=UTLc9jAHk4ebWcl9flvNnYwx/xX8tuH0fSk5xDnJ6/Dr4NZkQH+Lpp7asnW28et7B/ wY+X/oEscEM9ldgT4uSWhAPeN1URkDSXcPFyIKAUTM2aGLM2eeoVLIfSkNQs+VGru7O+ a/DHxW6r/qbcb5L23qwSZmfIj7BLvUpzWKNA1KXrJS9t+CyydFGIgChUx0pM/IylXQ4y J4+JUl0eIGPKAozcrZSbYTi23YLbtfDhMncH8n7yGnVQOZBcJdBnFRfz1z7tAXPQVBsy jnlD5bppSh8w+R9aayFnDWtTmetIXacFOQiYFy146qc2ecLy/hIYozjcfDVGrb8T0p4m by8g==
X-Gm-Message-State: AElRT7GHHcRXeJ2iqZXWgioB4AG/1fT5f6ISw/mDdKGxD8FSQmpjqM9y I/6ilVbblw90I7U5LdO9G0a4l+MpngQgpwQAQwL2GA==
X-Google-Smtp-Source: AG47ELujeIgze/fJA6n5VNHv/IPT3WdXO7pkZLZAjUjCM106SUmu55aEE7ewJLVj6zyWGgEdKfqfDSqDdoLmV7JnXmc=
X-Received: by 10.46.86.1 with SMTP id k1mr3752007ljb.28.1521046353498; Wed, 14 Mar 2018 09:52:33 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1a95:0:0:0:0:0 with HTTP; Wed, 14 Mar 2018 09:52:32 -0700 (PDT)
In-Reply-To: <9b8cf6b9e6114e00800525db71505023@XCH-RTP-013.cisco.com>
References: <8d4f4193c6694fe387d284d7b74c9b09@XCH-RTP-013.cisco.com> <20180314.093900.1449292548839197417.mbj@tail-f.com> <379cfb19a5c64753a067a2ae42f65a82@XCH-RTP-013.cisco.com> <20180314.145841.72164558423482638.mbj@tail-f.com> <9b8cf6b9e6114e00800525db71505023@XCH-RTP-013.cisco.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Wed, 14 Mar 2018 09:52:32 -0700
Message-ID: <CABCOCHSzcFg81LZPRhV5toN2x48AqbPk8CCt4Y-4B_GT1OrHkg@mail.gmail.com>
To: "Eric Voit (evoit)" <evoit@cisco.com>
Cc: Martin Bjorklund <mbj@tail-f.com>, "alex@clemm.org" <alex@clemm.org>, "Robert Wilton -X (rwilton - ENSOFT LIMITED at Cisco)" <rwilton@cisco.com>, "kwatsen@juniper.net" <kwatsen@juniper.net>, "netconf@ietf.org" <netconf@ietf.org>, "draft-ietf-netconf-subscribed-notifications@ietf.org" <draft-ietf-netconf-subscribed-notifications@ietf.org>
Content-Type: multipart/alternative; boundary="94eb2c1cde8c966c7c05676233cf"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/1ZWmqgrNgG_NAEJ7iKeudDGDVpA>
Subject: Re: [Netconf] LC on subscribed-notifications-10
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Network Configuration WG mailing list <netconf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netconf>, <mailto:netconf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netconf/>
List-Post: <mailto:netconf@ietf.org>
List-Help: <mailto:netconf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netconf>, <mailto:netconf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 14 Mar 2018 16:52:38 -0000

On Wed, Mar 14, 2018 at 8:35 AM, Eric Voit (evoit) <evoit@cisco.com> wrote:

> (reducing to the single open item, and adding Andy + Alex to the "to")
>
> > From: Martin Bjorklund, March 14, 2018 9:59 AM
> >
> > Hi,
> >
> > "Eric Voit (evoit)" <evoit@cisco.com> wrote:
> > > Hi Martin,
> > >
> > > But for
> > > subscription to event streams, it is assumed that any event records
> > > placed on a stream permitted for that receiver is authorized content
> > > (just like RFC-5277).
> >
> > Hmm.  This is not how it is defined in RFC 5277:
>
> Agree.   I should not have said "just like 5277".   More below.
>
> >    After generation of the <notification> element, access control is
> >    applied by the server.  If a session does not have permission to
> >    receive the <notification>, then it is discarded for that session,
> >    and processing of the internal event is completed for that session.
> >
> > Also, NACM is designed to drop notifications that the client doesn't have
> > access to.
>
> A few years ago during early discussions, Alex and I remember Andy asking
> that per receiver access control not be applied to traffic coming out of a
> stream.    We took that to mean that a receiver should get all the event
> records on a stream, without any per-notification filtering.  This is what
> drove the current text.
>
> Per RFC-6536, section 3.4.6., the outgoing <notification> authorization is
> able to look at the notification event type, and if a receiver is
> authorized to receive the notification event type, then it is also
> authorized to receive any data it contains.
>
> Reconsidering this, perhaps Alex and I interpreted Andy's intent wrong.
> And Andy actually requested the current event type behavior which NACM can
> currently perform on the RFC-5277 NETCONF event stream, but no other
> filtering of event records beyond that.
>
>
I think the notification event type filtering is still applicable.

I remember some discussions about applying NACM to YANG Push subscriptions.
Of course the client needs permission to receive <push-update> events.
The issue for YP is that this is the only access control provided.

In order to support NACM for the contents of <push-update> events, the
client
MUST have permission to read every data node specified in the filters for
a subscription. This is checked when the subscription is configured or
activated.
If a filter-ref filter is changed so this is no longer true, then the
server MUST
suspend or terminate the subscription.

IMO even this is quite an implementation burden, but less than having the
server check NACM rules for every descendant node of every edited node for
every
<push-update>.


If that is the case, and this capability is desired by the WG, Alex and I
> would be happy to replicate the relevant text from RFC-5277 section 3.2 to
> draft-ietf-netconf-subscribed-notifications to cover this.
>
> Thanks,
> Eric
>

Andy


>
> > > Effects like this are why the two drafts, as well as the YANG model
> > > targets and filters for datastores and to streams have been separated.
> > >
> > > > Your statement:
> > > >
> > > >   Access control is to the stream rather than the content.
> > > >
> > > > seems to imply that in order to subscribe to changes to the
> > > > datastore, you need full access to all nodes covered by the filter.
> > >
> > > As a stream and a datastore are different, hopefully my comment above
> > > clears this up.
> > >
> > > Eric
> > > > /martin
> >
> >
> > /martin
>