11<?xml version =" 1.0" encoding =" UTF-8" ?>
2- <module xmlns =" urn:ietf:params:xml:ns:yang:yin:1" xmlns : nacm =" urn:ietf:params:xml:ns:yang:ietf-netconf-acm" xmlns : yang =" urn:ietf:params:xml:ns:yang:ietf-yang-types" name =" ietf-netconf-acm" >
2+ <module name =" ietf-netconf-acm"
3+ xmlns =" urn:ietf:params:xml:ns:yang:yin:1"
4+ xmlns : nacm =" urn:ietf:params:xml:ns:yang:ietf-netconf-acm"
5+ xmlns : yang =" urn:ietf:params:xml:ns:yang:ietf-yang-types" >
36 <namespace uri =" urn:ietf:params:xml:ns:yang:ietf-netconf-acm" />
47 <prefix value =" nacm" />
58 <import module =" ietf-yang-types" >
912 <text >IETF NETCONF (Network Configuration) Working Group</text >
1013 </organization >
1114 <contact >
12- <text >WG Web: < http ://tools .ietf.org/wg/netconf/>
15+ <text >WG Web: < https ://datatracker .ietf.org/wg/netconf/>
1316WG List: < mailto:netconf@ietf.org>
1417
15- WG Chair: Mehmet Ersue
16- < mailto:mehmet.ersue@nsn.com>
17-
18- WG Chair: Bert Wijnen
19- < mailto:bertietf@bwijnen.net>
20-
21- Editor: Andy Bierman
18+ Author: Andy Bierman
2219 < mailto:andy@yumaworks.com>
2320
24- Editor : Martin Bjorklund
21+ Author : Martin Bjorklund
2522 < mailto:mbj@tail-f.com> </text >
2623 </contact >
2724 <description >
28- <text >NETCONF Access Control Model.
25+ <text >Network Configuration Access Control Model.
2926
30- Copyright (c) 2012 IETF Trust and the persons identified as
31- authors of the code. All rights reserved.
27+ Copyright (c) 2012 - 2018 IETF Trust and the persons
28+ identified as authors of the code. All rights reserved.
3229
3330Redistribution and use in source and binary forms, with or
3431without modification, is permitted pursuant to, and subject
3532to the license terms contained in, the Simplified BSD
3633License set forth in Section 4.c of the IETF Trust's
3734Legal Provisions Relating to IETF Documents
38- (http ://trustee.ietf.org/license-info).
35+ (https ://trustee.ietf.org/license-info).
3936
40- This version of this YANG module is part of RFC 6536 ; see
37+ This version of this YANG module is part of RFC 8341 ; see
4138the RFC itself for full legal notices.</text >
4239 </description >
40+ <revision date =" 2018-02-14" >
41+ <description >
42+ <text >Added support for YANG 1.1 actions and notifications tied to
43+ data nodes. Clarified how NACM extensions can be used by
44+ other data models.</text >
45+ </description >
46+ <reference >
47+ <text >RFC 8341: Network Configuration Access Control Model</text >
48+ </reference >
49+ </revision >
4350 <revision date =" 2012-02-22" >
4451 <description >
45- <text >Initial version</text >
52+ <text >Initial version. </text >
4653 </description >
4754 <reference >
4855 <text >RFC 6536: Network Configuration Protocol (NETCONF)
@@ -54,11 +61,13 @@ the RFC itself for full legal notices.</text>
5461 <text >Used to indicate that the data model node
5562represents a sensitive security system parameter.
5663
57- If present, and the NACM module is enabled (i.e.,
58- /nacm/enable-nacm object equals 'true'), the NETCONF server
59- will only allow the designated 'recovery session' to have
60- write access to the node. An explicit access control rule is
61- required for all other users.
64+ If present, the NETCONF server will only allow the designated
65+ 'recovery session' to have write access to the node. An
66+ explicit access control rule is required for all other users.
67+
68+ If the NACM module is used, then it must be enabled (i.e.,
69+ /nacm/enable-nacm object equals 'true'), or this extension
70+ is ignored.
6271
6372The 'default-deny-write' extension MAY appear within a data
6473definition statement. It is ignored otherwise.</text >
@@ -69,11 +78,14 @@ definition statement. It is ignored otherwise.</text>
6978 <text >Used to indicate that the data model node
7079controls a very sensitive security system parameter.
7180
72- If present, and the NACM module is enabled (i.e.,
73- /nacm/enable-nacm object equals 'true'), the NETCONF server
74- will only allow the designated 'recovery session' to have
75- read, write, or execute access to the node. An explicit
76- access control rule is required for all other users.
81+ If present, the NETCONF server will only allow the designated
82+ 'recovery session' to have read, write, or execute access to
83+ the node. An explicit access control rule is required for all
84+ other users.
85+
86+ If the NACM module is used, then it must be enabled (i.e.,
87+ /nacm/enable-nacm object equals 'true'), or this extension
88+ is ignored.
7789
7890The 'default-deny-all' extension MAY appear within a data
7991definition statement, 'rpc' statement, or 'notification'
@@ -85,7 +97,7 @@ statement. It is ignored otherwise.</text>
8597 <length value =" 1..max" />
8698 </type >
8799 <description >
88- <text >General Purpose Username string.</text >
100+ <text >General-purpose username string.</text >
89101 </description >
90102 </typedef >
91103 <typedef name =" matchall-string-type" >
@@ -130,7 +142,7 @@ data node.</text>
130142 </bit >
131143 </type >
132144 <description >
133- <text >NETCONF Access Operation .</text >
145+ <text >Access operation .</text >
134146 </description >
135147 </typedef >
136148 <typedef name =" group-name-type" >
@@ -165,35 +177,40 @@ rule matches.</text>
165177 <type name =" yang:xpath1.0" />
166178 <description >
167179 <text >Path expression used to represent a special
168- data node instance identifier string.
180+ data node, action, or notification instance-identifier
181+ string.
169182
170183A node-instance-identifier value is an
171184unrestricted YANG instance-identifier expression.
172- All the same rules as an instance-identifier apply
173- except predicates for keys are optional. If a key
185+ All the same rules as an instance-identifier apply,
186+ except that predicates for keys are optional. If a key
174187predicate is missing, then the node-instance-identifier
175188represents all possible server instances for that key.
176189
177- This XPath expression is evaluated in the following context:
190+ This XML Path Language (XPath) expression is evaluated in the
191+ following context:
192+
193+ o The set of namespace declarations are those in scope on
194+ the leaf element where this type is used.
178195
179- o The set of namespace declarations are those in scope on
180- the leaf element where this type is used.
196+ o The set of variable bindings contains one variable,
197+ 'USER', which contains the name of the user of the
198+ current session.
181199
182- o The set of variable bindings contains one variable,
183- 'USER', which contains the name of the user of the current
184- session .
200+ o The function library is the core function library, but
201+ note that due to the syntax restrictions of an
202+ instance-identifier, no functions are allowed .
185203
186- o The function library is the core function library, but
187- note that due to the syntax restrictions of an
188- instance-identifier, no functions are allowed.
204+ o The context node is the root node in the data tree.
189205
190- o The context node is the root node in the data tree.</text >
206+ The accessible tree includes actions and notifications tied
207+ to data nodes.</text >
191208 </description >
192209 </typedef >
193210 <container name =" nacm" >
194211 <nacm : default-deny-all />
195212 <description >
196- <text >Parameters for NETCONF Access Control Model .</text >
213+ <text >Parameters for NETCONF access control model .</text >
197214 </description >
198215 <leaf name =" enable-nacm" >
199216 <type name =" boolean" />
@@ -273,12 +290,12 @@ access to the event type was denied.</text>
273290 </leaf >
274291 <container name =" groups" >
275292 <description >
276- <text >NETCONF Access Control Groups .</text >
293+ <text >NETCONF access control groups .</text >
277294 </description >
278295 <list name =" group" >
279296 <key value =" name" />
280297 <description >
281- <text >One NACM Group Entry . This list will only contain
298+ <text >One NACM group entry . This list will only contain
282299configured entries, not any entries learned from
283300any transport protocols.</text >
284301 </description >
@@ -335,8 +352,8 @@ entry.</text>
335352Rules are processed in user-defined order until a match is
336353found. A rule matches if 'module-name', 'rule-type', and
337354'access-operations' match the request. If a rule
338- matches, the 'action' leaf determines if access is granted
339- or not .</text >
355+ matches, the 'action' leaf determines whether or not
356+ access is granted .</text >
340357 </description >
341358 <leaf name =" name" >
342359 <type name =" string" >
@@ -396,13 +413,14 @@ value equals the requested notification name.</text>
396413 <type name =" node-instance-identifier" />
397414 <mandatory value =" true" />
398415 <description >
399- <text >Data Node Instance Identifier associated with the
400- data node controlled by this rule.
416+ <text >Data node instance-identifier associated with the
417+ data node, action, or notification controlled by
418+ this rule.
401419
402- Configuration data or state data instance
403- identifiers start with a top-level data node. A
404- complete instance identifier is required for this
405- type of path value.
420+ Configuration data or state data
421+ instance- identifiers start with a top-level
422+ data node. A complete instance-identifier is
423+ required for this type of path value.
406424
407425The special value '/' refers to all possible
408426datastore contents.</text >
@@ -428,7 +446,7 @@ bit corresponding to the requested operation is set.</text>
428446 <mandatory value =" true" />
429447 <description >
430448 <text >The access control action associated with the
431- rule. If a rule is determined to match a
449+ rule. If a rule has been determined to match a
432450particular request, then this object is used
433451to determine whether to permit or deny the
434452request.</text >
0 commit comments