ignite - GridGain Web 控制台用户创建自动化
问题描述
有没有办法在 GridGain Web 控制台的 docker 容器部署上自动创建用户?
我们的测试台部署是完全自动化的,我们也想自动部署 Web Agent,每次手动复制令牌和启动 Agent 的容器在我们的案例中不是很方便。
解决方案
有几种选择:
- 使用 HTTP REST API 创建一个 Web 控制台用户,获取他们的令牌并将其传递给代理。
- 生成您自己的令牌(UUID),将其传递给代理,使用 API 调用创建 Web 控制台用户并设置其令牌。
请记住,Web 控制台 HTTP API 被视为私有的。它已经稳定了一段时间,尤其是与用户相关的部分,所以我预计不会很快有任何变化。请自行决定使用它。
在发送任何请求之前,请确保使用 cookie jar。发送“/api/v1/user” GET 以初始化会话。主机和WC一样,但你也可以直接向后端发送请求。CORS 可能是个问题。
通常,您可以打开浏览器网络检查器、手动执行操作、注意发出的请求并使用您选择的工具(如 curl)执行相同的请求。某些通信由 Web Socket 连接处理,但不用于用户管理。
您感兴趣的端点:
- 发布“/api/v1/user”。创建用户。有效载荷示例:
{
"email": "user@example",
"password": "1",
"firstName": "User",
"lastName": "Name",
"phone": "+790000000",
"country": "Russia",
"company": "GridGain",
"industry": "Software"
}
- 发布“/api/v1/profile/save”。编辑用户。有效载荷示例:
{
"firstName": "User",
"lastName": "Name",
"email": "test@example",
"phone": null,
"country": "Russia",
"company": "GridGain",
"industry": "Other",
"permitEmailContact": false,
"permitPhoneContact": false,
"token": "fcf99d68-5a4c-4a43-8abc-1f93e19af26a"
}
- 获取“/api/v1/用户”。获取用户。有效载荷示例:
{
"email": "test@example",
"firstName": "User",
"lastName": "name",
"phone": null,
"company": "GridGain",
"country": "Russia",
"admin": false,
"becomeUsed": false,
"industry": "Other",
"permitEmailContact": false,
"permitPhoneContact": false,
"token": "fcf99d68-5a4c-4a43-8abc-1f93e19af26a",
"lastEvent": 0
}
推荐阅读
- javafx - javafx如何在TextField中实现图标搜索
- c# - 我们如何处理不知道前缀/命名空间的问题?
- javascript - 如何在javascript中的另一个函数中使用函数作为对象的属性
- angular - 我应该将我的 .js 文件放在我的 Angular 应用程序的什么位置?angular.json(angular-cli.json) 或 assets/dist 文件夹?
- ruby-on-rails - Ahoy Gem 的“请求”通常为零
- .net-core - 如何验证发送到 Azure 函数的参数?
- vb.net - 在 VB.NET 中获取 MP4 属性数据
- c++ - 构建后可执行文件缺少完整库路径
- f# - 如何使用拖放读取 Fable Elmish 中的 Browser.Blob
- c# - 使用 FileStream 的额外字节(或者看起来如此)