User 子类方法 - KPTest框架开放资料

Skip to content

# User 子类方法

1. cli_query_all_users
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.1 查询所有用户信息（userlist/list）
                userlist命令用来查询所有用户信息。

    命令格式：ipmcget -d userlist

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1

    None

> 返回值：

    1

    None

> 异常：

    1

    None

> 举例：

    1

    self.get_device_bmc_cli_api().cli_query_all_users()["information"]

2. cli_add_user
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.2 添加新用户（adduser）
                adduser用于添加新用户。

    命令格式：ipmcset [-t user] -d adduser -v <username>

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3

    login_user_password(str): 表示登录用户的密码
    username(str): 表示待添加的用户名。
    password(str): 表示待添加的用户密码。

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1
    2
    3

    params = {"login_user_password": "xxxxxx",
    "username": "bmctest", "password": "'xxxxxx'"}
    self.bmccli_api.cli_add_user(params["login_user_password"], params["username"], params["password"])

3. cli_chang_user_password
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.3 修改用户密码（password）
                password命令用来修改用户密码。

    命令格式：ipmcset [-t user] -d password -v username

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3

    login_user_password(str): 表示登录用户的密码
    username(str): 表示已存在的待修改密码的用户名。
    password(str): 表示已存在的待修改密码的用户的新密码

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1
    2
    3
    4

    params = {"login_user_password": "xxxxxx",
    "username": "bmctest", "password": "'xxxxxx1'"}
    self.bmccli_api.cli_chang_user_password(params["login_user_password"],
    params["username"], params["password"])

4. cli_delete_user
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.4 删除用户（deluser）
                deluser用来删除用户。

    命令格式：ipmcset [-t user] -d deluser -v username

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2

    login_user_password(str): 表示登录用户的密码
    username(str): 表示当前存在的待删除的用户名。

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1
    2
    3

    params = {
    "login_user_password": "xxxxxx", "username": "bmctest"}
    api_result = self.bmccli_api.cli_delete_user(params["login_user_password"], params["username"])

5. cli_set_user_rights
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.5 设置用户权限（privilege）
                privilege命令用来设置用户权限。

    命令格式：ipmcset [-t user] -d privilege -v <username> <privalue>

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3

    login_user_password(str): 表示登录用户的密码
    username(str): 表示当前存在的待设置权限的用户名。
    privalue(str): 用户权限

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1
    2
    3
    4

    params = {
    "login_user_password": "xxxxxx", "username": "bmctest2", "privalue": "8"}
    api_result = self.bmccli_api.cli_set_user_rights(params["login_user_password"],
    params["username"], params["privalue"])

6. cli_query_set_complexity_check
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.6 查询和设置密码检查功能（passwordcomplexity）
                passwordcomplexity命令用来查询和设置密码复杂度检查功能的启用状态。

    命令格式：ipmcget [-t user] -d passwordcomplexity

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3
    4

    method(str): 执行命令方式，查询或者配置，参数为query/set。
    value(str):
    enabled: 启用密码复杂度检查功能
    disabled: 禁用密码复杂度检查功能

> 返回值：

    1
    2
    3
    4
    5
    6

    result(dict): 返回值为一个字典，当使用查询功能时，返回为
    {'password_complexity_check_state': 'enabled'} 或者
    {'password_complexity_check_state': 'disabled'}
    当使用设置功能时，返回如下
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1
    2
    3
    4
    5

    params = {"method": "query"}
    api_result = self.bmccli_api.cli_query_set_complexity_check(params["method"])
    params.update({"value": "disabled"})
    params["method"] = "set"
    api_result = self.bmccli_api.cli_query_set_complexity_check(params["method"], params["value"])

7. cli_lock_user
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.7 锁定用户（user -d lock）
                lock命令用于锁定指定的用户，而用户在被锁定之后将不能登录。

    命令格式：ipmcset -t user -d lock -v username

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2

    login_user_password(str): 表示登录用户的密码
    username(str): 待锁定用户的用户名

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1
    2
    3

    params = {
    "login_user_password": "xxxxxx", "username": "bmctest2"}
    api_result = self.bmccli_api.cli_lock_user(params["login_user_password"], params["username"])

8. cli_unlock_user
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.8 解除用户锁定状态（user -d unlock）
                unlock命令用于解锁被手动锁定或因密码重试次数用完而锁定的用户。

    命令格式：ipmcset -t user -d unlock -v username

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2

    login_user_password(str): 表示登录用户的密码
    username(str): 待解锁用户的用户名

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1
    2
    3

    params = {
    "login_user_password": "xxxxxx", "username": "bmctest2"}
    api_result = self.bmccli_api.cli_unlock_user(params["login_user_password"], params["username"])

