本表保存 SAP 用户的登录信息。
可以看到,这里记录了五个历史密码,在修改密码的时候提示不允许使用前五个用过的密码就是通过这里验证的。
用户类型 USTYP 可以在 SU01 用户管理中看到。
而用户标志 UFLAG 则记录了用户的锁定状态。
MANDT MANDT CLNT 3 0 客户端
BNAME XUBNAME CHAR 12 0 用户主记录中的用户名称
BCODE XUCODE RAW 8 0 口令空间
GLTGV XUGLTGV DATS 8 0 用户有效来自
GLTGB XUGLTGB DATS 8 0 有效至
USTYP XUUSTYP CHAR 1 0 用户类型(A 对话、B 系统用户 (内部 RFC 和后台处理)、C 通讯用户 (外部 RFC)、L 参考用户、S 服务用户)
CLASS XUCLASS CHAR 12 0 用户主记录维护中的用户组
LOCNT XULOCNT INT1 3 0 为每个用户不正确的注册计数
UFLAG XUUFLAG INT1 3 0 用户标志(0 Not Locked-正常未锁定、32 Locked Globally By Administrator-被管理员全局锁定、64 Locked Locally By Administrator-被管理员本地锁定、128 Locked Due To Incorrect Logons (Limited Term)-由于不正确的登录被锁定)
ACCNT XUACCNT CHAR 12 0 科目 ID
ANAME XUANAME CHAR 12 0 用户主记录创建者名称
ERDAT XUERDAT DATS 8 0 用户主记录的创建日期
TRDAT XULDATE DATS 8 0 最后一次注册日期
LTIME XULTIME TIMS 6 0 最后一次注册时间
OCOD1 XUCODE RAW 8 0 口令空间
BCDA1 XUBCDAT DATS 8 0 口令最后更改的日期
CODV1 XUCODEVERS CHAR 1 0 加密算法的代码版本
OCOD2 XUCODE RAW 8 0 口令空间
BCDA2 XUBCDAT DATS 8 0 口令最后更改的日期
CODV2 XUCODEVERS CHAR 1 0 加密算法的代码版本
OCOD3 XUCODE RAW 8 0 口令空间
BCDA3 XUBCDAT DATS 8 0 口令最后更改的日期
CODV3 XUCODEVERS CHAR 1 0 加密算法的代码版本
OCOD4 XUCODE RAW 8 0 口令空间
BCDA4 XUBCDAT DATS 8 0 口令最后更改的日期
CODV4 XUCODEVERS CHAR 1 0 加密算法的代码版本
OCOD5 XUCODE RAW 8 0 口令空间
BCDA5 XUBCDAT DATS 8 0 口令最后更改的日期
CODV5 XUCODEVERS CHAR 1 0 加密算法的代码版本
VERSN XUVERSION CHAR 3 0 用户主记录版本
CODVN XUCODEVERS CHAR 1 0 加密算法的代码版本
TZONE TZNZONE CHAR 6 0 时区
ZBVMASTER CHAR 1 0 CUA User Template: Logon not Possible Here
PASSCODE HASH160X RAW 20 0 Hash Value (160 Bits)
PWDCHGDATE XUBCDAT DATS 8 0 口令最后更改的日期
PWDSTATE INT1 3 0 Planned: Password Change Mandatory / Optional
RESERVED INT1 3 0 Reserved for Future Extensions
其中,我们经常会用到的是 LOCNT 和 UFLAG 这两个字段,每次用户输入了错误密码 LOCNT 字段的值就会加 1,如果累积到一定次数,用户就被锁定,无法登录了,必需由用户管理员来解锁;而 UFLAG 则记录用户的锁定状态,如果为 0,则可以正常登录,否则就不能登录。
我们如果自己安装了一个系统,但是由于不了解初始密码而多次登录失败时,可以尝试使用数据库管理工具打开 USR02 表,把这两个值恢复为 0,以便再次登录。
◎ 请注意,作为程序员,必需遵守“不作恶”的基本职业道德,上述极端作法只能在自己练习和经过相关领导认可的情况下才可以使用,不要滥用。