[要約] RFC 7407は、SNMPの設定に関するYANGデータモデルを提供するものであり、SNMPエージェントの設定を標準化することを目的としています。

Internet Engineering Task Force (IETF)                      M. Bjorklund
Request for Comments: 7407                                Tail-f Systems
Category: Standards Track                               J. Schoenwaelder
ISSN: 2070-1721                                        Jacobs University
                                                           December 2014
        

A YANG Data Model for SNMP Configuration

SNMP構成用のYANGデータモデル

Abstract

概要

This document defines a collection of YANG definitions for configuring SNMP engines.

このドキュメントでは、SNMPエンジンを構成するためのYANG定義のコレクションを定義します。

Status of This Memo

本文書の状態

This is an Internet Standards Track document.

これはInternet Standards Trackドキュメントです。

This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 5741.

このドキュメントは、IETF(Internet Engineering Task Force)の製品です。これは、IETFコミュニティのコンセンサスを表しています。公開レビューを受け、インターネットエンジニアリングステアリンググループ(IESG)による公開が承認されました。インターネット標準の詳細については、RFC 5741のセクション2をご覧ください。

Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc7407.

このドキュメントの現在のステータス、エラータ、およびフィードバックの提供方法に関する情報は、http://www.rfc-editor.org/info/rfc7407で入手できます。

Copyright Notice

著作権表示

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

Copyright(c)2014 IETF Trustおよびドキュメントの作成者として識別された人物。全著作権所有。

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.

この文書は、BCP 78およびこの文書の発行日に有効なIETF文書に関するIETFトラストの法的規定(http://trustee.ietf.org/license-info)の対象となります。これらのドキュメントは、このドキュメントに関するあなたの権利と制限を説明しているため、注意深く確認してください。このドキュメントから抽出されたコードコンポーネントには、Trust Legal Provisionsのセクション4.eに記載されているSimplified BSD Licenseのテキストが含まれている必要があり、Simplified BSD Licenseに記載されているように保証なしで提供されます。

Table of Contents

目次

   1. Introduction ....................................................3
   2. Data Model ......................................................3
      2.1. Tree Diagrams ..............................................4
      2.2. General Considerations .....................................4
      2.3. Common Definitions .........................................4
      2.4. Engine Configuration .......................................5
      2.5. Target Configuration .......................................6
      2.6. Notification Configuration .................................7
      2.7. Proxy Configuration ........................................8
      2.8. Community Configuration ....................................8
      2.9. View-Based Access Control Model Configuration ..............9
      2.10. User-Based Security Model Configuration ..................10
      2.11. Transport Security Model Configuration ...................11
      2.12. Transport Layer Security Transport Model Configuration ...12
      2.13. Secure Shell Transport Model Configuration ...............13
   3. Implementation Guidelines ......................................14
      3.1. Supporting read-only SNMP Access ..........................15
      3.2. Supporting read-write SNMP Access .........................15
   4. Definitions ....................................................16
      4.1. Module 'ietf-x509-cert-to-name' ...........................16
      4.2. Module 'ietf-snmp' ........................................22
      4.3. Submodule 'ietf-snmp-common' ..............................24
      4.4. Submodule 'ietf-snmp-engine' ..............................28
      4.5. Submodule 'ietf-snmp-target' ..............................32
      4.6. Submodule 'ietf-snmp-notification' ........................36
      4.7. Submodule 'ietf-snmp-proxy' ...............................41
      4.8. Submodule 'ietf-snmp-community' ...........................44
      4.9. Submodule 'ietf-snmp-vacm' ................................49
      4.10. Submodule 'ietf-snmp-usm' ................................55
      4.11. Submodule 'ietf-snmp-tsm' ................................60
      4.12. Submodule 'ietf-snmp-tls' ................................63
      4.13. Submodule 'ietf-snmp-ssh' ................................68
   5. IANA Considerations ............................................71
   6. Security Considerations ........................................72
   7. References .....................................................75
      7.1. Normative References ......................................75
      7.2. Informative References ....................................75
   Appendix A.  Example Configurations ...............................78
     A.1.  Engine Configuration Example ..............................78
     A.2.  Community Configuration Example ...........................78
     A.3.  User-Based Security Model Configuration Example ...........79
     A.4.  Target and Notification Configuration Example .............81
     A.5.  Proxy Configuration Example ...............................82
        
     A.6.  View-Based Access Control Model Configuration Example .....85
     A.7.  Transport Layer Security Transport Model Configuration
           Example ...................................................87
   Acknowledgments ...................................................88
   Authors' Addresses ................................................88
        
1. Introduction
1. はじめに

This document defines a YANG [RFC6020] data model for the configuration of SNMP engines. The configuration model is consistent with the MIB modules defined in [RFC3411], [RFC3412], [RFC3413], [RFC3414], [RFC3415], [RFC3417], [RFC3418], [RFC3419], [RFC3584], [RFC3826], [RFC5591], [RFC5592], and [RFC6353] but takes advantage of YANG's ability to define hierarchical configuration data models.

このドキュメントは、SNMPエンジンの構成のためのYANG [RFC6020]データモデルを定義します。構成モデルは、[RFC3411]、[RFC3412]、[RFC3413]、[RFC3414]、[RFC3415]、[RFC3417]、[RFC3418]、[RFC3419]、[RFC3584]、[RFC3826]で定義されているMIBモジュールと一致しています。 、[RFC5591]、[RFC5592]、および[RFC6353]ですが、階層構成データモデルを定義するYANGの機能を利用しています。

The configuration data model in particular has been designed for SNMP deployments where SNMP runs in read-only mode and the Network Configuration Protocol (NETCONF) is used to configure the SNMP agent. Nevertheless, the data model allows implementations that support write access both via SNMP and NETCONF in order to interwork with SNMP management applications manipulating SNMP agent configuration using SNMP. Further details can be found in Section 3.

特に構成データモデルは、SNMPが読み取り専用モードで実行され、ネットワーク構成プロトコル(NETCONF)を使用してSNMPエージェントを構成するSNMP展開用に設計されています。それにもかかわらず、データモデルでは、SNMPを使用してSNMPエージェント構成を操作するSNMP管理アプリケーションと相互作用するために、SNMPとNETCONFの両方を介した書き込みアクセスをサポートする実装が可能です。詳細については、セクション3を参照してください。

The YANG data model focuses on configuration. Operational state objects are not explicitly modeled. The operational state of an SNMP agent can be accessed either directly via SNMP or, alternatively, via NETCONF using the read-only translation of the relevant SNMP MIB modules into YANG modules [RFC6643].

YANGデータモデルは構成に焦点を当てています。運用状態オブジェクトは明示的にモデル化されていません。 SNMPエージェントの動作状態には、SNMPを介して直接アクセスするか、NETCONFを介して、関連するSNMP MIBモジュールのYANGモジュールへの読み取り専用変換[RFC6643]を使用してアクセスできます。

This document also defines a YANG data model for mapping an X.509 certificate to a name.

このドキュメントでは、X.509証明書を名前にマッピングするためのYANGデータモデルも定義しています。

The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119].

キーワード「MUST」、「MUST NOT」、「REQUIRED」、「SHALL」、「SHALL NOT」、「SHOULD」、「SHOULD NOT」、「RECOMMENDED」、「NOT RECOMMENDED」、「MAY」、「OPTIONAL」このドキュメントのBCP 14 [RFC2119]で説明されているように解釈されます。

2. Data Model
2. データ・モデル

In order to preserve the modularity of SNMP, the YANG configuration data model is organized in a set of YANG submodules, all sharing the same module namespace. This allows adding configuration support for additional SNMP features while keeping the number of namespaces that have to be dealt with down to a minimum.

SNMPのモジュール性を維持するために、YANG構成データモデルは一連のYANGサブモジュールに編成され、すべて同じモジュール名前空間を共有します。これにより、処理する必要のある名前空間の数を最小限に抑えながら、追加のSNMP機能の構成サポートを追加できます。

2.1. Tree Diagrams
2.1. ツリー図

A simplified graphical representation of the data model is used in this document. The meaning of the symbols in these diagrams is as follows:

このドキュメントでは、データモデルの簡略化されたグラフィカル表現を使用しています。これらの図の記号の意味は次のとおりです。

o Brackets "[" and "]" enclose list keys.

o 大括弧 "["と "]"はリストキーを囲みます。

o Abbreviations before data node names: "rw" means configuration (read-write), and "ro" means state data (read-only).

o データノード名の前の略語:「rw」は構成(読み取り/書き込み)を意味し、「ro」は状態データ(読み取り専用)を意味します。

o Symbols after data node names: "?" means an optional node, "!" means a presence container, and "*" denotes a list and leaf-list.

o データノード名の後の記号: "?"オプションのノード「!」を意味しますプレゼンスコンテナを意味し、「*」はリストとリーフリストを意味します。

o Parentheses enclose choice and case nodes, and case nodes are also marked with a colon (":").

o 括弧は選択ノードとケースノードを囲み、ケースノードもコロン( ":")でマークされます。

o Ellipsis ("...") stands for contents of subtrees that are not shown.

o 省略記号( "...")は、表示されていないサブツリーのコンテンツを表します。

2.2. General Considerations
2.2. 一般的な考慮事項

Most YANG nodes are mapped 1-1 to the corresponding MIB object. The "reference" statement is used to indicate which corresponding MIB object the YANG node is mapped to. When there is not a simple 1-1 mapping, the "description" statement explains the mapping.

ほとんどのYANGノードは、対応するMIBオブジェクトに1-1でマッピングされています。 「参照」ステートメントは、YANGノードがマップされている対応するMIBオブジェクトを示すために使用されます。単純な1-1マッピングがない場合、「説明」ステートメントはマッピングを説明します。

The persistency models in SNMP and NETCONF are quite different. In NETCONF, the persistency is defined by the datastore, whereas in SNMP, it is defined either explicitly in the data model or on a row-by-row basis using the Textual Convention "StorageType". Thus, in the YANG model defined here, the "StorageType" columns are not present. For implementation guidelines, see Section 3.

SNMPとNETCONFの永続性モデルはかなり異なります。 NETCONFでは永続性はデータストアによって定義されますが、SNMPではデータモデルで明示的に定義されるか、テキストの表記法「StorageType」を使用して行ごとに定義されます。したがって、ここで定義されているYANGモデルでは、「StorageType」列は存在しません。実装ガイドラインについては、セクション3を参照してください。

In SNMP, row creation and deletion are controlled using the Textual Convention "RowStatus". In NETCONF, creation and deletion are handled by the protocol, not in the data model. Thus, in the YANG model defined here, the "RowStatus" columns are not present.

SNMPでは、行の作成と削除は、テキスト表記規則「RowStatus」を使用して制御されます。 NETCONFでは、作成と削除はデータモデルではなくプロトコルによって処理されます。したがって、ここで定義されているYANGモデルでは、「RowStatus」列は存在しません。

2.3. Common Definitions
2.3. 一般的な定義

The submodule "ietf-snmp-common" defines a set of common typedefs and the top-level container "snmp". All configuration parameters defined in the other submodules are organized under this top-level container.

サブモジュール「ietf-snmp-common」は、共通のtypedefのセットと最上位のコンテナ「snmp」を定義します。他のサブモジュールで定義されているすべての構成パラメーターは、この最上位のコンテナーの下に編成されています。

2.4. Engine Configuration
2.4. エンジン構成

The submodule "ietf-snmp-engine", which defines configuration parameters that are specific to SNMP engines, has the following structure:

SNMPエンジンに固有の構成パラメーターを定義するサブモジュール「ietf-snmp-engine」は、次の構造を持っています。

      +--rw snmp
         +--rw engine
            +--rw enabled?               boolean
            +--rw listen* [name]
            |  +--rw name    snmp:identifier
            |  +--rw (transport)
            |     +--:(udp)
            |        +--rw udp
            |           +--rw ip      inet:ip-address
            |           +--rw port?   inet:port-number
            +--rw version
            |  +--rw v1?    empty
            |  +--rw v2c?   empty
            |  +--rw v3?    empty
            +--rw engine-id?             snmp:engine-id
            +--rw enable-authen-traps?   boolean
        

The leaf "/snmp/engine/enabled" can be used to enable/disable an SNMP engine.

リーフ「/ snmp / engine / enabled」は、SNMPエンジンを有効/無効にするために使用できます。

The list "/snmp/engine/listen" provides configuration of the transport endpoints the engine is listening to. In this submodule, SNMP over UDP is defined. The Secure Shell (SSH) Protocol, Transport Layer Security (TLS), and Datagram Transport Layer Security (DTLS) are also supported, defined in "ietf-snmp-ssh" (Section 2.13) and "ietf-snmp-tls" (Section 2.12), respectively. The "transport" choice is expected to be augmented for other transports.

リスト「/ snmp / engine / listen」は、エンジンがリッスンするトランスポートエンドポイントの構成を提供します。このサブモジュールでは、SNMP over UDPが定義されています。セキュアシェル(SSH)プロトコル、トランスポート層セキュリティ(TLS)、およびデータグラムトランスポート層セキュリティ(DTLS)もサポートされており、「ietf-snmp-ssh」(セクション2.13)および「ietf-snmp-tls」(セクション2.12)、それぞれ。 「トランスポート」の選択は、他のトランスポートで拡張されると予想されます。

The "/snmp/engine/version" container can be used to enable/disable the different message processing models [RFC3411].

「/ snmp / engine / version」コンテナは、さまざまなメッセージ処理モデルを有効/無効にするために使用できます[RFC3411]。

2.5. Target Configuration
2.5. ターゲット構成

The submodule "ietf-snmp-target", which defines configuration parameters that correspond to the objects in SNMP-TARGET-MIB, has the following structure:

SNMP-TARGET-MIBのオブジェクトに対応する構成パラメーターを定義するサブモジュール「ietf-snmp-target」は、次の構造を持っています。

      +--rw snmp
         +--rw target* [name]
         |  +--rw name       snmp:identifier
         |  +--rw (transport)
         |  |  +--:(udp)
         |  |     +--rw udp
         |  |        +--rw ip               inet:ip-address
         |  |        +--rw port?            inet:port-number
         |  |        +--rw prefix-length?   uint8
         |  +--rw tag*       snmp:identifier
         |  +--rw timeout?   uint32
         |  +--rw retries?   uint8
         |  +--rw target-params  snmp:identifier
         +--rw target-params* [name]
            +--rw name    snmp:identifier
            +--rw (params)?
        

An entry in the list "/snmp/target" corresponds to an "snmpTargetAddrEntry".

リスト「/ snmp / target」のエントリは、「snmpTargetAddrEntry」に対応しています。

The "snmpTargetAddrTDomain" and "snmpTargetAddrTAddress" objects are mapped to transport-specific YANG nodes. Each transport is configured as a separate case in the "transport" choice. In this submodule, SNMP over UDP is defined. TLS and DTLS are also supported, defined in "ietf-snmp-tls" (Section 2.12). The "transport" choice is expected to be augmented for other transports.

「snmpTargetAddrTDomain」および「snmpTargetAddrTAddress」オブジェクトは、トランスポート固有のYANGノードにマップされます。各トランスポートは、「トランスポート」の選択で個別のケースとして構成されます。このサブモジュールでは、SNMP over UDPが定義されています。 TLSとDTLSもサポートされており、「ietf-snmp-tls」(2.12項)で定義されています。 「トランスポート」の選択は、他のトランスポートで拡張されると予想されます。

An entry in the list "/snmp/target-params" corresponds to an "snmpTargetParamsEntry". This list contains a choice "params", which is augmented by submodules specific to the security model, currently, "ietf-snmp-community" (Section 2.8), "ietf-snmp-usm" (Section 2.10), and "ietf-snmp-tls" (Section 2.12).

リスト「/ snmp / target-params」のエントリは、「snmpTargetParamsEntry」に対応しています。このリストには、選択肢「params」が含まれています。これは、セキュリティモデルに固有のサブモジュール、現在は「ietf-snmp-community」(セクション2.8)、「ietf-snmp-usm」(セクション2.10)、および「ietf- snmp-tls」(セクション2.12)。

2.6. Notification Configuration
2.6. 通知設定

The submodule "ietf-snmp-notification", which defines configuration parameters that correspond to the objects in SNMP-NOTIFICATION-MIB, has the following structure:

SNMP-NOTIFICATION-MIBのオブジェクトに対応する構成パラメーターを定義するサブモジュール「ietf-snmp-notification」は、次の構造を持っています。

      +--rw snmp
         +--rw notify* [name]
         |  +--rw name    snmp:identifier
         |  +--rw tag     snmp:identifier
         |  +--rw type?   enumeration
         +--rw notify-filter-profile* [name]
            +--rw name       snmp:identifier
            +--rw include*   snmp:wildcard-object-identifier
            +--rw exclude*   snmp:wildcard-object-identifier
        

This submodule also augments the "target-params" list defined in the "ietf-snmp-target" submodule (Section 2.5) with one leaf:

このサブモジュールは、「ietf-snmp-target」サブモジュール(セクション2.5)で定義されている「target-params」リストを1つのリーフで拡張します。

      +--rw snmp
         +--rw target-params* [name]
            ...
            +--rw notify-filter-profile?   leafref
        

An entry in the list "/snmp/notify" corresponds to an "snmpNotifyEntry".

リスト「/ snmp / notify」のエントリは、「snmpNotifyEntry」に対応しています。

An entry in the list "/snmp/notify-filter-profile" corresponds to an "snmpNotifyFilterProfileEntry". In the MIB, there is a sparse relationship between "snmpTargetParamsTable" and "snmpNotifyFilterProfileTable". In the YANG model, this sparse relationship is represented with a leafref leaf "notify-filter-profile" in the "/snmp/target-params" list, which refers to an entry in the "/snmp/notify-filter-profile" list.

リスト「/ snmp / notify-filter-profile」のエントリは、「snmpNotifyFilterProfileEntry」に対応しています。 MIBでは、「snmpTargetParamsTable」と「snmpNotifyFilterProfileTable」の間に疎な関係があります。 YANGモデルでは、この疎な関係は、「/ snmp / target-params」リストの「refsref leaf」「notify-filter-profile」で表され、「/ snmp / notify-filter-profile」のエントリを参照しますリスト。

The "snmpNotifyFilterTable" is represented as a list "filter" within the "/snmp/notify-filter-profile" list.

「snmpNotifyFilterTable」は、「/ snmp / notify-filter-profile」リスト内の「filter」リストとして表されます。

This submodule defines the feature "notification-filter". A server implements this feature if it supports SNMP notification filtering [RFC3413].

このサブモジュールは、機能「通知フィルター」を定義します。 SNMP通知フィルタリングをサポートしている場合、サーバーはこの機能を実装します[RFC3413]。

2.7. Proxy Configuration
2.7. プロキシ構成

The submodule "ietf-snmp-proxy", which defines configuration parameters that correspond to the objects in SNMP-PROXY-MIB, has the following structure:

SNMP-PROXY-MIBのオブジェクトに対応する構成パラメーターを定義するサブモジュール「ietf-snmp-proxy」は、次の構造を持っています。

      +--rw snmp
         +--rw proxy* [name]
            +--rw name                    snmp:identifier
            +--rw type                    enumeration
            +--rw context-engine-id       snmp:engine-id
            +--rw context-name?           snmp:context-name
            +--rw target-params-in?       snmp:identifier
            +--rw single-target-out?      snmp:identifier
            +--rw multiple-target-out?    snmp:identifier
        

An entry in the list "/snmp/proxy" corresponds to an "snmpProxyEntry".

リスト「/ snmp / proxy」のエントリは、「snmpProxyEntry」に対応しています。

This submodule defines the feature "proxy". A server implements this feature if it can act as an SNMP proxy [RFC3413].

