netconfcentral logo

ietf-netconf-am

HTML

ietf-netconf-am@2017-07-16



  module ietf-netconf-am {

    yang-version 1.1;

    namespace
      "urn:ietf:params:xml:ns:yang:ietf-netconf-am";

    prefix nam;

    import ietf-inet-types {
      prefix inet;
    }
    import ietf-yang-types {
      prefix yang;
    }
    import ietf-netconf {
      prefix nc;
    }
    import ietf-netconf-acm {
      prefix nacm;
    }

    organization
      "IETF NETCONF (Network Configuration) Working Group";

    contact
      "WG Web:   <http://tools.ietf.org/wg/netconf/>
         WG List:  <mailto:netconf@ietf.org>

         WG Chair: Mehmet Ersue
                   <mailto:mehmet.ersue@nsn.com>

         WG Chair: Mahesh Jethanandani
                   <mailto:mjethanandani@gmail.com>

         Editor:   Mahesh Jethanandani
                   <mailto:mjethanandani@gmail.com>";

    description
      "This module defines an accounting record for NETCONF operations
         performed on the server. If these operations are authorized
         using rules defined by NACM [RFC6536], then that information is
         also captured by this module.

         Copyright (c) 2014 IETF Trust and the persons identified as
         authors of the code. All rights reserved.

         Redistribution and use in source and binary forms, with or
         without modification, is permitted pursuant to, and subject
         to the license terms contained in, the Simplified BSD
         License set forth in Section 4.c of the IETF Trust's
         Legal Provisions Relating to IETF Documents
         (http://trustee.ietf.org/license-info).

         This version of this YANG module is part of RFC XXXX; see
         the RFC itself for full legal notices.";

    revision "2017-07-16" {
      description "Initial version";
      reference
        "RFC XXXX: NETCONF and RESTCONF Accounting";

    }


    container nam {
      nacm:default-deny-all;
      description
        "Parameters for NETCONF Accounting Model.";
      leaf enable-nam {
        type boolean;
        default 'true';
        description
          "Enable or disable generation of NETCONF
                 accounting records. If 'true', accounting
                 records will be generated. If set to 'false'
                 no accounting records will be generated.";
      }

      list accounting-record {
        key "session-id message-id";
        config false;
        description
          "A list of accounting records generated by the server";
        leaf session-id {
          type nc:session-id-type;
          description
            "If this operation happened over NETCONF, this
                     field captures the NETCONF session-id. In case
                     of RESTCONF this field can be left blank.";
        }

        leaf message-id {
          type uint32;
          description
            "Id that is assigned to each RPC within a given
                     NETCONF session. Should be blank in case of
                     RESTCONF.";
        }

        leaf date-time {
          type yang:date-and-time;
          mandatory true;
          description
            "The date and time when the operation was
                     requested.";
        }

        leaf src-ip {
          type inet:ip-address;
          mandatory true;
          description
            "The source IP address where the request was made
                     from.";
        }

        leaf group {
          type nacm:group-name-type;
          mandatory true;
          description
            "The name of the group that the user who requested
                     the operation belongs to.";
        }

        leaf user {
          type nacm:user-name-type;
          description
            "The user within the group that is requesting this
                     operation.";
        }

        leaf rule {
          type string {
            length "1..max";
          }
          description
            "The name assigned to the rule that was used to
                     authorize the action, if authorization was
                     enabled.";
        }

        leaf data-node {
          type nacm:node-instance-identifier;
          mandatory true;
          description
            "Data Node Instance Identifier associated with the
                     data node that the request is being made on.

                     Instance identifiers start with the top-level
                     data node, and a complete identifier is required
                     for this value.";
        }

        anydata value {
          description
            "An optional field, it contains the value of any
                     of the attribute that form the record.

                     It could be as simple as the filter value
                     'http' specified that the user requested as part
                     of the authorization request such as in this
                     example:

                     <filter>
                         <name>http</name>
                     </filter>

                     or it could be value being set for a ssh port
                     in this example:

                     <ssh>
                         <port>2022</port>
                     </ssh>";
        }

        leaf action {
          type nacm:access-operations-type;
          mandatory true;
          description
            "The type of NETCONF operation being requested.";
        }

        leaf status {
          type nacm:action-type;
          description
            "Action taken by the server when the above
                     mentioned rule matched, if authorization was
                     enable.";
        }
      }  // list accounting-record
    }  // container nam
  }  // module ietf-netconf-am

Summary

  
  
Organization IETF NETCONF (Network Configuration) Working Group
  
Module ietf-netconf-am
Version 2017-07-16
File ietf-netconf-am@2017-07-16.yang
  
Prefix nam
Namespace urn:ietf:params:xml:ns:yang:ietf-netconf-am
  
Cooked /cookedmodules/ietf-netconf-am/2017-07-16
YANG /src/ietf-netconf-am@2017-07-16.yang
XSD /xsd/ietf-netconf-am@2017-07-16.xsd
  
Abstract This module defines an accounting record for NETCONF operations performed on the server. If these operations are authorized usin...
  
Contact
WG Web:   <http://tools.ietf.org/wg/netconf/>
WG List:  <mailto:netconf@ietf.org>

WG Chair: Mehmet Ersue
	  <mailto:mehmet.ersue@nsn.com>

WG Chair: Mahesh Jethanandani
	  <mailto:mjethanandani@gmail.com>

Editor:   Mahesh Jethanandani
	  <mailto:mjethanandani@gmail.com>

Description

 
This module defines an accounting record for NETCONF operations
performed on the server. If these operations are authorized
using rules defined by NACM [RFC6536], then that information is
also captured by this module.

Copyright (c) 2014 IETF Trust and the persons identified as
authors of the code. All rights reserved.

Redistribution and use in source and binary forms, with or
without modification, is permitted pursuant to, and subject
to the license terms contained in, the Simplified BSD
License set forth in Section 4.c of the IETF Trust's
Legal Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info).

This version of this YANG module is part of RFC XXXX; see
the RFC itself for full legal notices.

Objects

Type Key
Mandatory config
Optional config
Not config
Object Type Abstract
nam container Parameters for NETCONF Accounting Model.
   accounting-record list A list of accounting records generated by the server
      action leaf The type of NETCONF operation being requested.
      data-node leaf Data Node Instance Identifier associated with the data node that the request is being made on. Instance identifiers start with the top-level data node, and a complete identifier is required for this value.
      date-time leaf The date and time when the operation was requested.
      group leaf The name of the group that the user who requested the operation belongs to.
      message-id leaf Id that is assigned to each RPC within a given NETCONF session. Should be blank in case of RESTCONF.
      rule leaf The name assigned to the rule that was used to authorize the action, if authorization was enabled.
      session-id leaf If this operation happened over NETCONF, this field captures the NETCONF session-id. In case of RESTCONF this field can be left blank.
      src-ip leaf The source IP address where the request was made from.
      status leaf Action taken by the server when the above mentioned rule matched, if authorization was enable.
      user leaf The user within the group that is requesting this operation.
      value anydata An optional field, it contains the value of any of the attribute that form the record. It could be as simple as the filter value 'http' specified that the user requested as part of the authorization request such as in this example: <filter> <name>ht...
   enable-nam leaf Enable or disable generation of NETCONF accounting records. If 'true', accounting records will be generated. If set to 'false' no accounting records will be generated.