我想使用 API 禁用或启用在 keyrock 中找到的用户,但我不能。https://keyrock.docs.apiary.io/没有在这里说明如何操作。这不可能吗?在此处输入图像描述
问问题
18 次
1 回答
0
通过 REST API 以管理员用户身份登录。
curl -iX POST \
'http://localhost:3005/v1/auth/tokens' \
-H 'Content-Type: application/json' \
-d '{
"name": "admin@test.com",
"password": "1234"
}'
响应标头返回一个X-Subject-token
标头,该标头标识谁已登录应用程序。所有后续请求都需要此令牌才能获得访问权限。
您在问题中提供的图像只是 GET /users 端点的 GUI 版本
curl -L -X GET 'http://localhost:3005/v1/users' \
-H 'Content-Type: application/json' \
-H 'X-Auth-token: aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'
或者您可以请求特定用户:
curl -L -X GET 'http://localhost:3005/v1/users/bbbbbbbb-good-0000-0000-000000000000' \
-H 'Content-Type: application/json' \
-H 'X-Auth-token: aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'
回报:
{
"user": {
"scope": [],
"id": "bbbbbbbb-good-0000-0000-000000000000",
"username": "bob",
"email": "bob-the-manager@test.com",
"enabled": true,
"admin": false,
"image": "default",
"gravatar": false,
"date_password": "2018-07-30T11:41:14.000Z",
"description": "Bob is the regional manager",
"website": null
}
}
您想enabled: false
使用 PATCH /user 端点进行设置。
curl -L -X PATCH 'http://localhost:3005/v1/users/bbbbbbbb-good-0000-0000-000000000000' \
-H 'Content-Type: application/json' \
-H 'X-Auth-token: aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa' \
--data-raw '{
"user": {
"username": "bob",
"email": "bob-the-manager@test.com",
"enabled": false,
"gravatar": false,
"date_password": "2018-07-26T15:25:14.000Z"
}
}'
更多信息可以在 FIWARE 文档中的安全章节教程 中找到,其中 Keyrock 是FIWARE 目录中的一个组件
在 FIWARE 文档中,给出了一个使用 Keyrock 来围绕“由 FIWARE 提供支持”解决方案提供用户身份的示例。请注意,虽然 Keyrock 通常用于 “由 FIWARE 提供支持”的解决方案(以及 FIWARE 目录中的其他元素),但它也可用于为其他独立应用程序或微服务提供身份 - 它并不仅仅限于在FIWARE场景中使用。同样,用于安全或身份管理系统的替代开源或专有组件也可用于保护 “由 FIWARE 提供支持”的解决方案。
于 2022-02-10T12:25:43.980 回答