fujitsu-user-security-typedefs

This module is used to provide typedef definitions for fujitsu user security modules. Copyright (c) 2015 Fujitsu Ltd. All rights...

  • Version: 2016-11-04

    fujitsu-user-security-typedefs@2016-11-04


    
      module fujitsu-user-security-typedefs {
    
        yang-version 1;
    
        namespace
          "urn:fujitsu:params:xml:ns:yang:typedef:usersecurity";
    
        prefix usersecu-type;
    
        organization "Fujitsu Ltd.";
    
        contact
          "Fujitsu Ltd.
         
         Address: 2801 Telecom Parkway
                  Richardson, Texas 75082
         
         Tel: +1-800-USE-FTAC (1-800-873-3822)
         Email: ftac@fnc.fujitsu.com
         Web: www.fujitsu.com/us/services/telecom";
    
        description
          "This module is used to provide typedef definitions for fujitsu user
         security modules. 
         Copyright (c) 2015 Fujitsu Ltd.
         All rights reserved. ";
    
        revision "2016-11-04" {
          description
            "Included a pattern in yang with list of supported special characters for password feild";
        }
    
        revision "2015-09-30";
    
        typedef yORn-type {
          type enumeration {
            enum "y" {
              value 1;
            }
            enum "n" {
              value 0;
            }
          }
        }
    
        typedef adminState-type {
          type enumeration {
            enum "allow" {
              value 1;
            }
            enum "inhibit" {
              value 0;
            }
          }
          default "allow";
        }
    
        typedef username-type {
          type string {
            length "3..32";
            pattern "[a-z][a-z0-9_-]*" {
              error-message
                "A username must begin with a lowercase letter, The remainder 
               of the string may contain lowercase letters, numbers 0 through 9, 
               underscores, or dashes";
            }
          }
          description "USERNAME";
        }
    
        typedef group-type {
          type string;
          description
            "level-1, level-2..., or level-6";
        }
    
        typedef umin-type {
          type uint16 {
            range "3..10";
          }
          description
            "Minimum number of charactes in username";
        }
    
        typedef uage-type {
          type union {
            type uint16 {
              range "1..90";
            }
            type enumeration {
              enum "OFF" {
                value 0;
              }
            }
          }
          units "Days";
          description
            "User account aging. 
           A user account that has been \"aged out\" is simply disabled (not deleted).
           Uage does not apply to Level 4 and 6 users.";
        }
    
        typedef password-type {
          type string {
            length "min..128";
            pattern
              "[a-zA-Z0-9!@$%\\^&*()\\[\\]_\\-~{}.+]*" {
              error-message
                "Password content does-not meet the requirements";
            }
          }
          description
            " If pcontent-type is BASIC then Password must contain at least one alphabetic and
               one non-alphabetic charcater
               If pcontent-type is ENHANCED then Password must contain at least 2 characters from
               each of the following groups:
               a) Lower case alphabetic (a-z)
               b) Upper case alphabetic (A-Z)
               c) Numeric 0-9
               d) Special characters Allowed !@$%^&*()[]_-~{}.+
               Password must not contain Username.";
        }
    
        typedef pmin-type {
          type uint16 {
            range "6..20";
          }
          description "Minimum password length";
        }
    
        typedef pcontent-type {
          type enumeration {
            enum "BASIC" {
              value 1;
              description
                "Password must contain at least one alphabetic and
               one non-alphabetic charcater";
            }
            enum "ENHANCED" {
              value 2;
              description
                "Password must contain at least 2 characters from
               each of the following groups:
               a) Lower case alphabetic (a-z)
               b) Upper case alphabetic (A-Z)
               c) Numeric 0-9
               d) Special characters (TBD)
               Password must not contain Username.";
            }
          }
          description
            "Determines the allowed password content";
        }
    
        typedef page-type {
          type union {
            type uint16 {
              range "25..90";
            }
            type enumeration {
              enum "OFF" {
                value 0;
              }
            }
          }
          units "Days";
          description
            "Password Aging.
           A password that has been \"aged out\" results in requiring that the 
           user change his or her password on the next login.";
        }
    
        typedef prot-type {
          type union {
            type uint16 {
              range "1..20";
            }
            type enumeration {
              enum "OFF" {
                value 0;
              }
            }
          }
          units "Days";
          description
            "Password Rotation.
           Specifies the number of password (hashes) to save in \"circular\" history file.
           If the hash of a new password matches a entry in this history file, 
           the new password is denied.";
        }
    
        typedef minit-type {
          type union {
            type uint16 {
              range "1..15";
            }
            type enumeration {
              enum "OFF" {
                value 0;
              }
            }
          }
          units "Days";
          description
            "The minimum time interval that must expire before a user
           is allowed to change his or her password.";
        }
    
        typedef reauth-type {
          type yORn-type;
          description
            "If y, upon the first login into a newly create user account, the 
           user is required to enter a new password.";
        }
    
        typedef smt-type {
          type yORn-type;
          description
            "If y, then users are permitted to have multiple sessions.";
        }
    
        typedef dural-type {
          type uint16 {
            range "1..90";
          }
          units "Minutes";
          description
            "Upon exceeding the number sequential login failure specified by MAXINV 
           then the user is inhibited from the number of mintues specified by dural.";
        }
    
        typedef maxinv-type {
          type union {
            type uint16 {
              range "1..5";
            }
            type enumeration {
              enum "OFF" {
                value 0;
              }
            }
          }
          description
            "Determines the number of sequential unsucessful logins that must before a user is
           inhibited from loggin for the duration of dural.";
        }
    
        typedef banner-type {
          type enumeration {
            enum "NONE" {
              value 0;
            }
            enum "DEFAULT" {
              value 1;
            }
            enum "CUSTOM" {
              value 2;
            }
          }
          description
            "Controls the pre-login banner displayed.  
           When banner=CUSTOM, the displayed banner is determined by bannerstr.
           When banner=DEFAULT or NONE, the bannerstr is set to \" \" (the
           previous bannerstr setting is not retained).";
        }
    
        typedef bannerstr-type {
          type string {
            length "1..1600";
          }
          description
            "The pre-login banner string displayed when banner=CUSTOM.
           When banner set to DEFAULT or NONE, bannerstr is set to \" \".";
        }
    
        typedef lastlogin-type {
          type yORn-type;
          description
            "If y, the date time of the last successful login and the
           number of login failures since the last successful login are
           displayed after the user successfully logs in.";
        }
    
        typedef warn-type {
          type string {
            length "1..1600";
          }
        }
    
        typedef authentication-type {
          type enumeration {
            enum "LOCAL" {
              value 0;
            }
            enum "RADIUS" {
              value 1;
            }
            enum "TACACSPLUS" {
              value 2;
            }
          }
        }
      }  // module fujitsu-user-security-typedefs
    

© 2023 YumaWorks, Inc. All rights reserved.