| submodule openconfig-aaa-radius { |
| |
| yang-version "1"; |
| |
| belongs-to "openconfig-aaa" { |
| prefix "oc-aaa"; |
| } |
| |
| // import some basic types |
| import ietf-inet-types { prefix inet; } |
| import openconfig-extensions { prefix oc-ext; } |
| import openconfig-aaa-types { prefix oc-aaa-types; } |
| import openconfig-types { prefix oc-types; } |
| import openconfig-yang-types { prefix oc-yang; } |
| |
| |
| // meta |
| organization "OpenConfig working group"; |
| |
| contact |
| "OpenConfig working group |
| www.openconfig.net"; |
| |
| description |
| "This module defines configuration and operational state data |
| related to the RADIUS protocol for authentication, |
| authorization, and accounting."; |
| |
| oc-ext:openconfig-version "0.2.0"; |
| |
| revision "2017-07-06" { |
| description |
| "Move to oc-inet types, add IETF attribution, add RADIUS |
| counters, changed password leaf names to indicate hashed"; |
| reference "0.2.0"; |
| } |
| |
| revision "2017-01-29" { |
| description |
| "Initial public release"; |
| reference "0.1.0"; |
| } |
| |
| // extension statements |
| |
| // feature statements |
| |
| // identity statements |
| |
| identity RADIUS { |
| base oc-aaa-types:AAA_SERVER_TYPE; |
| description |
| "Remote Authentication Dial In User Service (RADIUS) AAA |
| server"; |
| reference |
| "RFC 2865 - Remote Authentication Dial In User Service |
| (RADIUS)"; |
| } |
| |
| // typedef statements |
| |
| // grouping statements |
| |
| grouping aaa-radius-server-config { |
| description |
| "Configuration data for a RADIUS server"; |
| |
| leaf auth-port { |
| type inet:port-number; |
| default 1812; |
| description |
| "Port number for authentication requests"; |
| } |
| |
| leaf acct-port { |
| type inet:port-number; |
| default 1813; |
| description |
| "Port number for accounting requests"; |
| } |
| |
| leaf secret-key { |
| type oc-types:routing-password; |
| description |
| "The unencrypted shared key used between the authentication |
| server and the device."; |
| } |
| |
| leaf source-address { |
| type inet:ip-address; |
| description |
| "Source IP address to use in messages to the RADIUS server"; |
| } |
| |
| leaf retransmit-attempts { |
| type uint8; |
| description |
| "Number of times the system may resend a request to the |
| RADIUS server when it is unresponsive"; |
| } |
| } |
| |
| grouping aaa-radius-server-state { |
| description |
| "Operational state data for a RADIUS server"; |
| |
| container counters { |
| description |
| "A collection of RADIUS related state objects."; |
| |
| leaf retried-access-requests { |
| type oc-yang:counter64; |
| description |
| "Retransmitted Access-Request messages."; |
| } |
| |
| leaf access-accepts { |
| type oc-yang:counter64; |
| description |
| "Received Access-Accept messages."; |
| } |
| |
| leaf access-rejects { |
| type oc-yang:counter64; |
| description |
| "Received Access-Reject messages."; |
| } |
| |
| leaf timeout-access-requests { |
| type oc-yang:counter64; |
| description |
| "Access-Request messages that have timed-out, |
| requiring retransmission."; |
| } |
| } |
| } |
| |
| grouping aaa-radius-server-top { |
| description |
| "Top-level grouping for RADIUS server data"; |
| |
| container radius { |
| description |
| "Top-level container for RADIUS server data"; |
| |
| container config { |
| description |
| "Configuration data for RADIUS servers"; |
| |
| uses aaa-radius-server-config; |
| } |
| |
| container state { |
| |
| config false; |
| |
| description |
| "Operational state data for RADIUS servers"; |
| |
| uses aaa-radius-server-config; |
| uses aaa-radius-server-state; |
| } |
| } |
| } |
| |
| // data definition statements |
| |
| // augment statements |
| |
| // rpc statements |
| |
| // notification statements |
| |
| } |