Go to main content

Oracle® ZFS Storage Appliance RESTful API 指南,发行版 OS8.8.x

退出打印视图

更新时间: 2021 年 8 月
 
 

用户服务属性

除了用户名和密码,用户服务属性还定义多种特征,例如为用户授予哪些授权、针对用户施加哪些限制、用户的区域设置是什么。

用户属性

用户可以具有以下属性。一些属性仅适用于特定类型的用户。

表 77  用户属性
属性
类型
说明
logname
string
唯一用户名。创建用户后,logname 不可变。
type
string
用户的类型:localdirectorydatanologin。创建用户后,type 不可变。默认值:local
uid
number
用户 ID。您可以指定用户 ID 或允许系统分配用户 ID。如果指定用户 ID,则用户 ID 不能小于 100,不能大于 2147483646,并且不能等于 60001、60002 或 65534。创建用户后,uid 不可变。
fullname
string
用户的全名或真实姓名。在 BUI 中,全名显示在显示板顶部 "Logout"(注销)按钮的左侧,并且还可能显示在浏览器选项卡上。默认值:与 logname 相同
initial_password
string
本地和数据用户的密码。
require_annotation
boolean
如果为 true:
  • BUI-要求用户在显示初始 BUI 页面之前输入注释。

  • CLI-要求用户在显示 CLI 提示符之前输入注释。

  • REST-请求因未授权而失败。

会话注释将显示在审计日志中。
roles
list
分配给目录用户或本地用户的角色。
kiosk_mode
boolean
如果为 true,此用户是 kiosk 用户:
  • BUI-用户只能查看等于 kiosk_screen 属性值的屏幕。

  • CLI-登录失败。

  • REST-请求因未授权而失败。

kiosk_screen
string
kiosk_mode 为 true 时,此用户限制到的 BUI 屏幕。默认值:status/dashboard
exceptions
list
分配给目录或本地用户的其他授权,或对角色中所分配授权的限制。
preferences
list
用户环境首选项,例如区域设置、BUI 开始页面、超时、SSH 公钥以及 REST 登录令牌。

有关这些属性的进一步说明,请参见以下文档:

用户角色和例外

使用 roles 属性为用户分配现有角色。要创建角色,请参见RESTful API 角色服务

使用 exceptions 属性为用户添加授权。还可以使用此机制删除授权。例如,如果为用户分配了授予某些授权的角色,则可以在例外列表中将单个授权设置为 false,同时保留该角色中包含的其他授权。

以下请求添加用于为用户 user1 重新启动 Kerberos 服务的授权。

POST /api/user/v1/users/user1/exceptions HTTP/1.1

{
    "scope": "svc",
    "service": "kerberos",
    "allow_restart": true
}

以下结果显示所有适用于 user1 的 Kerberos 服务的授权。在此示例中,其他授权仍采用其默认值 false

{
    "auth": {
        "href": "/api/user/v1/users/user1/exceptions/auth-001",
        "scope": "svc",
        "service": "kerberos",
        "allow_administer": false,
        "allow_configure": false,
        "allow_restart": true
    }
}

用户首选项属性

可为登录用户或您对其具有 allow_changePreferences 授权的任何用户设置首选项。要获取 allow_changePreferences 授权,请参见用户角色和例外

表 78  用户首选项属性
属性
类型
说明
locale
string
语言环境。默认值:C
login_screen
string
如果未在 URL 中指定页面,则为成功登录时显示的 BUI 页面。默认值:status/dashboard
session_timeout
integer
用户离开 BUI 后到浏览器自动注销会话的分钟数。默认值:15
cli_idle_timeout
integer
在终止会话之前,CLI 可以闲置的时间长度(以秒为单位)。默认值 -1 意味着 CLI 闲置时不会自动关闭。
advanced_analytics
string
创建可用的高级 Analytics(分析)统计信息
keys
list
RSA/DSA 公钥
tokens
list
REST 登录令牌

有关这些属性的更多信息,请参见以下各节:

CLI 超时

默认情况下,对于 CLI 可以闲置的时间长度没有限制(cli_idle_timeout 的值为 -1)。要对 CLI 可以闲置的时间长度设置限制,请为 cli_idle_timeout 设置正整数值(以秒为单位)。如果达到超时限制,将关闭 CLI。

以下示例将 CLI 超时时间设置为 1 小时。

PUT /api/user/v1/users/user1/preferences HTTP/1.1

{ "cli_idle_timeout": 3600 }
{
    "preferences": {
        "href": "/api/user/v1/users/user1/preferences",
        "locale": "C",
        "login_screen": "configuration/preferences",
        "session_timeout": 15,
        "cli_idle_timeout": 3600,
        "advanced_analytics": false,
        "keys": [],
        "tokens": []
    }
}

要禁用超时,请将 cli_idle_timeout 值设置为 -1,或者使用 unset,如以下示例中所示。

PUT /api/user/v1/users/user1/preferences HTTP/1.1

{ "<unset>": ["cli_idle_timeout"] }

用尖括号将 unset 括起来可避免出现名为 unset 的属性的问题。

SSH 密钥

使用 SSH 公钥,可在不使用密码的情况下建立 SSH 连接。

表 79  SSH 密钥属性
属性
类型
说明
type
string
SSH 密钥类型:RSA 或 DSA
key
string
SSH 密钥内容
comment
string
与此 SSH 密钥关联的注释

REST 登录令牌

可以创建持久性或非持久性 REST 登录令牌,并通过返回的令牌值或令牌 ID 访问令牌。

表 80  REST 登录令牌属性
属性
类型
说明
name
string
令牌名称。
token_username
string
可以使用此登录令牌的用户的名称。此值在请求路径中设置。
preserve
boolean
如果为 false,则使用默认 expiration 值。如果为 true,则设置定制 expiration 值。默认值:false
expiration
number
创建令牌时,此值是令牌到期之前的秒数。如果 preserve 设置为 true,则需要设置此属性。如果 preserve 设置为 false,则 expiration 的值为 900。
列出令牌属性时,此值是该令牌的到期日期和时间。

REST 登录令牌查询参数

结合使用 token=token 查询参数和 GET 命令以显示该令牌的属性值。结合使用 token=token 查询参数和 DELETE 命令以删除该令牌。在创建令牌响应中,tokenX-Auth-Session 的值。

创建令牌时会显示 token,并且不会再次显示。请确保复制和保存 token。请参见示例 3, 创建 REST 登录令牌