このサブモジュールは、機能「プロキシ」を定義します。 SNMPプロキシとして機能できる場合、サーバーはこの機能を実装します[RFC3413]。

2.8. Community Configuration
2.8. コミュニティ構成

The submodule "ietf-snmp-community", which defines configuration parameters that correspond to the objects in SNMP-COMMUNITY-MIB, has the following structure:

SNMP-COMMUNITY-MIBのオブジェクトに対応する構成パラメーターを定義するサブモジュール「ietf-snmp-community」は、次の構造を持っています。

      +--rw snmp
         +--rw community* [index]
            +--rw index            snmp:identifier
            +--rw (name)?
            |  +--:(text-name)
            |  |  +--rw text-name?       string
            |  +--:(binary-name)
            |     +--rw binary-name?     binary
            +--rw security-name    snmp:security-name
            +--rw engine-id?       snmp:engine-id
            +--rw context?         snmp:context-name
            +--rw target-tag?      snmp:identifier
        

This submodule also augments the "/snmp/target-params/params" choice with nodes for the Community-based Security Model used by SNMPv1 and SNMPv2c:

このサブモジュールは、「/ snmp / target-params / params」の選択肢を、SNMPv1およびSNMPv2cで使用されるコミュニティベースのセキュリティモデルのノードで拡張します。

      +--rw snmp
         +--rw target-params* [name]
         |  ...
         |  +--rw (params)?
         |     +--:(v1)
         |     |  +--rw v1
         |     |     +--rw security-name    snmp:security-name
         |     +--:(v2c)
         |        +--rw v2c
         |           +--rw security-name    snmp:security-name
         +--rw target* [name]
            +--rw mms?       union
        

An entry in the list "/snmp/community" corresponds to an "snmpCommunityEntry".

リスト「/ snmp / community」のエントリは、「snmpCommunityEntry」に対応しています。

When a case "v1" or "v2c" is chosen, it implies an snmpTargetParamsMPModel 0 (SNMPv1) or 1 (SNMPv2), and an snmpTargetParamsSecurityModel 1 (SNMPv1) or 2 (SNMPv2), respectively. Both cases imply an snmpTargetParamsSecurityLevel of noAuthNoPriv.

ケース「v1」または「v2c」を選択すると、それぞれsnmpTargetParamsMPModel 0(SNMPv1)または1(SNMPv2)、およびsnmpTargetParamsSecurityModel 1(SNMPv1)または2(SNMPv2)を意味します。どちらの場合も、snmpTargetParamsSecurityLevelがnoAuthNoPrivであることを意味します。

2.9. View-Based Access Control Model Configuration
2.9. ビューベースのアクセス制御モデルの構成

The submodule "ietf-snmp-vacm", which defines configuration parameters that correspond to the objects in SNMP-VIEW-BASED-ACM-MIB, has the following structure:

SNMP-VIEW-BASED-ACM-MIBのオブジェクトに対応する構成パラメーターを定義するサブモジュール「ietf-snmp-vacm」は、次の構造を持っています。

      +--rw snmp
         +--rw vacm
            +--rw group* [name]
            |  +--rw name      group-name
            |  +--rw member* [security-name]
            |  |  +--rw security-name     snmp:security-name
            |  |  +--rw security-model*   snmp:security-model
            |  +--rw access* [context security-model security-level]
            |     +--rw context           snmp:context-name
            |     +--rw context-match?    enumeration
            |     +--rw security-model    snmp:security-model-or-any
            |     +--rw security-level    snmp:security-level
            |     +--rw read-view?        view-name
            |     +--rw write-view?       view-name
            |     +--rw notify-view?      view-name
            +--rw view* [name]
               +--rw name       view-name
               +--rw include*   snmp:wildcard-object-identifier
               +--rw exclude*   snmp:wildcard-object-identifier
        

The "vacmSecurityToGroupTable" and "vacmAccessTable" are mapped to a structure of nested lists in the YANG model. Groups are defined in the list "/snmp/vacm/group", and for each group, there is a sublist "member" that maps to "vacmSecurityToGroupTable" and a sublist "access" that maps to "vacmAccessTable".

「vacmSecurityToGroupTable」と「vacmAccessTable」は、YANGモデルのネストされたリストの構造にマップされます。グループはリスト "/ snmp / vacm / group"で定義されており、各グループには、 "vacmSecurityToGroupTable"にマップするサブリスト "member"と、 "vacmAccessTable"にマップするサブリスト "access"があります。

MIB views are defined in the list "/snmp/vacm/view", and for each MIB view, there is a leaf-list of included subtree families and a leaf-list of excluded subtree families. This is more compact and thus a more readable representation of the "vacmViewTreeFamilyTable".

MIBビューはリスト "/ snmp / vacm / view"で定義されており、各MIBビューには、含まれるサブツリーファミリーのリーフリストと除外されたサブツリーファミリーのリーフリストがあります。これはよりコンパクトになり、 "vacmViewTreeFamilyTable"のより読みやすい表現になります。

2.10. User-Based Security Model Configuration
2.10. ユーザーベースのセキュリティモデルの構成

The submodule "ietf-snmp-usm", which defines configuration parameters that correspond to the objects in SNMP-USER-BASED-SM-MIB, has the following structure:

SNMP-USER-BASED-SM-MIBのオブジェクトに対応する構成パラメーターを定義するサブモジュール「ietf-snmp-usm」は、次の構造を持っています。

      +--rw snmp
         +--rw usm
            +--rw local
            |  +--rw user* [name]
            |     +-- {common user params}
            +--rw remote* [engine-id]
               +--rw engine-id    snmp:engine-id
               +--rw user* [name]
                  +-- {common user params}
        

The "{common user params}" are:

「{common user params}」は次のとおりです。

      +--rw name    snmp:identifier
      +--rw auth!
      |  +--rw (protocol)
      |     +--:(md5)
      |     |  +--rw md5
      |     |     +-- rw key    yang:hex-string
      |     +--:(sha)
      |        +--rw sha
      |           +-- rw key    yang:hex-string
      +--rw priv!
         +--rw (protocol)
            +--:(des)
            |  +--rw des
            |     +-- rw key    yang:hex-string
            +--:(aes)
               +--rw aes
                  +-- rw key    yang:hex-string
        

This submodule also augments the "/snmp/target-params/params" choice with nodes for the SNMP User-based Security Model.

このサブモジュールは、「/ snmp / target-params / params」の選択肢をSNMPユーザーベースのセキュリティモデルのノードで拡張します。

      +--rw snmp
         +--rw target-params* [name]
            ...
            +--rw (params)?
               +--:(usm)
                  +--rw usm
                     +--rw user-name         snmp:security-name
                     +--rw security-level    security-level
        

In the MIB, there is a single table with local and remote users, indexed by the engine ID and user name. In the YANG model, there is one list of local users and a nested list of remote users.

MIBには、ローカルユーザーとリモートユーザーの単一のテーブルがあり、エンジンIDとユーザー名でインデックスが付けられています。 YANGモデルでは、ローカルユーザーの1つのリストとリモートユーザーのネストされたリストがあります。

In the MIB, there are several objects related to changing the authentication and privacy keys. These objects are not present in the YANG model. However, the localized key can be changed. This implies that if the engine ID is changed, all users keys need to be changed as well.

MIBには、認証キーとプライバシーキーの変更に関連するいくつかのオブジェクトがあります。これらのオブジェクトは、YANGモデルには存在しません。ただし、ローカライズされたキーは変更できます。これは、エンジンIDが変更された場合、すべてのユーザーキーも変更する必要があることを意味します。

2.11. Transport Security Model Configuration
2.11. トランスポートセキュリティモデルの構成

The submodule "ietf-snmp-tsm", which defines configuration parameters that correspond to the objects in SNMP-TSM-MIB, has the following structure:

SNMP-TSM-MIBのオブジェクトに対応する構成パラメーターを定義するサブモジュール「ietf-snmp-tsm」は、次の構造を持っています。

      +--rw snmp
         +--rw tsm
            +--rw use-prefix?   boolean
        

This submodule also augments the "/snmp/target-params/params" choice with nodes for the SNMP Transport Security Model.

このサブモジュールは、「/ snmp / target-params / params」の選択肢をSNMPトランスポートセキュリティモデルのノードで拡張します。

      +--rw snmp
         +--rw target-params* [name]
            ...
            +--rw (params)?
               +--:(tsm)
                  +--rw tsm
                     +--rw security-name     snmp:security-name
                     +--rw security-level    security-level
        

This submodule defines the feature "tsm". A server implements this feature if it supports the Transport Security Model (TSM) [RFC5591].

このサブモジュールは、機能「tsm」を定義します。サーバーは、トランスポートセキュリティモデル(TSM)[RFC5591]をサポートする場合、この機能を実装します。

2.12. Transport Layer Security Transport Model Configuration
2.12. トランスポート層セキュリティトランスポートモデルの構成

The submodule "ietf-snmp-tls", which defines configuration parameters that correspond to the objects in SNMP-TLS-TM-MIB, has the following structure:

SNMP-TLS-TM-MIBのオブジェクトに対応する構成パラメーターを定義するサブモジュール「ietf-snmp-tls」は、次の構造を持っています。

      +--rw snmp
         ...
         +--rw target* [name]
         |  ...
         |  +--rw (transport)
         |     ...
         |     +--:(tls)
         |     |  +--rw tls
         |     |     +-- {common (d)tls transport params}
         |     +--:(dtls)
         |        +--rw dtls
         |           +-- {common (d)tls transport params}
         +--rw tlstm
            +--rw cert-to-name* [id]
               +--rw id             uint32
               +--rw fingerprint    x509c2n:tls-fingerprint
               +--rw map-type       identityref
               +--rw name           string
        

The "{common (d)tls transport params}" are:

「{common(d)tls transport params}」は次のとおりです。

      +--rw ip?                   inet:host
      +--rw port?                 inet:port-number
      +--rw client-fingerprint?   x509c2n:tls-fingerprint
      +--rw server-fingerprint?   x509c2n:tls-fingerprint
      +--rw server-identity?      snmp:admin-string
        

This submodule also augments the "/snmp/engine/listen/transport" choice with objects for the D(TLS) transport endpoints:

このサブモジュールは、D(TLS)トランスポートエンドポイントのオブジェクトを使用して、「/ snmp / engine / listen / transport」の選択肢も拡張します。

      +--rw snmp
         +--rw engine
            ...
            +--rw listen* [name]
               ...
               +--rw (transport)
                  ...
                  +--:(tls)
                  |  +--rw tls
                  |     +--rw ip      inet:ip-address
                  |     +--rw port?   inet:port-number
                  +--:(dtls)
                     +--rw dtls
                        +--rw ip      inet:ip-address
                        +--rw port?   inet:port-number
        

This submodule defines the feature "tlstm". A server implements this feature if it supports the Transport Layer Security (TLS) Transport Model (TLSTM) [RFC6353].

このサブモジュールは、機能「tlstm」を定義します。サーバーは、トランスポート層セキュリティ(TLS)トランスポートモデル(TLSTM)[RFC6353]をサポートする場合、この機能を実装します。

2.13. Secure Shell Transport Model Configuration
2.13. セキュアシェルトランスポートモデルの構成

The submodule "ietf-snmp-ssh", which defines configuration parameters that correspond to the objects in SNMP-SSH-TM-MIB, has the following structure:

SNMP-SSH-TM-MIBのオブジェクトに対応する構成パラメーターを定義するサブモジュール「ietf-snmp-ssh」は、次の構造を持っています。

      +--rw snmp
         ...
         +--rw target* [name]
           ...
           +--rw (transport)
              ...
              +--:(ssh)
                 +--rw ssh
                    +--rw ip          inet:host
                    +--rw port?       inet:port-number
                    +--rw username?   string
        

It also augments the "/snmp/engine/listen/transport" choice with objects for the SSH transport endpoints:

また、「/ snmp / engine / listen / transport」の選択肢にSSHトランスポートエンドポイントのオブジェクトを追加します。

      +--rw snmp
         +--rw engine
            ...
            +--rw listen* [name]
               ...
               +--rw (transport)
                  ...
                  +--:(ssh)
                     +--rw ssh
                        +--rw ip          inet:host
                        +--rw port?       inet:port-number
                        +--rw username?   string
        

This submodule defines the feature "sshtm". A server implements this feature if it supports the Secure Shell Transport Model (SSHTM) [RFC5592].

このサブモジュールは、機能「sshtm」を定義します。サーバーは、Secure Shell Transport Model(SSHTM)[RFC5592]をサポートしている場合、この機能を実装します。

3. Implementation Guidelines
3. 実装ガイドライン

This section describes some challenges for implementations that support both the YANG models defined in this document and either read-write or read-only SNMP access to the same data, using the standard MIB modules.

このセクションでは、このドキュメントで定義されているYANGモデルと、標準MIBモジュールを使用した同じデータへの読み取り/書き込みまたは読み取り専用のSNMPアクセスの両方をサポートする実装の課題について説明します。

As described in Section 2.2, the persistency models in NETCONF and SNMP are quite different. This poses a challenge for an implementation to support both NETCONF and SNMP access to the same data, in particular if the data is writable over both protocols. Specifically, the configuration data may exist in some combination of the three NETCONF configuration datastores, and this data must be mapped to rows in the SNMP tables, in some SNMP contexts, with proper values for the StorageType columns.

セクション2.2で説明したように、NETCONFとSNMPの永続性モデルはかなり異なります。これは、特にデータが両方のプロトコルを介して書き込み可能である場合、同じデータへのNETCONFとSNMPの両方のアクセスをサポートする実装に課題を提起します。具体的には、構成データは3つのNETCONF構成データストアのいくつかの組み合わせに存在する可能性があり、このデータは、StorageType列の適切な値を使用して、一部のSNMPコンテキストでSNMPテーブルの行にマップする必要があります。

This problem is not new; it has been handled in many implementations that support configuration of the SNMP engine over a command line interface (CLI), which normally have a persistency model similar to NETCONF.

この問題は新しいものではありません。これは、コマンドラインインターフェイス(CLI)を介したSNMPエンジンの構成をサポートする多くの実装で処理されており、通常はNETCONFと同様の永続性モデルを備えています。

Since there is not one solution that works for all cases, this document does not provide a recommended solution. Instead, some of the challenges involved are described below.

すべてのケースで機能するソリューションは1つではないため、このドキュメントでは推奨ソリューションを提供していません。代わりに、関連する課題のいくつかを以下に説明します。

3.1. Supporting read-only SNMP Access
3.1. 読み取り専用SNMPアクセスのサポート

If a device implements only :writable-running, it is trivial to map the contents of "running" to data in the SNMP tables, where all instances of the StorageType columns have the value "nonVolatile".

デバイスが:writable-runningのみを実装している場合、「running」の内容をSNMPテーブルのデータにマッピングするのは簡単です。StorageType列のすべてのインスタンスの値は「nonVolatile」です。

If a device implements :candidate but not :startup, the implementation may choose to not expose the contents of the "candidate" datastore over SNMP and map the contents of "running" as described above. As an option, the contents of "candidate" might be accessible in a separate SNMP context.

デバイスが:candidateを実装し、:startupを実装しない場合、実装は、SNMPを介して「候補」データストアのコンテンツを公開せず、上記の「実行中」のコンテンツをマップすることを選択できます。オプションとして、「候補」のコンテンツは別のSNMPコンテキストでアクセスできる場合があります。

If a device implements :startup, the handling of StorageType becomes more difficult. Since the contents of "running" and "startup" might differ, data in "running" cannot automatically be mapped to instances with StorageType "nonVolatile". If a particular entry exists in "running" but not in "startup", its StorageType should be "volatile". If a particular entry exists in "startup" but not "running", it should not be mapped to an SNMP instance, at least not in the default SNMP context.

デバイスが:startupを実装している場合、StorageTypeの処理はより困難になります。 「running」と「startup」の内容が異なる可能性があるため、「running」のデータをStorageTypeが「nonVolatile」のインスタンスに自動的にマッピングすることはできません。特定のエントリが「実行中」には存在するが「スタートアップ」には存在しない場合、そのStorageTypeは「揮発性」である必要があります。特定のエントリが「スタートアップ」に存在するが「実行中」には存在しない場合、少なくともデフォルトのSNMPコンテキストではなく、SNMPインスタンスにマッピングしないでください。

3.2. Supporting read-write SNMP Access
3.2. 読み取り/書き込みSNMPアクセスのサポート

If the implementation supports read-write access to data over SNMP, and specifically creation of table rows, special attention has to be given to the handling of the RowStatus and StorageType columns. The problem is to determine which table rows to store in the configuration datastores and which configuration datastore is appropriate for each row.

実装がSNMPを介したデータへの読み取り/書き込みアクセス、特にテーブル行の作成をサポートする場合、RowStatusおよびStorageType列の処理に特別な注意を払う必要があります。問題は、構成データストアに格納するテーブル行と、各行に適切な構成データストアを決定することです。

The SNMP tables contain a mix of configured data and operational state, and only rows with an "active" RowStatus column should be stored in a configuration datastore.

SNMPテーブルには、構成されたデータと動作状態が混在しており、「アクティブ」なRowStatus列を持つ行のみを構成データストアに格納する必要があります。

If a device implements only :writable-running, "active" rows with a "nonVolatile" StorageType column can be stored in "running". Rows with a "volatile" StorageType column are operational state.

デバイスが:writable-runningのみを実装している場合、「nonVolatile」StorageType列を持つ「アクティブ」行を「running」に格納できます。 「揮発性」のStorageType列のある行は操作可能な状態です。

If a device implements :candidate but not :writable-running, all configuration changes typically go through the "candidate", even if they are done over SNMP. An implementation might have to perform some automatic commit of the "candidate" when data is written over SNMP, since there is no explicit "commit" operation in SNMP.

デバイスが:candidateを実装していて、:writable-runningを実装していない場合、SNMPを介して行われた場合でも、すべての構成変更は通常「候補」を通過します。 SNMPには明示的な「コミット」操作がないため、実装では、SNMPを介してデータが書き込まれるときに「候補」の自動コミットを実行する必要がある場合があります。

If a device implements :startup, "nonVolatile" rows cannot just be written to "running"; they must also be copied into "startup". "volatile" rows may be treated as operational state and not copied to any datastore, or they may be copied into "running".

デバイスが:startupを実装している場合、「nonVolatile」行を単に「running」に書き込むことはできません。これらも「スタートアップ」にコピーする必要があります。 「揮発性」行は動作状態として扱われ、どのデータストアにもコピーされないか、「実行中」にコピーされる場合があります。

Cooperating SNMP management applications may use spin lock objects (snmpTargetSpinLock [RFC3413], usmUserSpinLock [RFC3414], vacmViewSpinLock [RFC3415]) to coordinate concurrent write requests. Implementations supporting modifications of MIB objects protected by a spin lock via NETCONF should ensure that the spin lock objects are properly incremented whenever objects are changed via NETCONF. This allows cooperating SNMP management applications to discover that concurrent modifications are taking place.

連携するSNMP管理アプリケーションは、スピンロックオブジェクト(snmpTargetSpinLock [RFC3413]、usmUserSpinLock [RFC3414]、vacmViewSpinLock [RFC3415])を使用して、同時書き込み要求を調整できます。 NETCONFを介してスピンロックによって保護されたMIBオブジェクトの変更をサポートする実装では、オブジェクトがNETCONFを介して変更されるたびに、スピンロックオブジェクトが適切にインクリメントされるようにする必要があります。これにより、連携するSNMP管理アプリケーションは、同時変更が行われていることを検出できます。

4. Definitions
4. 定義
4.1. Module 'ietf-x509-cert-to-name'
4.1. モジュール 'ietf-x509-cert-to-name'

