Re: [netmod] Last Call: draft-ietf-netmod-snmp-cfg-03 (20131220)

Martin Bjorklund <mbj@tail-f.com> Tue, 07 January 2014 17:34 UTC

Return-Path: <mbj@tail-f.com>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 232AC1AE04F for <netmod@ietfa.amsl.com>; Tue, 7 Jan 2014 09:34:56 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.438
X-Spam-Level:
X-Spam-Status: No, score=-2.438 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-0.538] autolearn=ham
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 U_25nZStGzJF for <netmod@ietfa.amsl.com>; Tue, 7 Jan 2014 09:34:54 -0800 (PST)
Received: from mail.tail-f.com (mail.tail-f.com [109.74.15.94]) by ietfa.amsl.com (Postfix) with ESMTP id 1EF1B1AE04B for <netmod@ietf.org>; Tue, 7 Jan 2014 09:34:54 -0800 (PST)
Received: from localhost (unknown [193.12.32.88]) by mail.tail-f.com (Postfix) with ESMTPSA id 0B855240C1CB; Tue, 7 Jan 2014 18:34:44 +0100 (CET)
Date: Tue, 07 Jan 2014 18:34:43 +0100
Message-Id: <20140107.183443.328999646.mbj@tail-f.com>
To: randy_presuhn@mindspring.com
From: Martin Bjorklund <mbj@tail-f.com>
In-Reply-To: <27502799.1389115596850.JavaMail.root@elwamui-hybrid.atl.sa.earthlink.net>
References: <27502799.1389115596850.JavaMail.root@elwamui-hybrid.atl.sa.earthlink.net>
X-Mailer: Mew version 6.5rc2 on Emacs 23.4 / Mule 6.0 (HANACHIRUSATO)
Mime-Version: 1.0
Content-Type: Text/Plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Cc: netmod@ietf.org
Subject: Re: [netmod] Last Call: draft-ietf-netmod-snmp-cfg-03 (20131220)
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.15
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: <http://www.ietf.org/mail-archive/web/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, 07 Jan 2014 17:34:56 -0000

Randy Presuhn <randy_presuhn@mindspring.com> wrote:
> Hi -
> 
> >From: Martin Bjorklund <mbj@tail-f.com>
> >Sent: Jan 6, 2014 11:13 PM
> >To: randy_presuhn@mindspring.com
> >Cc: netmod@ietf.org
> >Subject: Re: [netmod] Last Call: draft-ietf-netmod-snmp-cfg-03 (20131220)
> >
> >"Randy Presuhn" <randy_presuhn@mindspring.com> wrote:
> >> Hi -
> >> 
> >> > From: "Martin Bjorklund" <mbj@tail-f.com>
> >> > To: <randy_presuhn@mindspring.com>
> >> > Cc: <netmod@ietf.org>
> >> > Sent: Monday, January 06, 2014 1:53 PM
> >> > Subject: Re: [netmod] Last Call: draft-ietf-netmod-snmp-cfg-03 (20131220)
> >> ...
> >> > What do you mean by a "group which does not exist"?  
> >> > 
> >> > Maybe you can provide an example (MIB) configuration that is not
> >> > possible to express in the YANG model?  (assuming also that we remove
> >> > the min-elements constraint from the "member" list).
> >> 
> >> Sure.  An instance of  vacmGroupName with value "TBD",
> >> when no entry exists in vacmAccessTable with such a value.
> >> Note that this is explicitly permitted by the definitions of
> >> vacmGroupName.
> >
> >This is expressable, see below.
> >
> >> > > If VACM has been configured with one or more users referring
> >> > > to groups that don't happen to exist at the moment, a fairly
> >> > > reasonable thing to do, the Yang/Netconf interface cannot
> >> > > represent that configuration.
> >> > 
> >> > If you mean an entry in vacmSecurityToGroupTable with a vacmGroupName
> >> > that does not exist in vacmAccessTable, this is possible to express
> >> > with the YANG model.
> >> 
> >> Cool.  I couldn't see how the Yang model would allow it, since the
> >> list "member" 
> >> is contained by the list "group".  Could you explain how one could create
> >> a "member" without creating the containing "group"?
> >
> >That's not what I wrote.  Let's be concrete.
> >
> >  vacmGroupName.3.3.b.o.b = TBD
> >  vacmGroupName.3.5.a.l.i.c.e = TBD
> >
> >can be represented as
> >
> >  <group>
> >    <name>TBD</name>
> >    <member>
> >      <security-name>alice</security-name>
> >      <security-model>usm</security-model>
> >    </member>
> >    <member>
> >      <security-name>bob</security-name>
> >      <security-model>usm</security-model>
> >    </member>
> >  </group>
> 
> This is where's where you lose me.  In the VACM
> model the group does not exist, but in the Yang model
> it does.

In VACM the group does not exist in vacmAccessTable, and in the YANG
model there are no entries in the group/access list.  So it is
equivalent.

BTW, 3415 says

   Within the View-Based Access Control Model, a
   groupName is considered to exist if that groupName is listed in the
   vacmSecurityToGroupTable.

and

   A group is a set of zero or more <securityModel, securityName> tuples
   on whose behalf SNMP management objects can be accessed.  A group
   defines the access rights afforded to all securityNames which belong
   to that group.  The combination of a securityModel and a securityName
   maps to at most one group.  A group is identified by a groupName.

So it seems to me that the group TBD actually exists in this case even
in VACM.


/martin