⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 snmp-user-based-sm-mib

📁 很不错java的SNMP应用例子
💻
📖 第 1 页 / 共 3 页
字号:
                   1) GET(usmUserSpinLock.0) and save in sValue.                   2) generate the keyChange value based on the old                      (existing) secret key and the new secret key,                      let us call this kcValue.                 If you do the key change on behalf of another user:                   3) SET(usmUserSpinLock.0=sValue,                          usmUserAuthKeyChange=kcValue                          usmUserPublic=randomValue)                 If you do the key change for yourself:                   4) SET(usmUserSpinLock.0=sValue,                          usmUserOwnAuthKeyChange=kcValue                          usmUserPublic=randomValue)                 If you get a response with error-status of noError,                 then the SET succeeded and the new key is active.                 If you do not get a response, then you can issue a                 GET(usmUserPublic) and check if the value is equal                 to the randomValue you did send in the SET. If so, then                 the key change succeeded and the new key is active                 (probably the response got lost). If not, then the SET                 request probably never reached the target and so you                 can start over with the procedure above.                "    DEFVAL      { ''H }    -- the empty string    ::= { usmUserEntry 6 }usmUserOwnAuthKeyChange OBJECT-TYPE    SYNTAX       KeyChange   -- typically (SIZE (0 | 32)) for HMACMD5                             -- typically (SIZE (0 | 40)) for HMACSHA    MAX-ACCESS   read-create    STATUS       current    DESCRIPTION "Behaves exactly as usmUserAuthKeyChange, with one                 notable difference: in order for the set operation                 to succeed, the usmUserName of the operation                 requester must match the usmUserName that                 indexes the row which is targeted by this                 operation.                 In addition, the USM security model must be                 used for this operation.                 The idea here is that access to this column can be                 public, since it will only allow a user to change                 his own secret authentication key (authKey).                 Note that this can only be done once the row is active.                 When a set is received and the usmUserName of the                 requester is not the same as the umsUserName that                 indexes the row which is targeted by this operation,                 then a 'noAccess' error must be returned.                 When a set is received and the security model in use                 is not USM, then a 'noAccess' error must be returned.                "    DEFVAL      { ''H }    -- the empty string    ::= { usmUserEntry 7 }usmUserPrivProtocol OBJECT-TYPE    SYNTAX       AutonomousType    MAX-ACCESS   read-create    STATUS       current    DESCRIPTION "An indication of whether messages sent on behalf of                 this user to/from the SNMP engine identified by                 usmUserEngineID, can be protected from disclosure,                 and if so, the type of privacy protocol which is used.                 An instance of this object is created concurrently                 with the creation of any other object instance for                 the same user (i.e., as part of the processing of                 the set operation which creates the first object                 instance in the same conceptual row).                 If an initial set operation (i.e. at row creation time)                 tries to set a value for an unknown or unsupported                 protocol, then a 'wrongValue' error must be returned.                 The value will be overwritten/set when a set operation                 is performed on the corresponding instance of                 usmUserCloneFrom.                 Once instantiated, the value of such an instance of                 this object can only be changed via a set operation to                 the value of the usmNoPrivProtocol.                 If a set operation tries to change the value of an                 existing instance of this object to any value other                 than usmNoPrivProtocol, then an 'inconsistentValue'                 error must be returned.                 Note that if any privacy protocol is used, then you                 must also use an authentication protocol. In other                 words, if usmUserPrivProtocol is set to anything else                 than usmNoPrivProtocol, then the corresponding instance                 of usmUserAuthProtocol cannot have a value of                 usmNoAuthProtocol. If it does, then an                 'inconsistentValue' error must be returned.                "    DEFVAL      { usmNoPrivProtocol }    ::= { usmUserEntry 8 }usmUserPrivKeyChange OBJECT-TYPE    SYNTAX       KeyChange  -- typically (SIZE (0 | 32)) for DES    MAX-ACCESS   read-create    STATUS       current    DESCRIPTION "An object, which when modified, causes the secret                 encryption key used for messages sent on behalf                 of this user to/from the SNMP engine identified by                 usmUserEngineID, to be modified via a one-way                 function.                 The associated protocol is the usmUserPrivProtocol.                 The associated secret key is the user's secret                 privacy key (privKey). The associated hash                 algorithm is the algorithm used by the user's                 usmUserAuthProtocol.                 When creating a new user, it is an 'inconsistentName'                 error for a set operation to refer to this object                 unless it is previously or concurrently initialized                 through a set operation on the corresponding instance                 of usmUserCloneFrom.                 When the value of the corresponding usmUserPrivProtocol                 is usmNoPrivProtocol, then a set is successful, but                 effectively is a no-op.                 When this object is read, the zero-length (empty)                 string is returned.                 See the description clause of usmUserAuthKeyChange for                 a recommended procedure to do a key change.                "    DEFVAL      { ''H }    -- the empty string    ::= { usmUserEntry 9 }usmUserOwnPrivKeyChange OBJECT-TYPE    SYNTAX       KeyChange  -- typically (SIZE (0 | 32)) for DES    MAX-ACCESS   read-create    STATUS       current    DESCRIPTION "Behaves exactly as usmUserPrivKeyChange, with one                 notable difference: in order for the Set operation                 to succeed, the usmUserName of the operation                 requester must match the usmUserName that indexes                 the row which is targeted by this operation.                 In addition, the USM security model must be                 used for this operation.                 The idea here is that access to this column can be                 public, since it will only allow a user to change                 his own secret privacy key (privKey).                 Note that this can only be done once the row is active.                 When a set is received and the usmUserName of the                 requester is not the same as the umsUserName that                 indexes the row which is targeted by this operation,                 then a 'noAccess' error must be returned.                 When a set is received and the security model in use                 is not USM, then a 'noAccess' error must be returned.                "    DEFVAL      { ''H }    -- the empty string    ::= { usmUserEntry 10 }usmUserPublic    OBJECT-TYPE    SYNTAX       OCTET STRING (SIZE(0..32))    MAX-ACCESS   read-create    STATUS       current    DESCRIPTION "A publicly-readable value which can be written as part                 of the procedure for changing a user's secret                 authentication and/or privacy key, and later read to                 determine whether the change of the secret was                 effected.                "    DEFVAL      { ''H }  -- the empty string    ::= { usmUserEntry 11 }usmUserStorageType OBJECT-TYPE    SYNTAX       StorageType    MAX-ACCESS   read-create    STATUS       current    DESCRIPTION "The storage type for this conceptual row.                 Conceptual rows having the value 'permanent' must                 allow write-access at a minimum to:                 - usmUserAuthKeyChange, usmUserOwnAuthKeyChange                   and usmUserPublic for a user who employs                   authentication, and                 - usmUserPrivKeyChange, usmUserOwnPrivKeyChange                   and usmUserPublic for a user who employs                   privacy.                 Note that any user who employs authentication or                 privacy must allow its secret(s) to be updated and                 thus cannot be 'readOnly'.                 If an initial set operation tries to set the value to                 'readOnly' for a user who employs authentication or                 privacy, then an 'inconsistentValue' error must be                 returned.  Note that if the value has been previously                 set (implicit or explicit) to any value, then the rules                 as defined in the StorageType Textual Convention apply.                 It is an implementation issue to decide if a SET for                 a readOnly or permanent row is accepted at all. In some                 contexts this may make sense, in others it may not. If                 a SET for a readOnly or permanent row is not accepted                 at all, then a 'wrongValue' error must be returned.                "    DEFVAL      { nonVolatile }    ::= { usmUserEntry 12 }usmUserStatus    OBJECT-TYPE    SYNTAX       RowStatus    MAX-ACCESS   read-create    STATUS       current    DESCRIPTION "The status of this conceptual row.                 Until instances of all corresponding columns are                 appropriately configured, the value of the                 corresponding instance of the usmUserStatus column                 is 'notReady'.                 In particular, a newly created row for a user who                 employs authentication, cannot be made active until the                 corresponding usmUserCloneFrom and usmUserAuthKeyChange                 have been set.                 Further, a newly created row for a user who also                 employs privacy, cannot be made active until the                 usmUserPrivKeyChange has been set.                 The RowStatus TC [RFC2579] requires that this                 DESCRIPTION clause states under which circumstances                 other objects in this row can be modified:                 The value of this object has no effect on whether                 other objects in this conceptual row can be modified,                 except for usmUserOwnAuthKeyChange and                 usmUserOwnPrivKeyChange. For these 2 objects, the                 value of usmUserStatus MUST be active.                "    ::= { usmUserEntry 13 }-- Conformance Information *******************************************usmMIBCompliances OBJECT IDENTIFIER ::= { usmMIBConformance 1 }usmMIBGroups      OBJECT IDENTIFIER ::= { usmMIBConformance 2 }-- Compliance statementsusmMIBCompliance MODULE-COMPLIANCE    STATUS       current    DESCRIPTION "The compliance statement for SNMP engines which                 implement the SNMP-USER-BASED-SM-MIB.                "    MODULE       -- this module        MANDATORY-GROUPS { usmMIBBasicGroup }        OBJECT           usmUserAuthProtocol        MIN-ACCESS       read-only        DESCRIPTION     "Write access is not required."        OBJECT           usmUserPrivProtocol        MIN-ACCESS       read-only        DESCRIPTION     "Write access is not required."    ::= { usmMIBCompliances 1 }-- Units of complianceusmMIBBasicGroup OBJECT-GROUP    OBJECTS     {                  usmStatsUnsupportedSecLevels,                  usmStatsNotInTimeWindows,                  usmStatsUnknownUserNames,                  usmStatsUnknownEngineIDs,                  usmStatsWrongDigests,                  usmStatsDecryptionErrors,                  usmUserSpinLock,                  usmUserSecurityName,                  usmUserCloneFrom,                  usmUserAuthProtocol,                  usmUserAuthKeyChange,                  usmUserOwnAuthKeyChange,                  usmUserPrivProtocol,                  usmUserPrivKeyChange,                  usmUserOwnPrivKeyChange,                  usmUserPublic,                  usmUserStorageType,                  usmUserStatus                }    STATUS       current    DESCRIPTION "A collection of objects providing for configuration                 of an SNMP engine which implements the SNMP                 User-based Security Model.                "    ::= { usmMIBGroups 1 }END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -