CURL 中的用法示例
以下示例显示如何使用 CURL 进行认证和用户管理。
每个 curl 示例都采用以下格式:
curl -L -X POST https://system_ip:7443/rest/v1target -H
header_1 -H header_2 data-raw 'JSON'
其中,以下定义适用:
认证
以下是用于认证的正确过程的示例。 首先创建认证令牌,然后在所有将来的命令中使用该令牌,直至会话结束,以此进行身份认证。 有关认证的更多信息,请参阅 认证概述。
curl -k -X POST -H 'Content-Type: application/json' -H 'X-Auth-Username:
superuser' -H 'X-Auth-Password: passw0rd'
https://192.168.10.109:7443/rest/v1/auth
这将产生用于所有其他命令的认证令牌。
{"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJpYXQiOjE2MTk2MTg3ODAsImV4cCI6MTYxOTY
yMjM4MCwianRpIjoiMGRjYWRkMWIyODNlNDc5ZGI3ZTJkNzZmZmJlMGI2NjAiLCJzdiI6eyJ1c2VyI
joic3VwZXJ1c2VyIn19.f_NzcKZEUUf3UWaH4JQeasi7BPSTkBcfPe9AMrQOeQyEXp7ZU9wsJn7E9A
jjaIKVM7UsT22HvslLVo5LXTNEkg'"}创建新用户
以下示例显示如何创建新用户、设置密码以及将用户添加至特定组。 该示例还演示了使用令牌来代替认证过程中使用的认证头:
curl -L -X POST '<system_ip>:7443/rest/v1/mkuser' -H 'X-Auth-Token:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJpYXQiOjE2MTk2MTg3ODAsImV4cCI6MTYxOTYy
MjM4MCwianRpIjoiMGRjYWRkMWIyODNlNDc5ZGI3ZTJkNzZmZmJlMGI2NjAiLCJzdiI6eyJ1c2VyI
joic3VwZXJ1c2VyIn19.f_NzcKZEUUf3UWaH4JQeasi7BPSTkBcfPe9AMrQOeQyEXp7ZU9wsJn7E9
AjjaIKVM7UsT22HvslLVo5LXTNEkg' -H 'Content-Type: application/json'
--data-raw '{"name": "testuser", "usergrp": "Service", "password": "testpassw0rd"}'使用用户名来更改密码
以下示例显示如何为用户设置新用户密码,并演示如何使用令牌代替认证过程中使用的认证头:
curl -L -X POST '<system_ip>:7443/rest/chuser/testuser' -H 'X-Auth-Token:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJpYXQiOjE2MTk2MTg3ODAsImV4cCI6MTYxOTY
yMjM4MCwianRpIjoiMGRjYWRkMWIyODNlNDc5ZGI3ZTJkNzZmZmJlMGI2NjAiLCJzdiI6eyJ1c2V
yIjoic3VwZXJ1c2VyIn19.f_NzcKZEUUf3UWaH4JQeasi7BPSTkBcfPe9AMrQOeQyEXp7ZU9wsJn
7E9AjjaIKVM7UsT22HvslLVo5LXTNEkg' -H 'Content-Type: application/json'
--data-raw '{"password": "newPassw0rd"}'使用标识来更改密码
以下示例显示如何使用用户标识来更改用户的用户密码。 在此示例中,2 用作用户标识。
curl -L -X POST '<system_ip>:7443/rest/chuser/2' -H 'X-Auth-Token:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJpYXQiOjE2MTk2MTg3ODAsImV4cCI6MTYxOTY
yMjM4MCwianRpIjoiMGRjYWRkMWIyODNlNDc5ZGI3ZTJkNzZmZmJlMGI2NjAiLCJzdiI6eyJ1c2V
yIjoic3VwZXJ1c2VyIn19.f_NzcKZEUUf3UWaH4JQeasi7BPSTkBcfPe9AMrQOeQyEXp7ZU9wsJn
7E9AjjaIKVM7UsT22HvslLVo5LXTNEkg' -H 'Content-Type: application/json'
--data-raw '{"password": "newPassw0rd"}'列示所有用户
以下示例列出了使用 API V1 的所有用户:
curl -L -X POST '<system_ip>:7443/rest/v1/lsuser' -H 'X-Auth-Token:eyJ0eX
AiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJpYXQiOjE2MTk2MTg3ODAsImV4cCI6MTYxOTYyMjM4MCwian
RpIjoiMGRjYWRkMWIyODNlNDc5ZGI3ZTJkNzZmZmJlMGI2NjAiLCJzdiI6eyJ1c2VyIjoic3VwZXJ1c2V
yIn19.f_NzcKZEUUf3UWaH4JQeasi7BPSTkBcfPe9AMrQOeQyEXp7ZU9wsJn7E9AjjaIKVM7UsT22Hvs
lLVo5LXTNEkg' -H 'Content-Type: application/json' --data-raw ''列示有关用户的详细信息
以下示例显示如何使用用户标识在 API 的 V1 中列出用户:
curl -L -X POST '<system_ip>:7443/rest/v1/lsuser/3' -H 'X-Auth-Token:eyJ0
eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJpYXQiOjE2MTk2MTg3ODAsImV4cCI6MTYxOTYyMjM4MCw
ianRpIjoiMGRjYWRkMWIyODNlNDc5ZGI3ZTJkNzZmZmJlMGI2NjAiLCJzdiI6eyJ1c2VyIjoic3VwZX
J1c2VyIn19.f_NzcKZEUUf3UWaH4JQeasi7BPSTkBcfPe9AMrQOeQyEXp7ZU9wsJn7E9AjjaIKVM7Us
T22HvslLVo5LXTNEkg' -H 'Content-Type: application/json' --data-raw ''移除用户
以下示例显示如何通过使用 API V1 中的用户标识来移除用户:
curl -L -X POST '<system_ip>:7443/rest/v1/rmuser/2' -H 'X-Auth-Token:eyJ
0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJpYXQiOjE2MTk2MTg3ODAsImV4cCI6MTYxOTYyMjM4MC
wianRpIjoiMGRjYWRkMWIyODNlNDc5ZGI3ZTJkNzZmZmJlMGI2NjAiLCJzdiI6eyJ1c2VyIjoic3VwZ
XJ1c2VyIn19.f_NzcKZEUUf3UWaH4JQeasi7BPSTkBcfPe9AMrQOeQyEXp7ZU9wsJn7E9AjjaIKVM7U
sT22HvslLVo5LXTNEkg' -H 'Content-Type: application/json' --data-raw ''