This YANG module imports typedefs from [RFC6991].

このYANGモジュールは、[RFC6991]からtypedefをインポートします。

<CODE BEGINS> file "ietf-x509-cert-to-name.yang"

<CODE BEGINS>ファイル "ietf-x509-cert-to-name.yang"

module ietf-x509-cert-to-name {

module ietf-x509-cert-to-name {

     namespace "urn:ietf:params:xml:ns:yang:ietf-x509-cert-to-name";
     prefix x509c2n;
        
     import ietf-yang-types {
       prefix yang;
     }
        

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

組織「IETF NETMOD(NETCONFデータモデリング言語)ワーキンググループ」;

     contact
       "WG Web:   <http://tools.ietf.org/wg/netmod/>
        WG List:  <mailto:netmod@ietf.org>
        
        WG Chair: Thomas Nadeau
                  <mailto:tnadeau@lucidvision.com>
        
        WG Chair: Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>
        
        Editor:   Martin Bjorklund
                  <mailto:mbj@tail-f.com>
        
        Editor:   Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>";
        

description "This module contains a collection of YANG definitions for extracting a name from an X.509 certificate.

説明「このモジュールには、X.509証明書から名前を抽出するためのYANG定義のコレクションが含まれています。

The algorithm used to extract a name from an X.509 certificate was first defined in RFC 6353.

X.509証明書から名前を抽出するために使用されるアルゴリズムは、RFC 6353で最初に定義されました。

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

Copyright(c)2014 IETF Trustおよびコードの作成者として識別された人物。全著作権所有。

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).

ソースおよびバイナリ形式での再配布および使用は、変更の有無にかかわらず、IETF文書に関連するIETFトラストの法的規定のセクション4.cに記載されているSimplified BSD Licenseに従い、それに含まれるライセンス条項に従って許可されます( http://trustee.ietf.org/license-info)。

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

このYANGモジュールのこのバージョンはRFC 7407の一部です。完全な法的通知については、RFC自体を参照してください。 ";

reference "RFC 6353: Transport Layer Security (TLS) Transport Model for the Simple Network Management Protocol (SNMP)";

「RFC 6353:簡易ネットワーク管理プロトコル(SNMP)のトランスポート層セキュリティ(TLS)トランスポートモデル」を参照してください。

     revision 2014-12-10 {
       description
         "Initial revision.";
       reference
         "RFC 7407: A YANG Data Model for SNMP Configuration";
        

}

     typedef tls-fingerprint {
       type yang:hex-string {
         pattern '([0-9a-fA-F]){2}(:([0-9a-fA-F]){2}){0,254}';
       }
       description
        "A fingerprint value that can be used to uniquely reference
         other data of potentially arbitrary length.
        
         A tls-fingerprint value is composed of a 1-octet hashing
         algorithm identifier followed by the fingerprint value.  The
         first octet value identifying the hashing algorithm is taken
         from the IANA 'TLS HashAlgorithm Registry' (RFC 5246).  The
         remaining octets are filled using the results of the hashing
         algorithm.";
       reference
        "RFC 6353: Transport Layer Security (TLS) Transport Model
           for the Simple Network Management Protocol (SNMP).
           SNMP-TLS-TM-MIB.SnmpTLSFingerprint";
     }
        
     /* Identities */
        
     identity cert-to-name {
       description
         "Base identity for algorithms to derive a name from a
          certificate.";
     }
        
     identity specified {
       base cert-to-name;
       description
         "Directly specifies the name to be used for the certificate.
          The value of the leaf 'name' in the cert-to-name list is
          used.";
       reference
         "RFC 6353: Transport Layer Security (TLS) Transport Model
            for the Simple Network Management Protocol (SNMP).
            SNMP-TLS-TM-MIB.snmpTlstmCertSpecified";
     }
        
     identity san-rfc822-name {
       base cert-to-name;
       description
         "Maps a subjectAltName's rfc822Name to a name.  The local part
          of the rfc822Name is passed unaltered, but the host-part of
          the name must be passed in lowercase.  For example, the
          rfc822Name field FooBar@Example.COM is mapped to name
          FooBar@example.com.";
       reference
         "RFC 6353: Transport Layer Security (TLS) Transport Model
            for the Simple Network Management Protocol (SNMP).
            SNMP-TLS-TM-MIB.snmpTlstmCertSANRFC822Name";
     }
        
     identity san-dns-name {
       base cert-to-name;
       description
         "Maps a subjectAltName's dNSName to a name after first
          converting it to all lowercase (RFC 5280 does not specify
          converting to lowercase, so this involves an extra step).
          This mapping results in a 1:1 correspondence between
          subjectAltName dNSName values and the name values.";
       reference
         "RFC 6353: Transport Layer Security (TLS) Transport Model
            for the Simple Network Management Protocol (SNMP).
            SNMP-TLS-TM-MIB.snmpTlstmCertSANDNSName";
     }
     identity san-ip-address {
       base cert-to-name;
       description
         "Maps a subjectAltName's iPAddress to a name by
          transforming the binary-encoded address as follows:
        

1) for IPv4, the value is converted into a decimal-dotted quad address (e.g., '192.0.2.1').

1)IPv4の場合、値は10進ドットのクワッドアドレスに変換されます(例: '192.0.2.1')。

2) for IPv6 addresses, the value is converted into a 32-character, all-lowercase hexadecimal string without any colon separators.

2)IPv6アドレスの場合、値は32文字のすべて小文字の16進文字列に変換され、コロン区切り文字は含まれません。

          This mapping results in a 1:1 correspondence between
          subjectAltName iPAddress values and the name values.";
       reference
         "RFC 6353: Transport Layer Security (TLS) Transport Model
            for the Simple Network Management Protocol (SNMP).
            SNMP-TLS-TM-MIB.snmpTlstmCertSANIpAddress";
     }
        
     identity san-any {
       base cert-to-name;
       description
         "Maps any of the following fields using the corresponding
          mapping algorithms:
        
            +------------+-----------------+
            | Type       | Algorithm       |
            |------------+-----------------|
            | rfc822Name | san-rfc822-name |
            | dNSName    | san-dns-name    |
            | iPAddress  | san-ip-address  |
            +------------+-----------------+
        

The first matching subjectAltName value found in the certificate of the above types MUST be used when deriving the name. The mapping algorithm specified in the 'Algorithm' column MUST be used to derive the name.

上記のタイプの証明書で見つかった最初に一致するsubjectAltName値は、名前を導出するときに使用する必要があります。 「アルゴリズム」列で指定されたマッピングアルゴリズムを使用して、名前を導出する必要があります。

          This mapping results in a 1:1 correspondence between
          subjectAltName values and name values.  The three sub-mapping
          algorithms produced by this combined algorithm cannot produce
          conflicting results between themselves.";
       reference
         "RFC 6353: Transport Layer Security (TLS) Transport Model
            for the Simple Network Management Protocol (SNMP).
            SNMP-TLS-TM-MIB.snmpTlstmCertSANAny";
        

}

     identity common-name {
       base cert-to-name;
       description
         "Maps a certificate's CommonName to a name after converting
          it to a UTF-8 encoding.  The usage of CommonNames is
          deprecated, and users are encouraged to use subjectAltName
          mapping methods instead.  This mapping results in a 1:1
          correspondence between certificate CommonName values and name
          values.";
       reference
         "RFC 6353: Transport Layer Security (TLS) Transport Model
            for the Simple Network Management Protocol (SNMP).
            SNMP-TLS-TM-MIB.snmpTlstmCertCommonName";
     }
        
     /*
      * Groupings
      */
        
     grouping cert-to-name {
       description
         "Defines nodes for mapping certificates to names.  Modules
          that use this grouping should describe how the resulting
          name is used.";
        
       list cert-to-name {
         key id;
         description
           "This list defines how certificates are mapped to names.
            The name is derived by considering each cert-to-name
            list entry in order.  The cert-to-name entry's fingerprint
            determines whether the list entry is a match:
        

1) If the cert-to-name list entry's fingerprint value matches that of the presented certificate, then consider the list entry a successful match.

1)cert-to-nameリストエントリのフィンガープリント値が提示された証明書のフィンガープリント値と一致する場合、リストエントリが正常に一致したと見なします。

2) If the cert-to-name list entry's fingerprint value matches that of a locally held copy of a trusted CA certificate, and that CA certificate was part of the CA certificate chain to the presented certificate, then consider the list entry a successful match.

2)cert-to-nameリストエントリのフィンガープリント値が信頼できるCA証明書のローカルに保持されたコピーのフィンガープリント値と一致し、そのCA証明書が提示された証明書へのCA証明書チェーンの一部であった場合、リストエントリが正常に一致したと見なします。

Once a matching cert-to-name list entry has been found, the map-type is used to determine how the name associated with the certificate should be determined. See the map-type leaf's description for details on determining the name value. If it is impossible to determine a name from the cert-to-name list entry's data combined with the data presented in the certificate, then additional cert-to-name list entries MUST be searched to look for another potential match.

一致するcert-to-nameリストエントリが見つかると、マップタイプを使用して、証明書に関連付けられた名前を判別する方法を決定します。名前の値を決定する方法の詳細については、マップタイプリーフの説明を参照してください。 cert-to-nameリストエントリのデータと証明書で提示されたデータを組み合わせて名前を特定できない場合は、追加のcert-to-nameリストエントリを検索して、別の潜在的な一致を探す必要があります。

           Security administrators are encouraged to make use of
           certificates with subjectAltName fields that can be mapped to
           names so that a single root CA certificate can allow all
           child certificates' subjectAltName fields to map directly to
           a name via a 1:1 transformation.";
         reference
          "RFC 6353: Transport Layer Security (TLS) Transport Model
             for the Simple Network Management Protocol (SNMP).
             SNMP-TLS-TM-MIB.snmpTlstmCertToTSNEntry";
        
         leaf id {
           type uint32;
           description
             "The id specifies the order in which the entries in the
              cert-to-name list are searched.  Entries with lower
              numbers are searched first.";
           reference
             "RFC 6353: Transport Layer Security (TLS) Transport Model
                for the Simple Network Management Protocol
                (SNMP).
                SNMP-TLS-TM-MIB.snmpTlstmCertToTSNID";
         }
        
         leaf fingerprint {
           type x509c2n:tls-fingerprint;
           mandatory true;
           description
             "Specifies a value with which the fingerprint of the
              full certificate presented by the peer is compared.  If
              the fingerprint of the full certificate presented by the
              peer does not match the fingerprint configured, then the
              entry is skipped, and the search for a match continues.";
           reference
             "RFC 6353: Transport Layer Security (TLS) Transport Model
                for the Simple Network Management Protocol
                (SNMP).
                SNMP-TLS-TM-MIB.snmpTlstmCertToTSNFingerprint";
         }
        
         leaf map-type {
           type identityref {
             base cert-to-name;
        
           }
           mandatory true;
           description
             "Specifies the algorithm used to map the certificate
              presented by the peer to a name.
        
              Mappings that need additional configuration objects should
              use the 'when' statement to make them conditional based on
              the map-type.";
           reference
             "RFC 6353: Transport Layer Security (TLS) Transport Model
                for the Simple Network Management Protocol
                (SNMP).
                SNMP-TLS-TM-MIB.snmpTlstmCertToTSNMapType";
         }
        
         leaf name {
           when "../map-type = 'x509c2n:specified'";
           type string;
           mandatory true;
           description
             "Directly specifies the NETCONF username when the
              map-type is 'specified'.";
           reference
             "RFC 6353: Transport Layer Security (TLS) Transport Model
                for the Simple Network Management Protocol
                (SNMP).
                SNMP-TLS-TM-MIB.snmpTlstmCertToTSNData";
         }
       }
     }
   }
        

<CODE ENDS>

<コード終了>

4.2. Module 'ietf-snmp'
4.2. モジュール「ietf-snmp」

<CODE BEGINS> file "ietf-snmp.yang"

<CODE BEGINS>ファイル "ietf-snmp.yang"