9. cli_query_set_minimum_password_age
> 描述：

    1
    2
    3
    4
    5
    6
    7

    方法功能：4.9.9 查询和设置密码最短使用期（minimumpasswordage）
                minimumpasswordage命令用于查询和设置密码的最短使用期。
                密码最短使用期，是指设置一个密码后，要使用的最短时间，在此期间不能修改此密码。

    命令格式：ipmcget -d minimumpasswordage

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2

    method(str): 执行命令方式，查询或者配置，参数为query/set。
    time(str): 密码最短使用期，单位为天

> 返回值：

    1
    2
    3
    4
    5

    result(dict): 返回值为一个字典，当使用查询功能时，返回为
    {'minimum_password_age': 密码最短使用天数}
    当使用设置功能时，返回如下
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1
    2

    api_result = self.bmccli_api.cli_query_set_minimum_password_age("query")
    api_result = self.bmccli_api.cli_query_set_minimum_password_age("set", "50")

10. cli_set_emergency_user
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.10 设置紧急用户（emergencyuser）
                emergencyuser命令用于设置不受登录规则限制的紧急用户。

    命令格式：ipmcset [-t user] -d emergencyuser -v username

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1

    username(str): 紧急用户的用户名

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1

    api_result = self.bmccli_api.cli_set_emergency_user("Administrator")

11. cli_import_ssh_public_key_user
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.11 为用户添加SSH公钥（addpublickey）
                addpublickey命令为用户添加SSH公钥。

    命令格式：ipmcset -t user -d addpublickey -v username filepath|file URL

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3

    login_user_password(str): 表示登录用户的密码
    username(str): 待导入SSH公钥的用户名
    filepath(str): 待导入的保存于本地的SSH公钥文件路径 | file URL(str): 待导入的远程SSH公钥文件的URL

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1

    self.bmccli_api.cli_import_ssh_public_key_user("xxxxxx", "bmctest2", "/tmp/key.pub")

12. cli_delete_ssh_public_key_user
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.12 删除用户的SSH公钥（delpublickey）
                delpublickey命令为用户删除SSH公钥。

    命令格式：ipmcset -t user -d delpublickey -v username

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2

    login_user_password(str): 表示登录用户的密码
    username(str): 待删除SSH公钥的用户的用户名

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1

    api_result = self.bmccli_api.cli_delete_ssh_public_key_user("xxxxxx", "bmctest2")

13. cli_query_set_ssh_user_authentication_status
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.13 查询和设置SSH用户密码认证使能状态（sshpasswordauthentication）
                sshpasswordauthentication命令用于查询和设置SSH用户密码认证功能的使能状态。

    命令格式：ipmcget -t user -d sshpasswordauthentication

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3
    4

    method(str): 执行命令方式，查询或者配置，参数为query/set。
    value(str):
    enabled: 使能SSH用户密码认证功能
    disabled: 禁止SSH用户密码认证功能

> 返回值：

    1
    2
    3
    4
    5
    6

    result(dict): 返回值为一个字典，当使用查询功能时，返回为
    {'ssh_password_authentication': 'enabled'} 或者
    {'ssh_password_authentication': 'disabled'}
    当使用设置功能时，返回如下
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1
    2

    api_result = self.bmccli_api.cli_query_set_ssh_user_authentication_status("query")
    api_result = self.bmccli_api.cli_query_set_ssh_user_authentication_status("set", "enabled")

14. cli_set_user_interfaces_log_ibmc
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.14 设置用户登录iBMC的接口类型（interface）
                interface命令用于设置指定用户登录iBMC的接口类型。

    命令格式：ipmcset -t user -d interface -v username <enabled | disabled> <option1 option2 ... optionN>

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3
    4
    5
    6

    login_user_password(str): 表示登录用户的密码
    username(str): 待配置的用户
    option(str):
    enabled: 使能指定的接口类型
    disabled: 禁止指定的接口类型
    value(str): 可设置的接口类型，如 "1", "2", ...等等，对应option1 option2 ... optionN

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1

    api_result = self.bmccli_api.cli_set_user_interfaces_log_ibmc("xxxxxx", "bmctest2", "enabled", "1")

15. cli_set_weak_password_check_state
> 描述：

    1
    2
    3
    4
    5
    6
    7

    方法功能：4.9.15 设置弱口令字典认证使能状态（weakpwddic）
                weakpwddic命令用于设置弱口令字典认证功能的使能状态。
                出现在弱口令字典中的字符串不能被设置为

    命令格式：ipmcset -t user -d weakpwddic -v <enabled | disabled>

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3

    value(str):
    enabled: 使能弱口令字典认证功能
    disabled: 禁止弱口令字典认证功能

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1

    api_result = self.bmccli_api.cli_set_weak_password_check_state("disabled")

16. cli_export_weak_password_dictionary
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.16 导出弱口令字典（weakpwddic -v export）
                weakpwddic -v export命令用于导出iBMC的弱口令字典。

    命令格式：ipmcset -t user -d weakpwddic -v export <filepath | file_URL>

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3

    value(str):
    filepath: 将弱口令字典导出到iBMC文件系统时，在iBMC件系统中的存放路径。
    file_URL: 将弱口令字典导出到远程设备时，在远程设备上的存放路径。

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1

    api_result = self.bmccli_api.cli_export_weak_password_dictionary("/tmp/a.txt")

17. cli_import_weak_password_dictionary
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.17 导入弱口令字典（weakpwddic -v import）
                weakpwddic -v import命令用于导入iBMC的弱口令字典。

    命令格式：ipmcset -t user -d weakpwddic -v import <filepath | file_URL>

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3

    value(str):
    filepath: 将弱口令字典导入iBMC时，待导入的文件在iBMC文件系统中的存放路径。
    file_URL: 将弱口令字典导入iBMC时，待导入的文件在远程设备上的存放路径。

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1

    api_result = self.bmccli_api.cli_import_weak_password_dictionary(params["value"])

18. cli_set_snmpv3_user_encryption_password
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.18 设置SNMPv3用户的加密密码（snmpprivacypassword）
                snmpprivacypassword命令用于设置指定用户使用SNMPv3连接iBMC的数据加密密码。

    命令格式：ipmcset -t user -d snmpprivacypassword -v username

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1

    username: 待配置的用户

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1
    2

    api_result = self.bmccli_api.cli_set_snmpv3_user_encryption_password("xxxxxx",
    "bmctest2", "'xxxxxx1'")

19. cli_query_set_user_inactive_period
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.19 查询和设置用户不活动期限（securityenhance -d inactivetimelimit）
                securityenhance -d inactivetimelimit命令用于设置用户不活动期限。超过设定期限内未活动的用户会被禁用。

    命令格式：ipmcset -t securityenhance -d inactivetimelimit -v <value>

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2

    method(str): 执行命令方式，查询或者配置，参数为query/set。
    value(str): 表示不活动期限

> 返回值：

    1
    2
    3
    4
    5

    result(dict): 返回值为一个字典，当使用查询功能时，返回为
    {'user_inactive_timelimit': 'xxx'}, xxx为不活动期限
    当使用设置功能时，返回如下
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1
    2

    api_result = self.bmccli_api.cli_query_set_user_inactive_period("query")
    api_result = self.bmccli_api.cli_query_set_user_inactive_period("set", "60")

20. cli_set_user_status
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.20 设置用户启用状态（user -d state）
                user -d state命令用于设置用户的启用状态。

    命令格式：ipmcset -t user -d state -v <username> [enabled | disabled]

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3
    4
    5

    login_user_password(str): 表示登录用户的密码
    username(str): 表示待设置的用户
    value(str):
    enabled: 表示启用该用户
    disabled: 表示禁用该用户

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1

    api_result = self.bmccli_api.cli_set_user_status("xxxxxx", "bmctest2", "enabled")

21. cli_query_set_band_user_management_status
> 描述：

    1
    2
    3
    4
    5
    6

    方法功能：4.9.21 查询和设置带内用户管理使能状态（user -d usermgmtbyhost）
                user -d usermgmtbyhost命令用于查询和设置带内用户管理功能的使能状态。

    命令格式：ipmcset -t user -d usermgmtbyhost -v <option>

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2

    method(str): 执行命令方式，查询或者配置，参数为query/set。
    value(str): 表示待设置的带内用户管理使能状态

> 返回值：

    1
    2
    3
    4
    5

    result(dict): 返回值为一个字典，当使用查询功能时，返回为
    ['Enable'] 或者 ['Disable']
    当使用设置功能时，返回如下
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1
    2

    api_result = self.bmccli_api.cli_query_set_band_user_management_status("query")
    api_result = self.bmccli_api.cli_query_set_band_user_management_status("set", "1")

22. cli_set_user_first_login_policy
> 描述：

    1
    2
    3
    4
    5
    6
    7

    方法功能：设置用户首次登录时的密码修改策略（user -d firstloginpolicy）
                对于新建的用户或被重置了密码的用户，其登录密码为初始状态，可能存在密码泄露的风险。
                user -d firstloginpolicy命令用于设置用户密码为初始状态的情况下，首次登录时的密码修改策略。

    命令格式：ipmcset -t user -d firstloginpolicy -v <username> <option>

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2

    username (str): 表示待设置的用户 已存在的用户名
    option (str): 表示用户密码为初始状态，首次登录时的密码修改策略 1：表示仅提示修改密码 2：表示强制修改密码

> 返回值：

    1
    2
    3

    result(dict): 返回值为一个字典，
    成功为 {'result': 'success'}
    失败为 {'result': 'fail'}

> 异常：

    1

    None

> 举例：

    1

    api_result = self.get_device_bmc_cli_api().cli_set_user_first_login_policy("test", "1")