module ietf-snmp {

モジュールietf-snmp {

     namespace "urn:ietf:params:xml:ns:yang:ietf-snmp";
     prefix snmp;
        
     include ietf-snmp-common {
       revision-date 2014-12-10;
     }
     include ietf-snmp-engine {
        
       revision-date 2014-12-10;
     }
     include ietf-snmp-target {
       revision-date 2014-12-10;
     }
     include ietf-snmp-notification {
       revision-date 2014-12-10;
     }
     include ietf-snmp-proxy {
       revision-date 2014-12-10;
     }
     include ietf-snmp-community {
       revision-date 2014-12-10;
     }
     include ietf-snmp-usm {
       revision-date 2014-12-10;
     }
     include ietf-snmp-tsm {
       revision-date 2014-12-10;
     }
     include ietf-snmp-vacm {
       revision-date 2014-12-10;
     }
     include ietf-snmp-tls {
       revision-date 2014-12-10;
     }
     include ietf-snmp-ssh {
       revision-date 2014-12-10;
     }
        

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

組織「IETF NETMOD(NETCONFデータモデリング言語)ワーキンググループ」;

     contact
       "WG Web:   <http://tools.ietf.org/wg/netmod/>
        WG List:  <mailto:netmod@ietf.org>
        
        WG Chair: Thomas Nadeau
                  <mailto:tnadeau@lucidvision.com>
        
        WG Chair: Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>
        
        Editor:   Martin Bjorklund
                  <mailto:mbj@tail-f.com>
        
        Editor:   Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>";
        

description "This module contains a collection of YANG definitions for configuring SNMP engines.

説明「このモジュールには、SNMPエンジンを構成するためのYANG定義のコレクションが含まれています。

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

Copyright(c)2014 IETF Trustおよびコードの作成者として識別された人物。全著作権所有。

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).

ソースおよびバイナリ形式での再配布および使用は、変更の有無にかかわらず、IETF文書に関連するIETFトラストの法的規定のセクション4.cに記載されているSimplified BSD Licenseに従い、それに含まれるライセンス条項に従って許可されます( http://trustee.ietf.org/license-info)。

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

このYANGモジュールのこのバージョンはRFC 7407の一部です。完全な法的通知については、RFC自体を参照してください。 ";

     revision 2014-12-10 {
       description
         "Initial revision.";
       reference
         "RFC 7407: A YANG Data Model for SNMP Configuration";
     }
        

}

<CODE ENDS>

<コード終了>

4.3. Submodule 'ietf-snmp-common'
4.3. サブモジュール「ietf-snmp-common」

<CODE BEGINS> file "ietf-snmp-common.yang"

<CODE BEGINS>ファイル "ietf-snmp-common.yang"

submodule ietf-snmp-common {

サブモジュールietf-snmp-common {

     belongs-to ietf-snmp {
       prefix snmp;
     }
        
     import ietf-yang-types {
       prefix yang;
     }
        

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

組織「IETF NETMOD(NETCONFデータモデリング言語)ワーキンググループ」;

     contact
       "WG Web:   <http://tools.ietf.org/wg/netmod/>
        WG List:  <mailto:netmod@ietf.org>
        WG Chair: Thomas Nadeau
                  <mailto:tnadeau@lucidvision.com>
        
        WG Chair: Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>
        
        Editor:   Martin Bjorklund
                  <mailto:mbj@tail-f.com>
        
        Editor:   Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>";
        

description "This submodule contains a collection of common YANG definitions for configuring SNMP engines.

説明「このサブモジュールには、SNMPエンジンを構成するための一般的なYANG定義のコレクションが含まれています。

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

Copyright(c)2014 IETF Trustおよびコードの作成者として識別された人物。全著作権所有。

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).

ソースおよびバイナリ形式での再配布および使用は、変更の有無にかかわらず、IETF文書に関連するIETFトラストの法的規定のセクション4.cに記載されているSimplified BSD Licenseに従い、それに含まれるライセンス条項に従って許可されます( http://trustee.ietf.org/license-info)。

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

このYANGモジュールのこのバージョンはRFC 7407の一部です。完全な法的通知については、RFC自体を参照してください。 ";

     revision 2014-12-10 {
       description
         "Initial revision.";
       reference
         "RFC 7407: A YANG Data Model for SNMP Configuration";
     }
        
     /* Collection of SNMP-specific data types */
        
     typedef admin-string {
       type string {
         length "0..255";
       }
       description
         "Represents SnmpAdminString as defined in RFC 3411.
        

Note that the size of an SnmpAdminString is measured in octets, not characters.";

SnmpAdminStringのサイズは文字ではなくオクテットで測定されることに注意してください。 ";

       reference
         "RFC 3411: An Architecture for Describing Simple Network
            Management Protocol (SNMP) Management Frameworks.
            SNMP-FRAMEWORK-MIB.SnmpAdminString";
     }
        
     typedef identifier {
       type admin-string {
         length "1..32";
       }
       description
         "Identifiers are used to name items in the SNMP configuration
         datastore.";
     }
        
     typedef context-name {
       type admin-string {
         length "0..32";
       }
       description
         "The context type represents an SNMP context name.";
       reference
         "RFC 3411: An Architecture for Describing Simple Network
            Management Protocol (SNMP) Management Frameworks";
     }
        
     typedef security-name {
       type admin-string {
         length "1..32";
       }
       description
         "The security-name type represents an SNMP security name.";
       reference
         "RFC 3411: An Architecture for Describing Simple Network
            Management Protocol (SNMP) Management Frameworks";
     }
        
     typedef security-model {
       type union {
         type enumeration {
           enum v1  { value 1; }
           enum v2c { value 2; }
           enum usm { value 3; }
           enum tsm { value 4; }
         }
         type int32 {
           range "1..2147483647";
         }
        
       }
       reference
         "RFC 3411: An Architecture for Describing Simple Network
            Management Protocol (SNMP) Management Frameworks";
     }
        
     typedef security-model-or-any {
       type union {
         type enumeration {
           enum any { value 0; }
         }
         type security-model;
       }
       reference
         "RFC 3411: An Architecture for Describing Simple Network
            Management Protocol (SNMP) Management Frameworks";
     }
        
     typedef security-level {
       type enumeration {
         enum no-auth-no-priv { value 1; }
         enum auth-no-priv    { value 2; }
         enum auth-priv       { value 3; }
       }
       reference
         "RFC 3411: An Architecture for Describing Simple Network
            Management Protocol (SNMP) Management Frameworks";
     }
        
     typedef engine-id {
       type yang:hex-string {
         pattern '([0-9a-fA-F]){2}(:([0-9a-fA-F]){2}){4,31}';
       }
       description
         "The engine ID specified as a list of colon-specified
         hexadecimal octets, e.g., '80:00:02:b8:04:61:62:63'.";
       reference
         "RFC 3411: An Architecture for Describing Simple Network
            Management Protocol (SNMP) Management Frameworks";
     }
        
     typedef wildcard-object-identifier {
       type string;
       description
         "The wildcard-object-identifier type represents an SNMP object
         identifier where subidentifiers can be given either as a label,
         in numeric form, or a wildcard, represented by an asterisk
         ('*').";
        

}

     typedef tag-value {
       type string {
         length "0..255";
       }
       description
         "Represents SnmpTagValue as defined in RFC 3413.
        
         Note that the size of an SnmpTagValue is measured in
         octets, not characters.";
       reference
         "RFC 3413: Simple Network Management Protocol (SNMP)
            Applications.
            SNMP-TARGET-MIB.SnmpTagValue";
     }
        
     container snmp {
       description
         "Top-level container for SNMP-related configuration and
         status objects.";
     }
        

}

<CODE ENDS>

<コード終了>

4.4. Submodule 'ietf-snmp-engine'
4.4. サブモジュール「ietf-snmp-engine」

<CODE BEGINS> file "ietf-snmp-engine.yang"

<CODE BEGINS>ファイル "ietf-snmp-engine.yang"

submodule ietf-snmp-engine {

サブモジュールietf-snmp-engine {

     belongs-to ietf-snmp {
       prefix snmp;
     }
        
     import ietf-inet-types {
       prefix inet;
     }
        

include ietf-snmp-common;

ietf-snmp-commonを含めます。

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

組織「IETF NETMOD(NETCONFデータモデリング言語)ワーキンググループ」;

     contact
       "WG Web:   <http://tools.ietf.org/wg/netmod/>
        
        WG List:  <mailto:netmod@ietf.org>
        
        WG Chair: Thomas Nadeau
                  <mailto:tnadeau@lucidvision.com>
        
        WG Chair: Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>
        
        Editor:   Martin Bjorklund
                  <mailto:mbj@tail-f.com>
        
        Editor:   Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>";
        

description "This submodule contains a collection of YANG definitions for configuring SNMP engines.

説明「このサブモジュールには、SNMPエンジンを構成するためのYANG定義のコレクションが含まれています。

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

Copyright(c)2014 IETF Trustおよびコードの作成者として識別された人物。全著作権所有。

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 7407; see the RFC itself for full legal notices.";

ソースおよびバイナリ形式での再配布および使用は、変更の有無にかかわらず、IETF文書に関連するIETFトラストの法的規定のセクション4.cに記載されているSimplified BSD Licenseに従い、それに含まれるライセンス条項に従って許可されます( http://trustee.ietf.org/license-info)。このYANGモジュールのこのバージョンはRFC 7407の一部です。完全な法的通知については、RFC自体を参照してください。 ";

     revision 2014-12-10 {
       description
         "Initial revision.";
       reference
         "RFC 7407: A YANG Data Model for SNMP Configuration";
     }
        
     augment /snmp:snmp {
        

container engine {

コンテナエンジン{

description "Configuration of the SNMP engine.";

説明 "SNMPエンジンの構成。";

         leaf enabled {
           type boolean;
           default "false";
           description
        
             "Enables the SNMP engine.";
         }
        
         list listen {
           key "name";
           description
             "Configuration of the transport endpoints on which the
              engine listens.";
        
           leaf name {
             type snmp:identifier;
             description
               "An arbitrary name for the list entry.";
           }
        
           choice transport {
             mandatory true;
             description
               "The transport-protocol-specific parameters for this
                endpoint.  Submodules providing configuration for
                additional transports are expected to augment this
                choice.";
             case udp {
               container udp {
                 leaf ip {
                   type inet:ip-address;
                   mandatory true;
                   description
                     "The IPv4 or IPv6 address on which the engine
                      listens.";
                 }
                 leaf port {
                   type inet:port-number;
                   description
                     "The UDP port on which the engine listens.
        
                      If the port is not configured, an engine that
                      acts as a Command Responder uses port 161, and
                      an engine that acts as a Notification Receiver
                      uses port 162.";
                 }
               }
             }
           }
         }
         container version {
           description
             "SNMP version used by the engine.";
           leaf v1 {
             type empty;
           }
           leaf v2c {
             type empty;
           }
           leaf v3 {
             type empty;
           }
         }
        
         leaf engine-id {
           type snmp:engine-id;
           description
             "The local SNMP engine's administratively assigned unique
              identifier.
        
              If this leaf is not set, the device automatically
              calculates an engine ID, as described in RFC 3411.  A
              server MAY initialize this leaf with the automatically
              created value.";
           reference
             "RFC 3411: An Architecture for Describing Simple Network
                Management Protocol (SNMP) Management
                Frameworks.
                SNMP-FRAMEWORK-MIB.snmpEngineID";
         }
        
         leaf enable-authen-traps {
           type boolean;
           description
             "Indicates whether the SNMP entity is permitted to
              generate authenticationFailure traps.";
           reference
             "RFC 3418: Management Information Base (MIB) for the
                Simple Network Management Protocol (SNMP)
                SNMPv2-MIB.snmpEnableAuthenTraps";
         }
       }
     }
   }
        

<CODE ENDS>

<コード終了>

4.5. Submodule 'ietf-snmp-target'
4.5. サブモジュール「ietf-snmp-target」

<CODE BEGINS> file "ietf-snmp-target.yang"

<CODE BEGINS>ファイル "ietf-snmp-target.yang"

submodule ietf-snmp-target {

サブモジュールietf-snmp-target {

     belongs-to ietf-snmp {
       prefix snmp;
     }
        
     import ietf-inet-types {
       prefix inet;
     }
        

include ietf-snmp-common;

ietf-snmp-commonを含めます。

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

組織「IETF NETMOD(NETCONFデータモデリング言語)ワーキンググループ」;

     contact
       "WG Web:   <http://tools.ietf.org/wg/netmod/>
        WG List:  <mailto:netmod@ietf.org>
        
        WG Chair: Thomas Nadeau
                  <mailto:tnadeau@lucidvision.com>
        
        WG Chair: Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>
        
        Editor:   Martin Bjorklund
                  <mailto:mbj@tail-f.com>
        
        Editor:   Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>";
        

description "This submodule contains a collection of YANG definitions for configuring SNMP targets.

説明「このサブモジュールには、SNMPターゲットを構成するためのYANG定義のコレクションが含まれています。

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

Copyright(c)2014 IETF Trustおよびコードの作成者として識別された人物。全著作権所有。

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).

ソースおよびバイナリ形式での再配布および使用は、変更の有無にかかわらず、IETF文書に関連するIETFトラストの法的規定のセクション4.cに記載されているSimplified BSD Licenseに従い、それに含まれるライセンス条項に従って許可されます( http://trustee.ietf.org/license-info)。

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

このYANGモジュールのこのバージョンはRFC 7407の一部です。完全な法的通知については、RFC自体を参照してください。 ";

reference "RFC 3413: Simple Network Management Protocol (SNMP) Applications";

「RFC 3413:簡易ネットワーク管理プロトコル(SNMP)アプリケーション」を参照してください。

     revision 2014-12-10 {
       description
         "Initial revision.";
       reference
         "RFC 7407: A YANG Data Model for SNMP Configuration";
     }
        
     augment /snmp:snmp {
        
       list target {
         key name;
         description
           "List of targets.";
         reference
           "RFC 3413: Simple Network Management Protocol (SNMP)
              Applications.
              SNMP-TARGET-MIB.snmpTargetAddrTable";
        
         leaf name {
           type snmp:identifier;
           description
             "Identifies the target.";
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP)
                Applications.
                SNMP-TARGET-MIB.snmpTargetAddrName";
         }
         choice transport {
           mandatory true;
           description
             "Transport address of the target.
        

The snmpTargetAddrTDomain and snmpTargetAddrTAddress objects are mapped to transport-specific YANG nodes. Each transport is configured as a separate case in this choice. Submodules providing configuration for additional transports are expected to augment this choice.";

snmpTargetAddrTDomainオブジェクトとsnmpTargetAddrTAddressオブジェクトは、トランスポート固有のYANGノードにマップされます。この選択では、各トランスポートは個別のケースとして構成されます。追加のトランスポートの構成を提供するサブモジュールは、この選択を強化することが期待されています。 ";

           reference
             "RFC 3413: Simple Network Management Protocol (SNMP)
                Applications.
                SNMP-TARGET-MIB.snmpTargetAddrTDomain
                SNMP-TARGET-MIB.snmpTargetAddrTAddress";
           case udp {
             reference
              "RFC 3417: Transport Mappings for the Simple Network
                 Management Protocol (SNMP).
                 SNMPv2-TM.snmpUDPDomain
               RFC 3419: Textual Conventions for Transport Addresses.
                 TRANSPORT-ADDRESS-MIB.transportDomainUdpIpv4
                 TRANSPORT-ADDRESS-MIB.transportDomainUdpIpv4z
                 TRANSPORT-ADDRESS-MIB.transportDomainUdpIpv6
                 TRANSPORT-ADDRESS-MIB.transportDomainUdpIpv6z";
             container udp {
               leaf ip {
                 type inet:ip-address;
                 mandatory true;
                 reference
                   "RFC 3413: Simple Network Management Protocol (SNMP).
                      SNMP-TARGET-MIB.snmpTargetAddrTAddress";
               }
               leaf port {
                 type inet:port-number;
                 default 162;
                 description
                   "UDP port number.";
                 reference
                   "RFC 3413: Simple Network Management Protocol (SNMP).
                      SNMP-TARGET-MIB.snmpTargetAddrTAddress";
               }
               leaf prefix-length {
                 type uint8;
                 description
                   "The value of this leaf must match the value of
                    ../snmp:ip.  If ../snmp:ip contains an IPv4 address,
                    this leaf must be less than or equal to 32.  If it
                    contains an IPv6 address, it must be less than or
                    equal to 128.
        

Note that the prefix-length is currently only used by the Community-based Security Model to filter incoming messages. Furthermore, the prefix-length filtering does not cover all possible filters supported by the corresponding MIB object.";

prefix-lengthは現在、コミュニティベースのセキュリティモデルでのみ使用され、着信メッセージをフィルタリングすることに注意してください。さらに、プレフィックス長のフィルタリングは、対応するMIBオブジェクトによってサポートされるすべての可能なフィルターをカバーするわけではありません。 ";

                 reference
                   "RFC 3584: Coexistence between Version 1, Version 2,
                      and Version 3 of the Internet-standard
                      Network Management Framework.
                      SNMP-COMMUNITY-MIB.snmpTargetAddrTMask";
               }
             }
           }
         }
         leaf-list tag {
           type snmp:tag-value;
           description
             "List of tag values used to select target addresses.";
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-TARGET-MIB.snmpTargetAddrTagList";
         }
         leaf timeout {
           type uint32;
           units "0.01 seconds";
           default 1500;
           description
             "Needed only if this target can receive
              InformRequest-PDUs.";
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-TARGET-MIB.snmpTargetAddrTimeout";
         }
         leaf retries {
           type uint8;
           default 3;
           description
             "Needed only if this target can receive
              InformRequest-PDUs.";
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-TARGET-MIB.snmpTargetAddrRetryCount";
         }
         leaf target-params {
           type snmp:identifier;
           mandatory true;
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-TARGET-MIB.snmpTargetAddrParams";
        
         }
       }
        
       list target-params {
         key name;
         description
           "List of target parameters.";
         reference
           "RFC 3413: Simple Network Management Protocol (SNMP).
              Applications.
              SNMP-TARGET-MIB.snmpTargetParamsTable";
        
         leaf name {
           type snmp:identifier;
         }
         choice params {
           description
             "This choice is augmented with case nodes containing
              configuration parameters specific to the security model.";
         }
       }
     }
   }
        

<CODE ENDS>

<コード終了>

4.6. Submodule 'ietf-snmp-notification'
4.6. サブモジュール「ietf-snmp-notification」

<CODE BEGINS> file "ietf-snmp-notification.yang"

<CODE BEGINS>ファイル "ietf-snmp-notification.yang"

submodule ietf-snmp-notification {

サブモジュールietf-snmp-notification {

     belongs-to ietf-snmp {
       prefix snmp;
     }
        
     include ietf-snmp-common;
     include ietf-snmp-target;
        

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

組織「IETF NETMOD(NETCONFデータモデリング言語)ワーキンググループ」;

     contact
       "WG Web:   <http://tools.ietf.org/wg/netmod/>
        WG List:  <mailto:netmod@ietf.org>
        
        WG Chair: Thomas Nadeau
                  <mailto:tnadeau@lucidvision.com>
        
        WG Chair: Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>
        
        Editor:   Martin Bjorklund
                  <mailto:mbj@tail-f.com>
        
        Editor:   Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>";
        

description "This submodule contains a collection of YANG definitions for configuring SNMP notifications.

説明「このサブモジュールには、SNMP通知を構成するためのYANG定義のコレクションが含まれています。

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

Copyright(c)2014 IETF Trustおよびコードの作成者として識別された人物。全著作権所有。

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).

ソースおよびバイナリ形式での再配布および使用は、変更の有無にかかわらず、IETF文書に関連するIETFトラストの法的規定のセクション4.cに記載されているSimplified BSD Licenseに従い、それに含まれるライセンス条項に従って許可されます( http://trustee.ietf.org/license-info)。

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

このYANGモジュールのこのバージョンはRFC 7407の一部です。完全な法的通知については、RFC自体を参照してください。 ";

reference "RFC 3413: Simple Network Management Protocol (SNMP) Applications";

「RFC 3413:簡易ネットワーク管理プロトコル(SNMP)アプリケーション」を参照してください。

     revision 2014-12-10 {
       description
         "Initial revision.";
       reference
         "RFC 7407: A YANG Data Model for SNMP Configuration";
     }
        
     feature notification-filter {
       description
         "A server implements this feature if it supports SNMP
         notification filtering.";
       reference
         "RFC 3413: Simple Network Management Protocol (SNMP)
            Applications";
     }
        
     augment /snmp:snmp {
        
       list notify {
         key name;
         description
           "Targets that will receive notifications.
        
            Entries in this list are mapped 1-1 to entries in
            snmpNotifyTable, except that if an entry in snmpNotifyTable
            has an snmpNotifyTag for which no snmpTargetAddrEntry
            exists, then the snmpNotifyTable entry is not mapped to an
            entry in this list.";
         reference
           "RFC 3413: Simple Network Management Protocol (SNMP).
              Applications.
              SNMP-NOTIFICATION-MIB.snmpNotifyTable";
        
         leaf name {
           type snmp:identifier;
           description
             "An arbitrary name for the list entry.";
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-NOTIFICATION-MIB.snmpNotifyName";
         }
         leaf tag {
           type snmp:tag-value;
           mandatory true;
           description
             "Target tag, selects a set of notification targets.
        
              Implementations MAY restrict the values of this leaf
              to be one of the available values of /snmp/target/tag in
              a valid configuration.";
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-NOTIFICATION-MIB.snmpNotifyTag";
         }
         leaf type {
           type enumeration {
             enum trap { value 1; }
             enum inform { value 2; }
           }
           default trap;
           description
             "Defines the notification type to be generated.";
        
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-NOTIFICATION-MIB.snmpNotifyType";
         }
       }
        
       list notify-filter-profile {
         if-feature snmp:notification-filter;
         key name;
        

description "Notification filter profiles.

説明「通知フィルタープロファイル。

The leaf /snmp/target/notify-filter-profile is used to associate a filter profile with a target.

リーフ/ snmp / target / notify-filter-profileは、フィルタープロファイルをターゲットに関連付けるために使用されます。

If an entry in this list is referred to by one or more /snmp/target/notify-filter-profile items, each such notify-filter-profile is represented by one snmpNotifyFilterProfileEntry.

このリストのエントリが1つ以上の/ snmp / target / notify-filter-profileアイテムによって参照される場合、そのような各notify-filter-profileは1つのsnmpNotifyFilterProfileEntryによって表されます。

            If an entry in this list is not referred to by any
            /snmp/target/notify-filter-profile, the entry is not mapped
            to snmpNotifyFilterProfileTable.";
         reference
           "RFC 3413: Simple Network Management Protocol (SNMP).
              Applications.
              SNMP-NOTIFICATION-MIB.snmpNotifyFilterProfileTable
              SNMP-NOTIFICATION-MIB.snmpNotifyFilterTable";
        
         leaf name {
           type snmp:identifier;
           description
             "Name of the filter profile.";
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-NOTIFICATION-MIB.snmpNotifyFilterProfileName";
         }
        
         leaf-list include {
           type snmp:wildcard-object-identifier;
           description
             "A family of subtrees included in this filter.";
        
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-NOTIFICATION-MIB.snmpNotifyFilterSubtree
                SNMP-NOTIFICATION-MIB.snmpNotifyFilterMask
                SNMP-NOTIFICATION-MIB.snmpNotifyFilterType";
         }
        
         leaf-list exclude {
           type snmp:wildcard-object-identifier;
           description
             "A family of subtrees excluded from this filter.";
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-NOTIFICATION-MIB.snmpNotifyFilterSubtree
                SNMP-NOTIFICATION-MIB.snmpNotifyFilterMask
                SNMP-NOTIFICATION-MIB.snmpNotifyFilterType";
         }
       }
        

}

     augment /snmp:snmp/snmp:target-params {
       reference
         "RFC 3413: Simple Network Management Protocol (SNMP).
            Applications.
            SNMP-NOTIFICATION-MIB.snmpNotifyFilterProfileTable";
       leaf notify-filter-profile {
         if-feature snmp:notification-filter;
         type leafref {
           path "/snmp/notify-filter-profile/name";
         }
         description
           "This leafref leaf is used to represent the sparse
            relationship between the /snmp/target-params list and the
            /snmp/notify-filter-profile list.";
         reference
           "RFC 3413: Simple Network Management Protocol (SNMP).
              Applications.
              SNMP-NOTIFICATION-MIB.snmpNotifyFilterProfileName";
       }
     }
        

}

<CODE ENDS>

<コード終了>

4.7. Submodule 'ietf-snmp-proxy'
4.7. サブモジュール「ietf-snmp-proxy」

<CODE BEGINS> file "ietf-snmp-proxy.yang"

<CODE BEGINS>ファイル "ietf-snmp-proxy.yang"

submodule ietf-snmp-proxy {

サブモジュールietf-snmp-proxy {

     belongs-to ietf-snmp {
       prefix snmp;
     }
        
     include ietf-snmp-common;
     include ietf-snmp-target;
        

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

組織「IETF NETMOD(NETCONFデータモデリング言語)ワーキンググループ」;

     contact
       "WG Web:   <http://tools.ietf.org/wg/netmod/>
        WG List:  <mailto:netmod@ietf.org>
        
        WG Chair: Thomas Nadeau
                  <mailto:tnadeau@lucidvision.com>
        
        WG Chair: Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>
        
        Editor:   Martin Bjorklund
                  <mailto:mbj@tail-f.com>
        
        Editor:   Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>";
        

description "This submodule contains a collection of YANG definitions for configuring SNMP proxies.

説明「このサブモジュールには、SNMPプロキシを構成するためのYANG定義のコレクションが含まれています。

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

Copyright(c)2014 IETF Trustおよびコードの作成者として識別された人物。全著作権所有。

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).

ソースおよびバイナリ形式での再配布および使用は、変更の有無にかかわらず、IETF文書に関連するIETFトラストの法的規定のセクション4.cに記載されているSimplified BSD Licenseに従い、それに含まれるライセンス条項に従って許可されます( http://trustee.ietf.org/license-info)。

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

このYANGモジュールのこのバージョンはRFC 7407の一部です。完全な法的通知については、RFC自体を参照してください。 ";

reference "RFC 3413: Simple Network Management Protocol (SNMP) Applications";

「RFC 3413:簡易ネットワーク管理プロトコル(SNMP)アプリケーション」を参照してください。

     revision 2014-12-10 {
       description
         "Initial revision.";
       reference
         "RFC 7407: A YANG Data Model for SNMP Configuration";
     }
        
     feature proxy {
       description
         "A server implements this feature if it can act as an
         SNMP proxy.";
       reference
         "RFC 3413: Simple Network Management Protocol (SNMP)
            Applications";
     }
        
     augment /snmp:snmp {
       if-feature snmp:proxy;
        
       list proxy {
         key name;
        
         description
           "List of proxy parameters.";
         reference
           "RFC 3413: Simple Network Management Protocol (SNMP).
              Applications.
              SNMP-PROXY-MIB.snmpProxyTable";
        
         leaf name {
           type snmp:identifier;
           description
             "Identifies the proxy parameter entry.";
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-PROXY-MIB.snmpProxyName";
         }
         leaf type {
           type enumeration {
             enum read { value 1; }
             enum write { value 2; }
             enum trap { value 3; }
             enum inform { value 4; }
        
           }
           mandatory true;
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-PROXY-MIB.snmpProxyType";
         }
         leaf context-engine-id {
           type snmp:engine-id;
           mandatory true;
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-PROXY-MIB.snmpProxyContextEngineID";
         }
         leaf context-name {
           type snmp:context-name;
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-PROXY-MIB.snmpProxyContextName";
         }
         leaf target-params-in {
           type snmp:identifier;
           description
             "The name of a target parameters list entry.
        
              Implementations MAY restrict the values of this
              leaf to be one of the available values of
              /snmp/target-params/name in a valid configuration.";
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-PROXY-MIB.snmpProxyTargetParamsIn";
         }
         leaf single-target-out {
           when "../type = 'read' or ../type = 'write'";
           type snmp:identifier;
           description
             "Implementations MAY restrict the values of this leaf
              to be one of the available values of /snmp/target/name in
              a valid configuration.";
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-PROXY-MIB.snmpProxySingleTargetOut";
         }
         leaf multiple-target-out {
           when "../type = 'trap' or ../type = 'inform'";
           type snmp:tag-value;
           description
             "Implementations MAY restrict the values of this leaf
              to be one of the available values of /snmp/target/tag in
              a valid configuration.";
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-PROXY-MIB.snmpProxyMultipleTargetOut";
         }
       }
     }
   }
        

<CODE ENDS>

<コード終了>

4.8. Submodule 'ietf-snmp-community'
4.8. サブモジュール「ietf-snmp-community」

<CODE BEGINS> file "ietf-snmp-community.yang"

<CODE BEGINS>ファイル "ietf-snmp-community.yang"

submodule ietf-snmp-community {

サブモジュールietf-snmp-community {

     belongs-to ietf-snmp {
       prefix snmp;
     }
        
     import ietf-netconf-acm {
       prefix nacm;
     }
        
     include ietf-snmp-common;
     include ietf-snmp-target;
     include ietf-snmp-proxy;
        

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

組織「IETF NETMOD(NETCONFデータモデリング言語)ワーキンググループ」;

     contact
       "WG Web:   <http://tools.ietf.org/wg/netmod/>
        WG List:  <mailto:netmod@ietf.org>
        
        WG Chair: Thomas Nadeau
                  <mailto:tnadeau@lucidvision.com>
        
        WG Chair: Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>
        
        Editor:   Martin Bjorklund
                  <mailto:mbj@tail-f.com>
        
        Editor:   Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>";
        

description "This submodule contains a collection of YANG definitions for configuring community-based SNMP.

説明「このサブモジュールには、コミュニティベースのSNMPを構成するためのYANG定義のコレクションが含まれています。

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

Copyright(c)2014 IETF Trustおよびコードの作成者として識別された人物。全著作権所有。

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).

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 7407; see the RFC itself for full legal notices.";

このYANGモジュールのこのバージョンはRFC 7407の一部です。完全な法的通知については、RFC自体を参照してください。 ";

reference "RFC 3584: Coexistence between Version 1, Version 2, and Version 3 of the Internet-standard Network Management Framework";

reference "RFC 3584: Coexistence between Version 1, Version 2, and Version 3 of the Internet-standard Network Management Framework";

     revision 2014-12-10 {
       description
         "Initial revision.";
       reference
         "RFC 7407: A YANG Data Model for SNMP Configuration";
     }
        
     augment /snmp:snmp {
        
       list community {
         key index;
        
         description
           "List of communities.";
         reference
           "RFC 3584: Coexistence between Version 1, Version 2,
              and Version 3 of the Internet-standard
              Network Management Framework.
              SNMP-COMMUNITY-MIB.snmpCommunityTable";
        
         leaf index {
           type snmp:identifier;
           description
             "Index into the community list.";
           reference
             "RFC 3584: Coexistence between Version 1, Version 2,
                and Version 3 of the Internet-standard
                Network Management Framework.
                SNMP-COMMUNITY-MIB.snmpCommunityIndex";
         }
         choice name {
           nacm:default-deny-all;
           description
             "The community name, specified as either a string or
              a binary value.  The binary name is used when the
              community name contains characters that are not legal
              in a string.
        
              If not set, the value of 'security-name' is operationally
              used as the snmpCommunityName.";
           reference
             "RFC 3584: Coexistence between Version 1, Version 2,
                and Version 3 of the Internet-standard
                Network Management Framework.
                SNMP-COMMUNITY-MIB.snmpCommunityName";
           leaf text-name {
             type string;
             description
               "A community name that can be represented as a
                YANG string.";
           }
           leaf binary-name {
             type binary;
             description
               "A community name represented as a binary value.";
           }
         }
         leaf security-name {
           type snmp:security-name;
           mandatory true;
           nacm:default-deny-all;
           description
             "The snmpCommunitySecurityName of this entry.";
           reference
             "RFC 3584: Coexistence between Version 1, Version 2,
                and Version 3 of the Internet-standard
                Network Management Framework.
                SNMP-COMMUNITY-MIB.snmpCommunitySecurityName";
        
         }
         leaf engine-id {
           if-feature snmp:proxy;
           type snmp:engine-id;
           description
             "If not set, the value of the local SNMP engine is
              operationally used by the device.";
           reference
             "RFC 3584: Coexistence between Version 1, Version 2,
                and Version 3 of the Internet-standard
                Network Management Framework.
                SNMP-COMMUNITY-MIB.snmpCommunityContextEngineID";
         }
         leaf context {
           type snmp:context-name;
           default "";
           description
             "The context in which management information is accessed
              when using the community string specified by this entry.";
           reference
             "RFC 3584: Coexistence between Version 1, Version 2,
                and Version 3 of the Internet-standard
                Network Management Framework.
                SNMP-COMMUNITY-MIB.snmpCommunityContextName";
         }
         leaf target-tag {
           type snmp:tag-value;
           description
             "Used to limit access for this community to the specified
              targets.
        
              Implementations MAY restrict the values of this leaf
              to be one of the available values of /snmp/target/tag in
              a valid configuration.";
           reference
             "RFC 3584: Coexistence between Version 1, Version 2,
                and Version 3 of the Internet-standard
                Network Management Framework.
                SNMP-COMMUNITY-MIB.snmpCommunityTransportTag";
         }
       }
     }
        
     grouping v1-target-params {
       container v1 {
         description
           "SNMPv1 parameters type.
            Represents snmpTargetParamsMPModel '0',
            snmpTargetParamsSecurityModel '1', and
            snmpTargetParamsSecurityLevel 'noAuthNoPriv'.";
         leaf security-name {
           type snmp:security-name;
           mandatory true;
           description
             "Implementations MAY restrict the values of this leaf
              to be one of the available values of
              /snmp/community/security-name in a valid configuration.";
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-TARGET-MIB.snmpTargetParamsSecurityName";
         }
       }
     }
        
     grouping v2c-target-params {
       container v2c {
         description
           "SNMPv2 community parameters type.
            Represents snmpTargetParamsMPModel '1',
            snmpTargetParamsSecurityModel '2', and
            snmpTargetParamsSecurityLevel 'noAuthNoPriv'.";
         leaf security-name {
           type snmp:security-name;
           mandatory true;
           description
             "Implementations MAY restrict the values of this leaf
              to be one of the available values of
              /snmp/community/security-name in a valid configuration.";
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-TARGET-MIB.snmpTargetParamsSecurityName";
         }
       }
     }
        
     augment /snmp:snmp/snmp:target-params/snmp:params {
       case v1 {
         uses v1-target-params;
       }
       case v2c {
         uses v2c-target-params;
       }
     }
     augment /snmp:snmp/snmp:target {
       when "snmp:v1 or snmp:v2c";
       leaf mms {
         type union {
           type enumeration {
             enum "unknown" { value 0; }
           }
           type int32 {
             range "484..max";
           }
         }
         default "484";
         description
           "The maximum message size.";
         reference
           "RFC 3584: Coexistence between Version 1, Version 2,
              and Version 3 of the Internet-standard
              Network Management Framework.
              SNMP-COMMUNITY-MIB.snmpTargetAddrMMS";
       }
     }
        

}

<CODE ENDS>

<コード終了>

4.9. Submodule 'ietf-snmp-vacm'
4.9. サブモジュール「ietf-snmp-vacm」

<CODE BEGINS> file "ietf-snmp-vacm.yang"

<CODE BEGINS>ファイル "ietf-snmp-vacm.yang"

submodule ietf-snmp-vacm {

サブモジュールietf-snmp-vacm {

     belongs-to ietf-snmp {
       prefix snmp;
     }
        

include ietf-snmp-common;

ietf-snmp-commonを含めます。

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

     contact
       "WG Web:   <http://tools.ietf.org/wg/netmod/>
        WG List:  <mailto:netmod@ietf.org>
        
        WG Chair: Thomas Nadeau
                  <mailto:tnadeau@lucidvision.com>
        
        WG Chair: Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>
        
        Editor:   Martin Bjorklund
                  <mailto:mbj@tail-f.com>
        
        Editor:   Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>";
        

description "This submodule contains a collection of YANG definitions for configuring the View-based Access Control Model (VACM) of SNMP.

説明「このサブモジュールには、SNMPのビューベースのアクセス制御モデル(VACM)を構成するためのYANG定義のコレクションが含まれています。

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

Copyright(c)2014 IETF Trustおよびコードの作成者として識別された人物。全著作権所有。

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).

ソースおよびバイナリ形式での再配布および使用は、変更の有無にかかわらず、IETF文書に関連するIETFトラストの法的規定のセクション4.cに記載されているSimplified BSD Licenseに従い、それに含まれるライセンス条項に従って許可されます( http://trustee.ietf.org/license-info)。

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

このYANGモジュールのこのバージョンはRFC 7407の一部です。完全な法的通知については、RFC自体を参照してください。 ";

reference "RFC 3415: View-based Access Control Model (VACM) for the Simple Network Management Protocol (SNMP)";

「RFC 3415:簡易ネットワーク管理プロトコル(SNMP)のビューベースのアクセス制御モデル(VACM)」を参照してください。

     revision 2014-12-10 {
       description
         "Initial revision.";
       reference
         "RFC 7407: A YANG Data Model for SNMP Configuration";
     }
        
     typedef view-name {
       type snmp:identifier;
       description
         "The view-name type represents an SNMP VACM view name.";
     }
        
     typedef group-name {
       type snmp:identifier;
       description
         "The group-name type represents an SNMP VACM group name.";
        

}

}

     augment /snmp:snmp {
        
       container vacm {
         description
           "Configuration of the View-based Access Control Model.";
        
         list group {
           key name;
           description
             "VACM groups.
        
              This data model has a different structure than the MIB.
              Groups are explicitly defined in this list, and group
              members are defined in the 'member' list (mapped to
              vacmSecurityToGroupTable), and access for the group is
              defined in the 'access' list (mapped to
              vacmAccessTable).";
           reference
             "RFC 3415: View-based Access Control Model (VACM) for the
                Simple Network Management Protocol (SNMP).
                SNMP-VIEW-BASED-ACM-MIB.vacmSecurityToGroupTable
                SNMP-VIEW-BASED-ACM-MIB.vacmAccessTable";
        
           leaf name {
             type group-name;
             description
               "The name of this VACM group.";
             reference
               "RFC 3415: View-based Access Control Model (VACM) for the
                  Simple Network Management Protocol (SNMP).
                  SNMP-VIEW-BASED-ACM-MIB.vacmGroupName";
           }
        
           list member {
             key "security-name";
             description
               "A member of this VACM group.
        
                A specific combination of security-name and
                security-model MUST NOT be present in more than
                one group.";
             reference
               "RFC 3415: View-based Access Control Model (VACM) for the
                  Simple Network Management Protocol (SNMP).
                  SNMP-VIEW-BASED-ACM-MIB.vacmSecurityToGroupTable";
        
             leaf security-name {
               type snmp:security-name;
               description
                 "The securityName of a group member.";
               reference
                 "RFC 3415: View-based Access Control Model (VACM) for
                    the Simple Network Management Protocol (SNMP).
                    SNMP-VIEW-BASED-ACM-MIB.vacmSecurityName";
             }
        
             leaf-list security-model {
               type snmp:security-model;
               min-elements 1;
               description
                 "The security models under which this security-name
                  is a member of this group.";
               reference
                 "RFC 3415: View-based Access Control Model (VACM) for
                    the Simple Network Management Protocol (SNMP).
                    SNMP-VIEW-BASED-ACM-MIB.vacmSecurityModel";
             }
           }
        
           list access {
             key "context security-model security-level";
             description
               "Definition of access right for groups.";
             reference
               "RFC 3415: View-based Access Control Model (VACM) for
                  the Simple Network Management Protocol (SNMP).
                  SNMP-VIEW-BASED-ACM-MIB.vacmAccessTable";
        
             leaf context {
               type snmp:context-name;
               description
                 "The context (prefix) under which the access rights
                  apply.";
               reference
                 "RFC 3415: View-based Access Control Model (VACM) for
                    the Simple Network Management Protocol (SNMP).
                    SNMP-VIEW-BASED-ACM-MIB.vacmAccessContextPrefix";
             }
        
             leaf context-match {
               type enumeration {
                 enum exact { value 1; }
                 enum prefix { value 2; }
               }
               default exact;
               reference
                 "RFC 3415: View-based Access Control Model (VACM) for
                    the Simple Network Management Protocol (SNMP).
                    SNMP-VIEW-BASED-ACM-MIB.vacmAccessContextMatch";
             }
        
             leaf security-model {
               type snmp:security-model-or-any;
               description
                 "The security model under which the access rights
                 apply.";
               reference
                 "RFC 3415: View-based Access Control Model (VACM) for
                    the Simple Network Management Protocol (SNMP).
                    SNMP-VIEW-BASED-ACM-MIB.vacmAccessSecurityModel";
             }
        
             leaf security-level {
               type snmp:security-level;
               description
                 "The minimum security level under which the access
                  rights apply.";
               reference
                 "RFC 3415: View-based Access Control Model (VACM) for
                    the Simple Network Management Protocol (SNMP).
                    SNMP-VIEW-BASED-ACM-MIB.vacmAccessSecurityLevel";
             }
        
             leaf read-view {
               type view-name;
               description
                 "The name of the MIB view of the SNMP context
                  authorizing read access.  If this leaf does not
                  exist in a configuration, it maps to a zero-length
                  vacmAccessReadViewName.
        
                  Implementations MAY restrict the values of this
                  leaf to be one of the available values of
                  /snmp/vacm/view/name in a valid configuration.";
               reference
                 "RFC 3415: View-based Access Control Model (VACM) for
                    the Simple Network Management Protocol (SNMP).
                    SNMP-VIEW-BASED-ACM-MIB.vacmAccessReadViewName";
             }
        
             leaf write-view {
               type view-name;
        

description "The name of the MIB view of the SNMP context authorizing write access. If this leaf does not exist in a configuration, it maps to a zero-length vacmAccessWriteViewName.

説明 "書き込みアクセスを許可するSNMPコンテキストのMIBビューの名前。このリーフが構成に存在しない場合、長さがゼロのvacmAccessWriteViewNameにマップされます。

                  Implementations MAY restrict the values of this
                  leaf to be one of the available values of
                  /snmp/vacm/view/name in a valid configuration.";
               reference
                 "RFC 3415: View-based Access Control Model (VACM) for
                    the Simple Network Management Protocol (SNMP).
                    SNMP-VIEW-BASED-ACM-MIB.vacmAccessWriteViewName";
             }
        
             leaf notify-view {
               type view-name;
               description
                 "The name of the MIB view of the SNMP context
                  authorizing notify access.  If this leaf does not
                  exist in a configuration, it maps to a zero-length
                  vacmAccessNotifyViewName.
        
                  Implementations MAY restrict the values of this
                  leaf to be one of the available values of
                  /snmp/vacm/view/name in a valid configuration.";
               reference
                 "RFC 3415: View-based Access Control Model (VACM) for
                      the Simple Network Management Protocol (SNMP).
                      SNMP-VIEW-BASED-ACM-MIB.vacmAccessNotifyViewName";
             }
           }
         }
        
         list view {
           key name;
           description
             "Definition of MIB views.";
           reference
             "RFC 3415: View-based Access Control Model (VACM) for
                the Simple Network Management Protocol (SNMP).
                SNMP-VIEW-BASED-ACM-MIB.vacmViewTreeFamilyTable";
        
           leaf name {
             type view-name;
             description
               "The name of this VACM MIB view.";
        
             reference
               "RFC 3415: View-based Access Control Model (VACM) for
                  the Simple Network Management Protocol (SNMP).
                  SNMP-VIEW-BASED-ACM-MIB.vacmViewTreeFamilyName";
           }
        
           leaf-list include {
             type snmp:wildcard-object-identifier;
             description
               "A family of subtrees included in this MIB view.";
             reference
                 "RFC 3415: View-based Access Control Model (VACM) for
                    the Simple Network Management Protocol (SNMP).
                    SNMP-VIEW-BASED-ACM-MIB.vacmViewTreeFamilySubtree
                    SNMP-VIEW-BASED-ACM-MIB.vacmViewTreeFamilyMask
                    SNMP-VIEW-BASED-ACM-MIB.vacmViewTreeFamilyType";
           }
        
           leaf-list exclude {
             type snmp:wildcard-object-identifier;
             description
               "A family of subtrees excluded from this MIB view.";
             reference
               "RFC 3415: View-based Access Control Model (VACM) for
                  the Simple Network Management Protocol (SNMP).
                  SNMP-VIEW-BASED-ACM-MIB.vacmViewTreeFamilySubtree
                  SNMP-VIEW-BASED-ACM-MIB.vacmViewTreeFamilyMask
                  SNMP-VIEW-BASED-ACM-MIB.vacmViewTreeFamilyType";
           }
         }
       }
     }
   }
        

<CODE ENDS>

<コード終了>

4.10. Submodule 'ietf-snmp-usm'
4.10. サブモジュール「ietf-snmp-usm」

This YANG submodule imports YANG extensions from [RFC6536].

このYANGサブモジュールは、[RFC6536]からYANG拡張機能をインポートします。

<CODE BEGINS> file "ietf-snmp-usm.yang"

<CODE BEGINS>ファイル "ietf-snmp-usm.yang"

submodule ietf-snmp-usm {

submodule ietf-snmp-usm {

     belongs-to ietf-snmp {
       prefix snmp;
     }
     import ietf-yang-types {
       prefix yang;
     }
     import ietf-netconf-acm {
       prefix nacm;
     }
        
     include ietf-snmp-common;
     include ietf-snmp-target;
     include ietf-snmp-proxy;
        

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

     contact
       "WG Web:   <http://tools.ietf.org/wg/netmod/>
        WG List:  <mailto:netmod@ietf.org>
        
        WG Chair: Thomas Nadeau
                  <mailto:tnadeau@lucidvision.com>
        
        WG Chair: Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>
        
        Editor:   Martin Bjorklund
                  <mailto:mbj@tail-f.com>
        
        Editor:   Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>";
        

description "This submodule contains a collection of YANG definitions for configuring the User-based Security Model (USM) of SNMP.

description "This submodule contains a collection of YANG definitions for configuring the User-based Security Model (USM) of SNMP.

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

Copyright(c)2014 IETF Trustおよびコードの作成者として識別された人物。全著作権所有。

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).

ソースおよびバイナリ形式での再配布および使用は、変更の有無にかかわらず、IETF文書に関連するIETFトラストの法的規定のセクション4.cに記載されているSimplified BSD Licenseに従い、それに含まれるライセンス条項に従って許可されます( http://trustee.ietf.org/license-info)。

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

このYANGモジュールのこのバージョンはRFC 7407の一部です。完全な法的通知については、RFC自体を参照してください。 ";

reference "RFC 3414: User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3)";

reference "RFC 3414: User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3)";

     revision 2014-12-10 {
       description
         "Initial revision.";
       reference
         "RFC 7407: A YANG Data Model for SNMP Configuration";
     }
        
     grouping key {
       leaf key {
         type yang:hex-string;
         mandatory true;
         nacm:default-deny-all;
         description
           "Localized key specified as a list of colon-specified
            hexadecimal octets.";
       }
     }
        
     grouping user-list {
       list user {
         key "name";
        

reference "RFC 3414: User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3). SNMP-USER-BASED-SM-MIB.usmUserTable";

reference "RFC 3414: User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3). SNMP-USER-BASED-SM-MIB.usmUserTable";

         leaf name {
           type snmp:identifier;
           reference
             "RFC 3414: User-based Security Model (USM) for version 3
                of the Simple Network Management Protocol (SNMPv3).
                SNMP-USER-BASED-SM-MIB.usmUserName";
         }
         container auth {
           presence "enables authentication";
           description
             "Enables authentication of the user.";
           choice protocol {
             mandatory true;
             reference
               "RFC 3414: User-based Security Model (USM) for version 3
                  of the Simple Network Management Protocol (SNMPv3).
                  SNMP-USER-BASED-SM-MIB.usmUserAuthProtocol";
        
             container md5 {
               uses key;
               reference
                 "RFC 3414: User-based Security Model (USM) for
                    version 3 of the Simple Network Management Protocol
                    (SNMPv3).
                    SNMP-USER-BASED-SM-MIB.usmHMACMD5AuthProtocol";
             }
             container sha {
               uses key;
               reference
                 "RFC 3414: User-based Security Model (USM) for
                    version 3 of the Simple Network Management Protocol
                    (SNMPv3).
                    SNMP-USER-BASED-SM-MIB.usmHMACSHAAuthProtocol";
             }
           }
         }
         container priv {
           must "../auth" {
             error-message
               "when privacy (confidentiality) is used, "
             + "authentication must also be used";
           }
           presence "enables encryption";
           description
             "Enables encryption of SNMP messages.";
        
           choice protocol {
             mandatory true;
             reference
               "RFC 3414: User-based Security Model (USM) for version 3
                  of the Simple Network Management Protocol (SNMPv3).
                  SNMP-USER-BASED-SM-MIB.usmUserPrivProtocol";
             container des {
               uses key;
               reference
                 "RFC 3414: User-based Security Model (USM) for
                    version 3 of the Simple Network Management Protocol
                    (SNMPv3).
                    SNMP-USER-BASED-SM-MIB.usmDESPrivProtocol";
             }
             container aes {
               uses key;
        
               reference
                 "RFC 3826: The Advanced Encryption Standard (AES)
                    Cipher Algorithm in the SNMP User-based Security
                    Model.
                    SNMP-USM-AES-MIB.usmAesCfb128Protocol";
             }
           }
         }
       }
     }
        
     augment /snmp:snmp {
        
       container usm {
         description
           "Configuration of the User-based Security Model.";
         container local {
           uses user-list;
         }
        
         list remote {
           key "engine-id";
        
           leaf engine-id {
             type snmp:engine-id;
             reference
               "RFC 3414: User-based Security Model (USM) for version 3
                  of the Simple Network Management Protocol (SNMPv3).
                  SNMP-USER-BASED-SM-MIB.usmUserEngineID";
           }
        
           uses user-list;
         }
       }
     }
        
     grouping usm-target-params {
       container usm {
         description
           "User-based SNMPv3 parameters type.
        
            Represents snmpTargetParamsMPModel '3' and
            snmpTargetParamsSecurityModel '3'.";
         leaf user-name {
           type snmp:security-name;
           mandatory true;
        
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-TARGET-MIB.snmpTargetParamsSecurityName";
         }
         leaf security-level {
           type snmp:security-level;
           mandatory true;
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-TARGET-MIB.snmpTargetParamsSecurityLevel";
         }
       }
     }
        
     augment /snmp:snmp/snmp:target-params/snmp:params {
       case usm {
         uses usm-target-params;
       }
     }
        

}

}

<CODE ENDS>

<コード終了>

4.11. Submodule 'ietf-snmp-tsm'
4.11. サブモジュール「ietf-snmp-tsm」

<CODE BEGINS> file "ietf-snmp-tsm.yang"

<CODE BEGINS> file "ietf-snmp-tsm.yang"

submodule ietf-snmp-tsm {

サブモジュールietf-snmp-tsm {

     belongs-to ietf-snmp {
       prefix snmp;
     }
        
     include ietf-snmp-common;
     include ietf-snmp-target;
     include ietf-snmp-proxy;
        

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

     contact
       "WG Web:   <http://tools.ietf.org/wg/netmod/>
        WG List:  <mailto:netmod@ietf.org>
        WG Chair: Thomas Nadeau
                  <mailto:tnadeau@lucidvision.com>
        
        WG Chair: Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>
        
        Editor:   Martin Bjorklund
                  <mailto:mbj@tail-f.com>
        
        Editor:   Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>";
        

description "This submodule contains a collection of YANG definitions for configuring the Transport Security Model (TSM) of SNMP.

description "This submodule contains a collection of YANG definitions for configuring the Transport Security Model (TSM) of SNMP.

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

Copyright(c)2014 IETF Trustおよびコードの作成者として識別された人物。全著作権所有。

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).

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 7407; see the RFC itself for full legal notices.";

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

reference "RFC 5591: Transport Security Model for the Simple Network Management Protocol (SNMP)";

reference "RFC 5591: Transport Security Model for the Simple Network Management Protocol (SNMP)";

     revision 2014-12-10 {
       description
         "Initial revision.";
       reference
         "RFC 7407: A YANG Data Model for SNMP Configuration";
     }
        
     feature tsm {
       description
         "A server implements this feature if it supports the
         Transport Security Model for SNMP.";
       reference
         "RFC 5591: Transport Security Model for the
            Simple Network Management Protocol (SNMP)";
     }
     augment /snmp:snmp {
       if-feature tsm;
       container tsm {
         description
           "Configuration of the Transport Security Model.";
        
         leaf use-prefix {
           type boolean;
           default false;
           reference
             "RFC 5591: Transport Security Model for the Simple
                Network Management Protocol (SNMP).
                SNMP-TSM-MIB.snmpTsmConfigurationUsePrefix";
         }
       }
     }
        
     grouping tsm-target-params {
       container tsm {
         description
           "Transport-based security SNMPv3 parameters type.
        
            Represents snmpTargetParamsMPModel '3' and
            snmpTargetParamsSecurityModel '4'.";
         leaf security-name {
           type snmp:security-name;
           mandatory true;
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-TARGET-MIB.snmpTargetParamsSecurityName";
         }
         leaf security-level {
           type snmp:security-level;
           mandatory true;
           reference
             "RFC 3413: Simple Network Management Protocol (SNMP).
                Applications.
                SNMP-TARGET-MIB.snmpTargetParamsSecurityLevel";
         }
       }
     }
        
     augment /snmp:snmp/snmp:target-params/snmp:params {
       if-feature tsm;
       case tsm {
         uses tsm-target-params;
       }
        

}

}

<CODE ENDS>

<CODE ENDS>

4.12. Submodule 'ietf-snmp-tls'
4.12. Submodule 'ietf-snmp-tls'

<CODE BEGINS> file "ietf-snmp-tls.yang"

<CODE BEGINS> file "ietf-snmp-tls.yang"

submodule ietf-snmp-tls {

submodule ietf-snmp-tls {

     belongs-to ietf-snmp {
       prefix snmp;
     }
        
     import ietf-inet-types {
       prefix inet;
     }
     import ietf-x509-cert-to-name {
       prefix x509c2n;
     }
        
     include ietf-snmp-common;
     include ietf-snmp-engine;
     include ietf-snmp-target;
        

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

組織「IETF NETMOD(NETCONFデータモデリング言語)ワーキンググループ」;

     contact
       "WG Web:   <http://tools.ietf.org/wg/netmod/>
        WG List:  <mailto:netmod@ietf.org>
        
        WG Chair: Thomas Nadeau
                  <mailto:tnadeau@lucidvision.com>
        
        WG Chair: Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>
        
        Editor:   Martin Bjorklund
                  <mailto:mbj@tail-f.com>
        
        Editor:   Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>";
        

description "This submodule contains a collection of YANG definitions for configuring the Transport Layer Security Transport Model (TLSTM) of SNMP.

説明「このサブモジュールには、SNMPのトランスポート層セキュリティトランスポートモデル(TLSTM)を構成するためのYANG定義のコレクションが含まれています。

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

Copyright(c)2014 IETF Trustおよびコードの作成者として識別された人物。全著作権所有。

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).

ソースおよびバイナリ形式での再配布および使用は、変更の有無にかかわらず、IETF文書に関連するIETFトラストの法的規定のセクション4.cに記載されているSimplified BSD Licenseに従い、それに含まれるライセンス条項に従って許可されます( http://trustee.ietf.org/license-info)。

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

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

reference "RFC 6353: Transport Layer Security (TLS) Transport Model for the Simple Network Management Protocol (SNMP)";

「RFC 6353:簡易ネットワーク管理プロトコル(SNMP)のトランスポート層セキュリティ(TLS)トランスポートモデル」を参照してください。

     revision 2014-12-10 {
       description
         "Initial revision.";
       reference
         "RFC 7407: A YANG Data Model for SNMP Configuration";
     }
        
     feature tlstm {
       description
         "A server implements this feature if it supports the
         Transport Layer Security Transport Model for SNMP.";
       reference
         "RFC 6353: Transport Layer Security (TLS) Transport Model for
            the Simple Network Management Protocol (SNMP)";
     }
        
     augment /snmp:snmp/snmp:engine/snmp:listen/snmp:transport {
       if-feature tlstm;
       case tls {
         container tls {
           description
             "A list of IPv4 and IPv6 addresses and ports to which the
              engine listens for SNMP messages over TLS.";
        
           leaf ip {
             type inet:ip-address;
             mandatory true;
             description
               "The IPv4 or IPv6 address on which the engine listens
                for SNMP messages over TLS.";
           }
           leaf port {
             type inet:port-number;
             description
               "The TCP port on which the engine listens for SNMP
                messages over TLS.
        
                If the port is not configured, an engine that
                acts as a Command Responder uses port 10161, and
                an engine that acts as a Notification Receiver
                uses port 10162.";
           }
         }
       }
       case dtls {
         container dtls {
           description
             "A list of IPv4 and IPv6 addresses and ports to which the
              engine listens for SNMP messages over DTLS.";
        
           leaf ip {
             type inet:ip-address;
             mandatory true;
             description
               "The IPv4 or IPv6 address on which the engine listens
                for SNMP messages over DTLS.";
           }
           leaf port {
             type inet:port-number;
             description
               "The UDP port on which the engine listens for SNMP
                messages over DTLS.
        
                If the port is not configured, an engine that
                acts as a Command Responder uses port 10161, and
                an engine that acts as a Notification Receiver
                uses port 10162.";
           }
         }
       }
     }
     augment /snmp:snmp {
       if-feature tlstm;
       container tlstm {
         uses x509c2n:cert-to-name {
           description
             "Defines how certificates are mapped to names.  The
              resulting name is used as a security name.";
           refine cert-to-name/map-type {
             description
               "Mappings that use the snmpTlstmCertToTSNData column
                need to augment the cert-to-name list with
                additional configuration objects corresponding
                to the snmpTlstmCertToTSNData value.  Such objects
                should use the 'when' statement to make them
                conditional based on the map-type.";
           }
         }
       }
     }
        
     grouping tls-transport {
       leaf ip {
         type inet:host;
         mandatory true;
         reference
           "RFC 3413: Simple Network Management Protocol (SNMP).
              Applications.
              SNMP-TARGET-MIB.snmpTargetAddrTAddress
            RFC 6353: Transport Layer Security (TLS) Transport Model
              for the Simple Network Management Protocol (SNMP).
              SNMP-TLS-TM-MIB.SnmpTLSAddress";
       }
       leaf port {
         type inet:port-number;
         default 10161;
         reference
           "RFC 3413: Simple Network Management Protocol (SNMP).
              Applications.
              SNMP-TARGET-MIB.snmpTargetAddrTAddress
            RFC 6353: Transport Layer Security (TLS) Transport Model
              for the Simple Network Management Protocol (SNMP).
              SNMP-TLS-TM-MIB.SnmpTLSAddress";
       }
       leaf client-fingerprint {
         type x509c2n:tls-fingerprint;
         reference
           "RFC 6353: Transport Layer Security (TLS) Transport Model
              for the Simple Network Management Protocol (SNMP).
        
              SNMP-TLS-TM-MIB.snmpTlstmParamsClientFingerprint";
       }
       leaf server-fingerprint {
         type x509c2n:tls-fingerprint;
         reference
           "RFC 6353: Transport Layer Security (TLS) Transport Model
              for the Simple Network Management Protocol (SNMP).
              SNMP-TLS-TM-MIB.snmpTlstmAddrServerFingerprint";
       }
       leaf server-identity {
         type snmp:admin-string;
         reference
           "RFC 6353: Transport Layer Security (TLS) Transport Model
              for the Simple Network Management Protocol (SNMP).
              SNMP-TLS-TM-MIB.snmpTlstmAddrServerIdentity";
       }
     }
        
     augment /snmp:snmp/snmp:target/snmp:transport {
       if-feature tlstm;
       case tls {
         reference
           "RFC 6353: Transport Layer Security (TLS) Transport Model
              for the Simple Network Management Protocol (SNMP).
              SNMP-TLS-TM-MIB.snmpTLSTCPDomain";
         container tls {
           uses tls-transport;
         }
       }
     }
        
     augment /snmp:snmp/snmp:target/snmp:transport {
       if-feature tlstm;
       case dtls {
         reference
           "RFC 6353: Transport Layer Security (TLS) Transport Model
              for the Simple Network Management Protocol (SNMP).
              SNMP-TLS-TM-MIB.snmpDTLSUDPDomain";
         container dtls {
           uses tls-transport;
         }
       }
     }
   }
        

<CODE ENDS>

<コード終了>

4.13. Submodule 'ietf-snmp-ssh'
4.13. サブモジュール「ietf-snmp-ssh」

<CODE BEGINS> file "ietf-snmp-ssh.yang"

<CODE BEGINS>ファイル "ietf-snmp-ssh.yang"

submodule ietf-snmp-ssh {

サブモジュールietf-snmp-ssh {

     belongs-to ietf-snmp {
       prefix snmp;
     }
        
     import ietf-inet-types {
       prefix inet;
     }
        
     include ietf-snmp-common;
     include ietf-snmp-engine;
     include ietf-snmp-target;
        

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

organization "IETF NETMOD (NETCONF Data Modeling Language) Working Group";

     contact
       "WG Web:   <http://tools.ietf.org/wg/netmod/>
        WG List:  <mailto:netmod@ietf.org>
        
        WG Chair: Thomas Nadeau
                  <mailto:tnadeau@lucidvision.com>
        
        WG Chair: Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>
        
        Editor:   Martin Bjorklund
                  <mailto:mbj@tail-f.com>
        
        Editor:   Juergen Schoenwaelder
                  <mailto:j.schoenwaelder@jacobs-university.de>";
        

description "This submodule contains a collection of YANG definitions for configuring the Secure Shell Transport Model (SSHTM) of SNMP.

説明「このサブモジュールには、SNMPのSecure Shell Transport Model(SSHTM)を構成するためのYANG定義のコレクションが含まれています。

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

Copyright(c)2014 IETF Trustおよびコードの作成者として識別された人物。全著作権所有。

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).

ソースおよびバイナリ形式での再配布および使用は、変更の有無にかかわらず、IETF文書に関連するIETFトラストの法的規定のセクション4.cに記載されているSimplified BSD Licenseに従い、それに含まれるライセンス条項に従って許可されます( http://trustee.ietf.org/license-info)。

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

このYANGモジュールのこのバージョンはRFC 7407の一部です。完全な法的通知については、RFC自体を参照してください。 ";

reference "RFC 5592: Secure Shell Transport Model for the Simple Network Management Protocol (SNMP)";

「RFC 5592:簡易ネットワーク管理プロトコル(SNMP)のセキュアシェルトランスポートモデル」を参照してください。

     revision 2014-12-10 {
       description
         "Initial revision.";
       reference
         "RFC 7407: A YANG Data Model for SNMP Configuration";
     }
        
     feature sshtm {
       description
         "A server implements this feature if it supports the
         Secure Shell Transport Model for SNMP.";
       reference
         "RFC 5592: Secure Shell Transport Model for the
            Simple Network Management Protocol (SNMP)";
     }
        
     augment /snmp:snmp/snmp:engine/snmp:listen/snmp:transport {
       if-feature sshtm;
       case ssh {
         container ssh {
           description
             "The IPv4 or IPv6 address and port to which the
              engine listens for SNMP messages over SSH.";
        
           leaf ip {
             type inet:ip-address;
             mandatory true;
             description
               "The IPv4 or IPv6 address on which the engine listens
                for SNMP messages over SSH.";
           }
           leaf port {
             type inet:port-number;
             description
               "The TCP port on which the engine listens for SNMP
                messages over SSH.
        
                If the port is not configured, an engine that
                acts as a Command Responder uses port 5161, and
                an engine that acts as a Notification Receiver
                uses port 5162.";
           }
         }
       }
     }
        
     augment /snmp:snmp/snmp:target/snmp:transport {
       if-feature sshtm;
       case ssh {
         reference
           "RFC 5592: Secure Shell Transport Model for the
              Simple Network Management Protocol (SNMP).
              SNMP-SSH-TM-MIB.snmpSSHDomain";
         container ssh {
           leaf ip {
             type inet:host;
             mandatory true;
             reference
               "RFC 3413: Simple Network Management Protocol (SNMP).
                  Applications.
                  SNMP-TARGET-MIB.snmpTargetAddrTAddress
                RFC 5592: Secure Shell Transport Model for the
                  Simple Network Management Protocol (SNMP).
                  SNMP-SSH-TM-MIB.SnmpSSHAddress";
           }
           leaf port {
             type inet:port-number;
             default 5161;
             reference
               "RFC 3413: Simple Network Management Protocol (SNMP).
                  Applications.
                  SNMP-TARGET-MIB.snmpTargetAddrTAddress
                RFC 5592: Secure Shell Transport Model for the
                  Simple Network Management Protocol (SNMP).
                  SNMP-SSH-TM-MIB.SnmpSSHAddress";
           }
           leaf username {
             type string;
             reference
               "RFC 3413: Simple Network Management Protocol (SNMP).
                  Applications.
                  SNMP-TARGET-MIB.snmpTargetAddrTAddress
                RFC 5592: Secure Shell Transport Model for the
                  Simple Network Management Protocol (SNMP).
                  SNMP-SSH-TM-MIB.SnmpSSHAddress";
        
           }
         }
       }
     }
   }
        

<CODE ENDS>

<コード終了>

5. IANA Considerations
5. IANAに関する考慮事項

This document registers two URIs in the "IETF XML Registry" [RFC3688]. Following the format in RFC 3688, the following registrations have been made.

このドキュメントは、「IETF XMLレジストリ」[RFC3688]に2つのURIを登録します。 RFC 3688のフォーマットに従って、次の登録が行われました。

URI: urn:ietf:params:xml:ns:yang:ietf-snmp Registrant Contact: The NETMOD WG of the IETF. XML: N/A, the requested URI is an XML namespace.

URI:urn:ietf:params:xml:ns:yang:ietf-snmp登録者の連絡先:IETFのNETMOD WG。 XML:N / A、要求されたURIはXML名前空間です。

URI: urn:ietf:params:xml:ns:yang:ietf-x509-cert-to-name Registrant Contact: The NETMOD WG of the IETF. XML: N/A, the requested URI is an XML namespace.

URI:urn:ietf:params:xml:ns:yang:ietf-x509-cert-to-name登録者の連絡先:IETFのNETMOD WG。 XML:N / A、要求されたURIはXML名前空間です。

This document registers the following YANG modules in the "YANG Module Names" registry [RFC6020].

このドキュメントでは、「YANGモジュール名」レジストリ[RFC6020]に次のYANGモジュールを登録しています。

        name:         ietf-snmp
        namespace:    urn:ietf:params:xml:ns:yang:ietf-snmp
        prefix:       snmp
        reference:    RFC 7407
        

name: ietf-x509-cert-to-name namespace: urn:ietf:params:xml:ns:yang:ietf-x509-cert-to-name prefix: x509c2n reference: RFC 7407 The document registers the following YANG submodules in the "YANG Module Names" registry [RFC6020].

名前:ietf-x509-cert-to-name名前空間:urn:ietf:params:xml:ns:yang:ietf-x509-cert-to-nameプレフィックス:x509c2nリファレンス:RFC 7407このドキュメントでは、次のYANGサブモジュールを「YANGモジュール名」レジストリ[RFC6020]。

name: ietf-snmp-common parent: ietf-snmp reference: RFC 7407

name: ietf-snmp-common parent: ietf-snmp reference: RFC 7407

name: ietf-snmp-engine parent: ietf-snmp reference: RFC 7407 name: ietf-snmp-community parent: ietf-snmp reference: RFC 7407

name: ietf-snmp-engine parent: ietf-snmp reference: RFC 7407 name: ietf-snmp-community parent: ietf-snmp reference: RFC 7407

name: ietf-snmp-notification parent: ietf-snmp reference: RFC 7407

name: ietf-snmp-notification parent: ietf-snmp reference: RFC 7407

name: ietf-snmp-target parent: ietf-snmp reference: RFC 7407

名前:ietf-snmp-target親:ietf-snmp参照:RFC 7407

name: ietf-snmp-vacm parent: ietf-snmp reference: RFC 7407

name: ietf-snmp-vacm parent: ietf-snmp reference: RFC 7407

name: ietf-snmp-usm parent: ietf-snmp reference: RFC 7407

名前:ietf-snmp-usm親:ietf-snmp参照:RFC 7407

name: ietf-snmp-tsm parent: ietf-snmp reference: RFC 7407

名前:ietf-snmp-tsm親:ietf-snmp参照:RFC 7407

name: ietf-snmp-tls parent: ietf-snmp reference: RFC 7407

名前:ietf-snmp-tls親:ietf-snmp参照:RFC 7407

name: ietf-snmp-ssh parent: ietf-snmp reference: RFC 7407

名前:ietf-snmp-ssh親:ietf-snmp参照:RFC 7407

6. Security Considerations
6. Security Considerations

The YANG module and submodules defined in this memo are designed to be accessed via the NETCONF protocol [RFC6241]. The lowest NETCONF layer is the secure transport layer and the mandatory to implement secure transport is SSH [RFC6242]. The NETCONF access control model [RFC6536] provides the means to restrict access for particular NETCONF users to a pre-configured subset of all available NETCONF protocol operations and content.

このメモで定義されているYANGモジュールとサブモジュールは、NETCONFプロトコル[RFC6241]を介してアクセスされるように設計されています。最下位のNETCONFレイヤーはセキュアなトランスポートレイヤーであり、セキュアなトランスポートを実装するために必須なのはSSH [RFC6242]です。 NETCONFアクセス制御モデル[RFC6536]は、特定のNETCONFユーザーのアクセスを、利用可能なすべてのNETCONFプロトコル操作とコンテンツの事前構成済みサブセットに制限する手段を提供します。

There are a number of data nodes defined in the YANG module and submodules which are writable/creatable/deletable (i.e., config true, which is the default). These data nodes may be considered sensitive or vulnerable in some network environments. Write operations (e.g., edit-config) to these data nodes without proper protection can have a negative effect on network operations. These are the subtrees and data nodes and their sensitivity/vulnerability:

YANGモジュールとサブモジュールで定義された、書き込み可能/作成可能/削除可能なデータノードがいくつかあります(つまり、config true、デフォルトです)。これらのデータノードは、一部のネットワーク環境では機密または脆弱であると見なされる場合があります。適切な保護なしにこれらのデータノードに書き込み操作(edit-configなど)を行うと、ネットワーク操作に悪影響を与える可能性があります。これらは、サブツリーとデータノード、およびそれらの機密性/脆弱性です。

o The "/snmp/engine" subtree contains the configuration of general parameters of an SNMP engine such as the endpoints to listen on, the transports and SNMP versions enabled, or the engine's identity. Write access to this subtree should only be granted to entities configuring general SNMP engine parameters.

o "/ snmp / engine"サブツリーには、リッスンするエンドポイント、有効なトランスポートとSNMPバージョン、またはエンジンのIDなど、SNMPエンジンの一般的なパラメーターの構成が含まれています。このサブツリーへの書き込みアクセスは、一般的なSNMPエンジンパラメータを構成するエンティティにのみ許可する必要があります。

o The "/snmp/target" subtree contains the configuration of SNMP targets and, in particular, which transports to use and their security parameters. Write access to this subtree should only be granted to the security administrator and entities configuring SNMP notification forwarding behavior.

o 「/ snmp / target」サブツリーには、SNMPターゲットの構成、特に、使用するトランスポートとそのセキュリティパラメータが含まれています。このサブツリーへの書き込みアクセス権は、セキュリティ管理者とSNMP通知転送動作を構成するエンティティにのみ付与する必要があります。

o The "/snmp/notify" and "/snmp/notify-filter-profile" subtrees contain the configuration for the SNMP notification forwarding and filtering mechanism. Write access to these subtrees should only be granted to entities configuring SNMP notification forwarding behavior.

o 「/ snmp / notify」および「/ snmp / notify-filter-profile」サブツリーには、SNMP通知転送およびフィルタリングメカニズムの設定が含まれています。これらのサブツリーへの書き込みアクセスは、SNMP通知転送動作を構成するエンティティにのみ許可する必要があります。

o The "/snmp/proxy" subtree contains the configuration for SNMP proxies. Write access to this subtree should only be granted to entities configuring SNMP proxies.

o "/ snmp / proxy"サブツリーには、SNMPプロキシの構成が含まれています。このサブツリーへの書き込みアクセスは、SNMPプロキシを構成するエンティティにのみ許可する必要があります。

o The "/snmp/community" subtree contains the configuration of the Community-based Security Model. Write access to this subtree should only be granted to the security administrator.

o 「/ snmp / community」サブツリーには、コミュニティベースのセキュリティモデルの構成が含まれています。このサブツリーへの書き込みアクセス権は、セキュリティ管理者にのみ付与する必要があります。

o The "/snmp/usm" subtree contains the configuration of the User-based Security Model. Write access to this subtree should only be granted to the security administrator.

o "/ snmp / usm"サブツリーには、ユーザーベースのセキュリティモデルの構成が含まれています。このサブツリーへの書き込みアクセス権は、セキュリティ管理者にのみ付与する必要があります。

o The "/snmp/tsm" subtree contains the configuration of the Transport Layer Security (TLS) Transport Model for SNMP. Write access to this subtree should only be granted to the security administrator.

o "/ snmp / tsm"サブツリーには、SNMPのトランスポート層セキュリティ(TLS)トランスポートモデルの構成が含まれています。このサブツリーへの書き込みアクセス権は、セキュリティ管理者にのみ付与する必要があります。

o The "/snmp/tlstm" subtree contains the configuration of the SNMP transport over (D)TLS and, in particular, the configuration of how certificates are mapped to SNMP security names. Write access to this subtree should only be granted to the security administrator.

o "/ snmp / tlstm"サブツリーには、(D)TLSを介したSNMPトランスポートの構成、特に証明書がSNMPセキュリティ名にマップされる方法の構成が含まれています。このサブツリーへの書き込みアクセス権は、セキュリティ管理者にのみ付与する必要があります。

o The "/snmp/vacm" subtree contains the configuration of the View-based Access Control Model used by SNMP to authorize access to management information via SNMP. Write access to this subtree should only be granted to the security administrator.

o 「/ snmp / vacm」サブツリーには、SNMPを介した管理情報へのアクセスを許可するためにSNMPが使用するビューベースのアクセス制御モデルの構成が含まれています。このサブツリーへの書き込みアクセス権は、セキュリティ管理者にのみ付与する必要があります。

Some of the readable data nodes in the YANG module and submodules may be considered sensitive or vulnerable in some network environments. It is thus important to control read access (e.g., via get, get-config, or notification) to these data nodes. These are the subtrees and data nodes and their sensitivity/vulnerability:

YANGモジュールおよびサブモジュールの一部の読み取り可能なデータノードは、一部のネットワーク環境では機密または脆弱であると見なされる場合があります。したがって、これらのデータノードへの読み取りアクセスを制御することが重要です(たとえば、get、get-config、または通知を介して)。これらは、サブツリーとデータノード、およびそれらの機密性/脆弱性です。

o The "/snmp/engine" subtree exposes general information about an SNMP engine such as which version(s) of SNMP are enabled or which transports are enabled.

o The "/snmp/engine" subtree exposes general information about an SNMP engine such as which version(s) of SNMP are enabled or which transports are enabled.

o The "/snmp/target" subtree exposes information about which transports are used to reach certain SNMP targets and which transport-specific parameters are used.

o 「/ snmp / target」サブツリーは、特定のSNMPターゲットに到達するために使用されるトランスポート、および使用されるトランスポート固有のパラメーターに関する情報を公開します。

o The "/snmp/notify" and "/snmp/notify-filter-profile" subtrees expose information about how notifications are filtered and forwarded to notification targets.

o 「/ snmp / notify」および「/ snmp / notify-filter-profile」サブツリーは、通知がどのようにフィルタリングされ、通知ターゲットに転送されるかに関する情報を公開します。

o The "/snmp/proxy" subtree exposes information about proxy relationships.

o 「/ snmp / proxy」サブツリーは、プロキシ関係に関する情報を公開します。

o The "/snmp/community", "/snmp/usm", "/snmp/tsm", "/snmp/tlstm", and "/snmp/vacm" subtrees are specifically sensitive since they expose information about the authentication and authorization policy used by an SNMP engine.

o 「/ snmp / community」、「/ snmp / usm」、「/ snmp / tsm」、「/ snmp / tlstm」、および「/ snmp / vacm」サブツリーは、認証および認可ポリシーに関する情報を公開するため、特に機密性が高いSNMPエンジンによって使用されます。

Changes to the SNMP access control rules should be done in an atomic way (through a single edit-config or a single commit), or care must be taken that they are done in a sequence that does not temporarily open access to resources. Implementations supporting SNMP write access must ensure that any SNMP access control rule changes over NETCONF are also atomic to the SNMP instrumentation. In particular, changes involving an internal delete/create cycle (e.g., to move a user to a different group) must be done with sufficient protections such that even a power fail immediately after the delete does not leave the administrator locked out.

SNMPアクセス制御ルールの変更は、アトミックな方法で(単一のedit-configまたは単一のコミットを介して)行う必要があります。または、リソースへのアクセスを一時的に開かないシーケンスで行うように注意する必要があります。 SNMP書き込みアクセスをサポートする実装では、NETCONFを介したSNMPアクセスコントロールルールの変更も、SNMPインスツルメンテーションに対してアトミックであることを確認する必要があります。特に、内部の削除/作成サイクルを伴う変更(ユーザーを別のグループに移動するなど)は、削除直後に電源が落ちても管理者がロックアウトされないように、十分な保護を行って行う必要があります。

Security administrators need to ensure that NETCONF access control rules and SNMP access control rules implement a consistent security policy. Specifically, the SNMP access control rules should prevent accidental leakage of sensitive security parameters such as community strings. See the Security Considerations section of [RFC3584] for further details.

セキュリティ管理者は、NETCONFアクセスコントロールルールとSNMPアクセスコントロールルールが一貫したセキュリティポリシーを実装するようにする必要があります。具体的には、SNMPアクセスコントロールルールは、コミュニティストリングなどの機密性の高いセキュリティパラメータの偶発的な漏洩を防止する必要があります。詳細については、[RFC3584]のセキュリティに関する考慮事項のセクションを参照してください。

7. References
7. 参考文献
7.1. Normative References
7.1. 引用文献

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997, <http://www.rfc-editor.org/info/rfc2119>.

[RFC2119] Bradner、S。、「要件レベルを示すためにRFCで使用するキーワード」、BCP 14、RFC 2119、1997年3月、<http://www.rfc-editor.org/info/rfc2119>。

[RFC6020] Bjorklund, M., "YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)", RFC 6020, October 2010, <http://www.rfc-editor.org/info/rfc6020>.

[RFC6020] Bjorklund, M., "YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)", RFC 6020, October 2010, <http://www.rfc-editor.org/info/rfc6020>.

[RFC6241] Enns, R., Bjorklund, M., Schoenwaelder, J., and A. Bierman, "Network Configuration Protocol (NETCONF)", RFC 6241, June 2011, <http://www.rfc-editor.org/info/rfc6241>.

[RFC6241] Enns、R.、Bjorklund、M.、Schoenwaelder、J。、およびA. Bierman、「Network Configuration Protocol(NETCONF)」、RFC 6241、2011年6月、<http://www.rfc-editor.org / info / rfc6241>。

[RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure Shell (SSH)", RFC 6242, June 2011, <http://www.rfc-editor.org/info/rfc6242>.

[RFC6242] Wasserman、M。、「Using the NETCONF Protocol over Secure Shell(SSH)」、RFC 6242、2011年6月、<http://www.rfc-editor.org/info/rfc6242>。

[RFC6536] Bierman, A. and M. Bjorklund, "Network Configuration Protocol (NETCONF) Access Control Model", RFC 6536, March 2012, <http://www.rfc-editor.org/info/rfc6536>.

[RFC6536] Bierman、A。およびM. Bjorklund、「Network Configuration Protocol(NETCONF)Access Control Model」、RFC 6536、2012年3月、<http://www.rfc-editor.org/info/rfc6536>。

[RFC6991] Schoenwaelder, J., "Common YANG Data Types", RFC 6991, July 2013, <http://www.rfc-editor.org/info/rfc6991>.

[RFC6991] Schoenwaelder、J。、「Common YANG Data Types」、RFC 6991、2013年7月、<http://www.rfc-editor.org/info/rfc6991>。

7.2. Informative References
7.2. 参考引用

[RFC3411] Harrington, D., Presuhn, R., and B. Wijnen, "An Architecture for Describing Simple Network Management Protocol (SNMP) Management Frameworks", STD 62, RFC 3411, December 2002, <http://www.rfc-editor.org/info/rfc3411>.

[RFC3411] Harrington、D.、Presuhn、R。、およびB. Wijnen、「An Simple Describing for Simple Network Management Protocol(SNMP)Management Frameworks」、STD 62、RFC 3411、2002年12月、<http:// www。 rfc-editor.org/info/rfc3411>。

[RFC3412] Case, J., Harrington, D., Presuhn, R., and B. Wijnen, "Message Processing and Dispatching for the Simple Network Management Protocol (SNMP)", STD 62, RFC 3412, December 2002, <http://www.rfc-editor.org/info/rfc3412>.

[RFC3412] Case、J.、Harrington、D.、Presuhn、R。、およびB. Wijnen、「メッセージ処理および簡易ネットワーク管理プロトコル(SNMP)のディスパッチ」、STD 62、RFC 3412、2002年12月、<http ://www.rfc-editor.org/info/rfc3412>。

[RFC3413] Levi, D., Meyer, P., and B. Stewart, "Simple Network Management Protocol (SNMP) Applications", STD 62, RFC 3413, December 2002, <http://www.rfc-editor.org/info/rfc3413>.

[RFC3413] Levi、D.、Meyer、P。、およびB. Stewart、「Simple Network Management Protocol(SNMP)Applications」、STD 62、RFC 3413、2002年12月、<http://www.rfc-editor.org / info / rfc3413>。

[RFC3414] Blumenthal, U. and B. Wijnen, "User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3)", STD 62, RFC 3414, December 2002, <http://www.rfc-editor.org/info/rfc3414>.

[RFC3414] Blumenthal、U。およびB. Wijnen、「バージョン3の簡易ネットワーク管理プロトコル(SNMPv3)のユーザーベースのセキュリティモデル(USM)」、STD 62、RFC 3414、2002年12月、<http:// www .rfc-editor.org / info / rfc3414>。

[RFC3415] Wijnen, B., Presuhn, R., and K. McCloghrie, "View-based Access Control Model (VACM) for the Simple Network Management Protocol (SNMP)", STD 62, RFC 3415, December 2002, <http://www.rfc-editor.org/info/rfc3415>.

[RFC3415] Wijnen、B.、Presuhn、R。、およびK. McCloghrie、「簡易ネットワーク管理プロトコル(SNMP)のビューベースのアクセス制御モデル(VACM)」、STD 62、RFC 3415、2002年12月、<http ://www.rfc-editor.org/info/rfc3415>。

[RFC3417] Presuhn, R., "Transport Mappings for the Simple Network Management Protocol (SNMP)", STD 62, RFC 3417, December 2002, <http://www.rfc-editor.org/info/rfc3417>.

[RFC3417] Presuhn、R。、「簡易ネットワーク管理プロトコル(SNMP)のトランスポートマッピング」、STD 62、RFC 3417、2002年12月、<http://www.rfc-editor.org/info/rfc3417>。

[RFC3418] Presuhn, R., "Management Information Base (MIB) for the Simple Network Management Protocol (SNMP)", STD 62, RFC 3418, December 2002, <http://www.rfc-editor.org/info/rfc3418>.

[RFC3418] Presuhn、R。、「簡易ネットワーク管理プロトコル(SNMP)の管理情報ベース(MIB)」、STD 62、RFC 3418、2002年12月、<http://www.rfc-editor.org/info/ rfc3418>。

[RFC3419] Daniele, M. and J. Schoenwaelder, "Textual Conventions for Transport Addresses", RFC 3419, December 2002, <http://www.rfc-editor.org/info/rfc3419>.

[RFC3419] Daniele、M.およびJ. Schoenwaelder、「Textual Conventions for Transport Addresses」、RFC 3419、2002年12月、<http://www.rfc-editor.org/info/rfc3419>。

[RFC3584] Frye, R., Levi, D., Routhier, S., and B. Wijnen, "Coexistence between Version 1, Version 2, and Version 3 of the Internet-standard Network Management Framework", BCP 74, RFC 3584, August 2003, <http://www.rfc-editor.org/info/rfc3584>.

[RFC3584] Frye、R.、Levi、D.、Routhier、S。、およびB. Wijnen、「インターネット標準ネットワーク管理フレームワークのバージョン1、バージョン2、およびバージョン3の共存」、BCP 74、RFC 3584 、2003年8月、<http://www.rfc-editor.org/info/rfc3584>。

[RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, January 2004, <http://www.rfc-editor.org/info/rfc3688>.

[RFC3688] Mealling、M。、「The IETF XML Registry」、BCP 81、RFC 3688、2004年1月、<http://www.rfc-editor.org/info/rfc3688>。

[RFC3826] Blumenthal, U., Maino, F., and K. McCloghrie, "The Advanced Encryption Standard (AES) Cipher Algorithm in the SNMP User-based Security Model", RFC 3826, June 2004, <http://www.rfc-editor.org/info/rfc3826>.

[RFC3826] Blumenthal、U.、Maino、F。、およびK. McCloghrie、「SNMPユーザーベースのセキュリティモデルにおけるAdvanced Encryption Standard(AES)暗号アルゴリズム」、RFC 3826、2004年6月、<http:// www .rfc-editor.org / info / rfc3826>。

[RFC5591] Harrington, D. and W. Hardaker, "Transport Security Model for the Simple Network Management Protocol (SNMP)", STD 78, RFC 5591, June 2009, <http://www.rfc-editor.org/info/rfc5591>.

[RFC5591] Harrington、D.およびW. Hardaker、「Simple Network Management Protocol(SNMP)のトランスポートセキュリティモデル」、STD 78、RFC 5591、2009年6月、<http://www.rfc-editor.org/info / rfc5591>。

[RFC5592] Harrington, D., Salowey, J., and W. Hardaker, "Secure Shell Transport Model for the Simple Network Management Protocol (SNMP)", RFC 5592, June 2009, <http://www.rfc-editor.org/info/rfc5592>.

[RFC5592] Harrington、D.、Salowey、J。、およびW. Hardaker、「Simple Network Management Protocol(SNMP)のセキュアシェルトランスポートモデル」、RFC 5592、2009年6月、<http://www.rfc-editor .org / info / rfc5592>。

[RFC6353] Hardaker, W., "Transport Layer Security (TLS) Transport Model for the Simple Network Management Protocol (SNMP)", STD 78, RFC 6353, July 2011, <http://www.rfc-editor.org/info/rfc6353>.

[RFC6353] Hardaker、W。、「簡易ネットワーク管理プロトコル(SNMP)のトランスポート層セキュリティ(TLS)トランスポートモデル」、STD 78、RFC 6353、2011年7月、<http://www.rfc-editor.org/ info / rfc6353>。

[RFC6643] Schoenwaelder, J., "Translation of Structure of Management Information Version 2 (SMIv2) MIB Modules to YANG Modules", RFC 6643, July 2012, <http://www.rfc-editor.org/info/rfc6643>.

[RFC6643] Schoenwaelder、J。、「Translation of Structure of Management Information Version 2(SMIv2)MIB Modules to YANG Modules」、RFC 6643、2012年7月、<http://www.rfc-editor.org/info/rfc6643> 。

Appendix A. Example Configurations
付録A.構成例
A.1. Engine Configuration Example
A.1. エンジン構成例

Below is an XML instance document showing a configuration of an SNMP engine listening on UDP port 161 on IPv4 and IPv6 endpoints and accepting SNMPv2c and SNMPv3 messages.

以下は、IPv4およびIPv6エンドポイントのUDPポート161でリッスンし、SNMPv2cおよびSNMPv3メッセージを受け入れるSNMPエンジンの構成を示すXMLインスタンスドキュメントです。

   <snmp xmlns="urn:ietf:params:xml:ns:yang:ietf-snmp">
     <engine>
       <enabled>true</enabled>
       <listen>
         <name>all-ipv4-udp</name>
         <udp>
           <ip>0.0.0.0</ip>
           <port>161</port>
         </udp>
       </listen>
       <listen>
         <name>all-ipv6-udp</name>
         <udp>
           <ip>::</ip>
           <port>161</port>
         </udp>
       </listen>
       <version>
         <v2c/>
         <v3/>
       </version>
       <engine-id>80:00:02:b8:04:61:62:63</engine-id>
     </engine>
   </snmp>
        
A.2. Community Configuration Example
A.2. コミュニティ構成例

Below is an XML instance document showing a configuration that maps the community name "public" to the security-name "community-public" on the local engine with the default context name. The target tag "community-public-access" filters the access to this community name.

以下は、デフォルトのコンテキスト名を使用して、ローカルエンジンのコミュニティ名「public」をセキュリティ名「community-public」にマップする構成を示すXMLインスタンスドキュメントです。ターゲットタグ「community-public-access」は、このコミュニティ名へのアクセスをフィルタリングします。

   <snmp xmlns="urn:ietf:params:xml:ns:yang:ietf-snmp">
     <community>
       <index>1</index>
       <text-name>public</text-name>
       <security-name>community-public</security-name>
       <target-tag>community-public-access</target-tag>
     </community>
     <target>
        
       <name>management-station</name>
       <udp>
         <ip>2001:db8::abcd</ip>
         <port>161</port>
       </udp>
       <tag>blue</tag>
       <tag>community-public-access</tag>
       <target-params>v2c-public</target-params>
     </target>
     <target-params>
       <name>v2c-public</name>
       <v2c>
         <security-name>community-public</security-name>
       </v2c>
     </target-params>
   </snmp>
        
A.3. User-Based Security Model Configuration Example
A.3. User-Based Security Model Configuration Example

Below is an XML instance document showing the configuration of a local user "joey" who has no authentication or privacy keys. For the remote SNMP engine identified by the snmpEngineID '800002b804616263'H, two users are configured. The user "matt" has a localized SHA authentication key, and the user "russ" has a localized SHA authentication key and an AES encryption key.

Below is an XML instance document showing the configuration of a local user "joey" who has no authentication or privacy keys. For the remote SNMP engine identified by the snmpEngineID '800002b804616263'H, two users are configured. The user "matt" has a localized SHA authentication key, and the user "russ" has a localized SHA authentication key and an AES encryption key.

   <snmp xmlns="urn:ietf:params:xml:ns:yang:ietf-snmp">
     <usm>
       <local>
         <user>
           <name>joey</name>
         </user>
       </local>
       <remote>
         <engine-id>00:00:00:00:00:00:00:00:00:00:00:02</engine-id>
         <user>
           <name>matt</name>
           <auth>
             <sha>
               <!--
                   The 'key' value is split into two lines to conform to
                   the RFC formatting rules.
               -->
               <key>66:95:fe:bc:92:88:e3:62:82:23:
                    5f:c7:15:1f:12:84:97:b3:8f:3f</key>
             </sha>
           </auth>
         </user>
        
         <user>
           <name>russ</name>
           <auth>
             <sha>
               <!--
                   The 'key' value is split into two lines to conform to
                   the RFC formatting rules.
               -->
               <key>66:95:fe:bc:92:88:e3:62:82:23:
                    5f:c7:15:1f:12:84:97:b3:8f:3f</key>
             </sha>
           </auth>
           <priv>
             <aes>
               <!--
                   The 'key' value is split into two lines to conform to
                   the RFC formatting rules.
               -->
               <key>66:95:fe:bc:92:88:e3:62:82:23:
                    5f:c7:15:1f:12:84</key>
             </aes>
           </priv>
         </user>
       </remote>
     </usm>
     <target>
       <name>bluebox</name>
       <udp>
         <ip>2001:db8::abcd</ip>
         <port>161</port>
       </udp>
       <tag>blue</tag>
       <target-params>matt-auth</target-params>
     </target>
     <target-params>
       <name>matt-auth</name>
       <usm>
         <user-name>matt</user-name>
         <security-level>auth-no-priv</security-level>
       </usm>
     </target-params>
   </snmp>
        
A.4. Target and Notification Configuration Example
A.4. Target and Notification Configuration Example

Below is an XML instance document showing the configuration of a notification generator application (see Appendix A of [RFC3413]). Note that the USM-specific objects are defined in the "ietf-snmp-usm" submodule.

以下は、通知ジェネレータアプリケーションの構成を示すXMLインスタンスドキュメントです([RFC3413]の付録Aを参照)。 USM固有のオブジェクトは、「ietf-snmp-usm」サブモジュールで定義されていることに注意してください。

   <snmp xmlns="urn:ietf:params:xml:ns:yang:ietf-snmp">
     <target>
       <name>addr1</name>
       <udp>
         <ip>192.0.2.3</ip>
         <port>162</port>
       </udp>
       <tag>group1</tag>
       <target-params>joe-auth</target-params>
     </target>
     <target>
       <name>addr2</name>
       <udp>
         <ip>192.0.2.6</ip>
         <port>162</port>
       </udp>
       <tag>group1</tag>
       <target-params>joe-auth</target-params>
     </target>
     <target>
       <name>addr3</name>
       <udp>
         <ip>192.0.2.9</ip>
         <port>162</port>
       </udp>
       <tag>group2</tag>
       <target-params>bob-priv</target-params>
     </target>
     <target-params>
       <name>joe-auth</name>
       <usm>
         <user-name>joe</user-name>
         <security-level>auth-no-priv</security-level>
       </usm>
     </target-params>
     <target-params>
       <name>bob-priv</name>
       <usm>
         <user-name>bob</user-name>
         <security-level>auth-priv</security-level>
       </usm>
        
     </target-params>
     <notify>
       <name>group1</name>
       <tag>group1</tag>
       <type>trap</type>
     </notify>
     <notify>
       <name>group2</name>
       <tag>group2</tag>
       <type>trap</type>
     </notify>
   </snmp>
        
A.5. Proxy Configuration Example
A.5. プロキシ構成の例

Below is an XML instance document showing the configuration of a proxy forwarder application. It proxies SNMPv2c messages from command generators to a file server running an SNMPv1 agent that recognizes two community strings, "private" and "public", with different associated read views. The file server is represented as two "target" instances, one for each community string.

以下は、プロキシフォワーダーアプリケーションの構成を示すXMLインスタンスドキュメントです。コマンドジェネレーターからのSNMPv2cメッセージをプロキシし、SNMPv1エージェントを実行しているファイルサーバーに関連付けます。このサーバーは、2つのコミュニティストリング「private」と「public」を認識し、関連する読み取りビューが異なります。ファイルサーバーは、各コミュニティストリングに1つずつ、2つの「ターゲット」インスタンスとして表されます。

If the proxy receives an SNMPv2c message with the community string "public" from a device in the "Office Network" or "Home Office Network", it gets tagged as "trusted", and the proxy uses the "private" community string when sending the message to the file server. Other SNMPv2c messages with the community string "public" get tagged as "non-trusted", and the proxy uses the "public" community string for these messages. There is also a special "backdoor" community string that can be used from any location to get "trusted" access.

If the proxy receives an SNMPv2c message with the community string "public" from a device in the "Office Network" or "Home Office Network", it gets tagged as "trusted", and the proxy uses the "private" community string when sending the message to the file server. Other SNMPv2c messages with the community string "public" get tagged as "non-trusted", and the proxy uses the "public" community string for these messages. There is also a special "backdoor" community string that can be used from any location to get "trusted" access.

The "Office Network" and "Home Office Network" are represented as two "target" instances. These "target" instances have target-params "none", which refers to a non-existing target-params entry.

「Office Network」と「Home Office Network」は、2つの「ターゲット」インスタンスとして表されます。これらの「ターゲット」インスタンスには、存在しないtarget-paramsエントリを参照するtarget-params「none」があります。

   <snmp xmlns="urn:ietf:params:xml:ns:yang:ietf-snmp">
     <target>
       <name>File Server (private)</name>
       <udp>
         <ip>192.0.2.1</ip>
       </udp>
       <target-params>v1-private</target-params>
     </target>
     <target>
       <name>File Server (public)</name>
       <udp>
         <ip>192.0.2.1</ip>
        
       </udp>
       <target-params>v1-public</target-params>
     </target>
     <target>
       <name>Office Network</name>
       <udp>
         <ip>192.0.2.0</ip>
         <prefix-length>24</prefix-length>
       </udp>
       <tag>office</tag>
       <target-params>none</target-params>
     </target>
     <target>
       <name>Home Office Network</name>
       <udp>
         <ip>203.0.113.0</ip>
         <prefix-length>24</prefix-length>
       </udp>
       <tag>home-office</tag>
       <target-params>none</target-params>
     </target>
     <target-params>
       <name>v1-private</name>
       <v1>
         <security-name>private</security-name>
       </v1>
     </target-params>
     <target-params>
       <name>v1-public</name>
       <v1>
         <security-name>public</security-name>
       </v1>
     </target-params>
     <target-params>
       <name>v2c-public</name>
       <v2c>
         <security-name>public</security-name>
       </v2c>
     </target-params>
        

<!-- Communities c1, c2, c3, and c4 are used for incoming messages that should be forwarded.

<!-コミュニティc1、c2、c3、およびc4は、転送される着信メッセージに使用されます。

Communities c3 and c5 are used for outgoing messages to the file server. --> <community>

コミュニティc3およびc5は、ファイルサーバーへの送信メッセージに使用されます。 -> <コミュニティ>

       <index>c1</index>
       <security-name>public</security-name>
       <engine-id>80:00:61:81:c8</engine-id>
       <context>trusted</context>
       <target-tag>office</target-tag>
     </community>
     <community>
       <index>c2</index>
       <security-name>public</security-name>
       <engine-id>80:00:61:81:c8</engine-id>
       <context>trusted</context>
       <target-tag>home-office</target-tag>
     </community>
     <community>
       <index>c3</index>
       <security-name>public</security-name>
       <engine-id>80:00:61:81:c8</engine-id>
       <context>not-trusted</context>
     </community>
     <community>
       <index>c4</index>
       <text-name>backdoor</text-name>
       <security-name>public</security-name>
       <engine-id>80:00:61:81:c8</engine-id>
       <context>trusted</context>
     </community>
     <community>
       <index>c5</index>
       <security-name>private</security-name>
       <engine-id>80:00:61:81:c8</engine-id>
       <context>trusted</context>
     </community>
        
     <proxy>
       <name>p1</name>
       <type>read</type>
       <context-engine-id>80:00:61:81:c8</context-engine-id>
       <context-name>trusted</context-name>
       <target-params-in>v2c-public</target-params-in>
       <single-target-out>File Server (private)</single-target-out>
     </proxy>
     <proxy>
       <name>p2</name>
       <type>read</type>
       <context-engine-id>80:00:61:81:c8</context-engine-id>
       <context-name>not-trusted</context-name>
       <target-params-in>v2c-public</target-params-in>
       <single-target-out>File Server (public)</single-target-out>
        
     </proxy>
   </snmp>
        

If an SNMPv2c Get request with community string "public" is received from an IP address tagged as "office" or "home-office", or if the request is received from anywhere else with community string "backdoor", the implied context is "trusted" so proxy entry "p1" matches. The request is forwarded to the file server as SNMPv1 with community "private" using community table entry "c5" for outbound params lookup.

コミュニティストリング「public」のSNMPv2c Getリクエストが「office」または「home-office」のタグが付けられたIPアドレスから受信された場合、またはコミュニティストリング「backdoor」のその他の場所からリクエストが受信された場合、暗黙のコンテキストは「信頼済み」なので、プロキシエントリ「p1」が一致します。要求は、アウトバウンドparamsルックアップ用のコミュニティテーブルエントリ "c5"を使用して、コミュニティ "private"のSNMPv1としてファイルサーバーに転送されます。

If an SNMPv2c Get request with community string "public" is received from any other IP address, the implied context is "not-trusted" so proxy entry "p2" matches, and the request is forwarded to the file server as SNMPv1 with community "public".

コミュニティストリング「public」を含むSNMPv2c Getリクエストが他のIPアドレスから受信された場合、暗黙のコンテキストは「信頼されない」ため、プロキシエントリ「p2」が一致し、リクエストはコミュニティを含むSNMPv1としてファイルサーバーに転送されます。公衆"。

A.6. View-Based Access Control Model Configuration Example
A.6. ビューベースのアクセス制御モデルの構成例

Below is an XML instance document showing the minimum-secure VACM configuration (see Appendix A of [RFC3415]).

以下は、最小安全なVACM構成を示すXMLインスタンスドキュメントです([RFC3415]の付録Aを参照)。

   <snmp xmlns="urn:ietf:params:xml:ns:yang:ietf-snmp">
     <vacm>
       <group>
         <name>initial</name>
         <member>
           <security-name>initial</security-name>
           <security-model>usm</security-model>
         </member>
         <access>
           <context></context>
           <security-model>usm</security-model>
           <security-level>no-auth-no-priv</security-level>
           <read-view>restricted</read-view>
           <notify-view>restricted</notify-view>
         </access>
         <access>
           <context></context>
           <security-model>usm</security-model>
           <security-level>auth-no-priv</security-level>
           <read-view>internet</read-view>
           <write-view>internet</write-view>
           <notify-view>internet</notify-view>
         </access>
       </group>
       <view>
         <name>initial</name>
         <include>1.3.6.1</include>
        
       </view>
       <view>
         <name>restricted</name>
         <include>1.3.6.1</include>
       </view>
     </vacm>
   </snmp>
        

The following XML instance document shows the semi-secure VACM configuration (only the view configuration is different).

次のXMLインスタンスドキュメントは、セミセキュアVACM構成を示しています(ビュー構成のみが異なります)。

   <snmp xmlns="urn:ietf:params:xml:ns:yang:ietf-snmp">
     <vacm>
       <group>
         <name>initial</name>
         <member>
           <security-name>initial</security-name>
           <security-model>usm</security-model>
         </member>
         <access>
           <context></context>
           <security-model>usm</security-model>
           <security-level>no-auth-no-priv</security-level>
           <read-view>restricted</read-view>
           <notify-view>restricted</notify-view>
         </access>
         <access>
           <context></context>
           <security-model>usm</security-model>
           <security-level>auth-no-priv</security-level>
           <read-view>internet</read-view>
           <write-view>internet</write-view>
           <notify-view>internet</notify-view>
         </access>
       </group>
       <view>
         <name>initial</name>
         <include>1.3.6.1</include>
       </view>
       <view>
         <name>restricted</name>
         <include>1.3.6.1.2.1.1</include>
         <include>1.3.6.1.2.1.11</include>
         <include>1.3.6.1.6.3.10.2.1</include>
         <include>1.3.6.1.6.3.11.2.1</include>
         <include>1.3.6.1.6.3.15.1.1</include>
       </view>
     </vacm>
        
   </snmp>
        
A.7. Transport Layer Security Transport Model Configuration Example
A.7. トランスポート層セキュリティトランスポートモデルの構成例

Below is an XML instance document showing the configuration of the mapping of certificate to security name (see Appendices A.2 and A.3 of [RFC6353]).

以下は、証明書からセキュリティ名へのマッピングの構成を示すXMLインスタンスドキュメントです([RFC6353]の付録A.2およびA.3を参照)。

   <snmp xmlns="urn:ietf:params:xml:ns:yang:ietf-snmp"
         xmlns:x509c2n=
           "urn:ietf:params:xml:ns:yang:ietf-x509-cert-to-name">
     <tlstm>
       <cert-to-name>
         <id>1</id>
         <fingerprint>11:0A:05:11:00</fingerprint>
         <map-type>x509c2n:san-any</map-type>
       </cert-to-name>
       <cert-to-name>
         <id>2</id>
         <fingerprint>11:0A:05:11:00</fingerprint>
         <map-type>x509c2n:specified</map-type>
         <name>
           Joe Cool
         </name>
       </cert-to-name>
     </tlstm>
   </snmp>
        

Acknowledgments

謝辞

The authors want to thank Wes Hardaker and David Spakes for their detailed reviews. Additional valuable comments were provided by David Harrington, Borislav Lukovic, and Randy Presuhn.

著者は、詳細なレビューを提供してくれたWes HardakerとDavid Spakesに感謝します。追加の貴重なコメントは、David Harrington、Borislav Lukovic、およびRandy Presuhnによって提供されました。

Juergen Schoenwaelder was partly funded by Flamingo, a Network of Excellence project (ICT-318488) supported by the European Commission under its Seventh Framework Programme.

Juergen Schoenwaelderは、その第7フレームワークプログラムの下で欧州委員会が支援するネットワークオブエクセレンスプロジェクト(ICT-318488)であるフラミンゴから一部資金提供を受けました。

Authors' Addresses

著者のアドレス

Martin Bjorklund Tail-f Systems

Martin Bjorklund Tail-fシステム

   EMail: mbj@tail-f.com
        

Juergen Schoenwaelder Jacobs University

ユルゲンシェーンヴェルダージェイコブス大学

   EMail: j.schoenwaelder@jacobs-university.de