首页 > 解决方案 > GridGain Web 控制台用户创建自动化

问题描述

有没有办法在 GridGain Web 控制台的 docker 容器部署上自动创建用户?

我们的测试台部署是完全自动化的,我们也想自动部署 Web Agent,每次手动复制令牌和启动 Agent 的容器在我们的案例中不是很方便。

标签: ignitegridgain

解决方案


有几种选择:

  1. 使用 HTTP REST API 创建一个 Web 控制台用户,获取他们的令牌并将其传递给代理
  2. 生成您自己的令牌(UUID),将其传递给代理,使用 API 调用创建 Web 控制台用户并设置其令牌。

请记住,Web 控制台 HTTP API 被视为私有的。它已经稳定了一段时间,尤其是与用户相关的部分,所以我预计不会很快有任何变化。请自行决定使用它。

在发送任何请求之前,请确保使用 cookie jar。发送“/api/v1/user” GET 以初始化会话。主机和WC一样,但你也可以直接向后端发送请求。CORS 可能是个问题。

通常,您可以打开浏览器网络检查器、手动执行操作、注意发出的请求并使用您选择的工具(如 curl)执行相同的请求。某些通信由 Web Socket 连接处理,但不用于用户管理。

您感兴趣的端点:

  1. 发布“/api/v1/user”。创建用户。有效载荷示例:
{
    "email": "user@example",
    "password": "1",
    "firstName": "User",
    "lastName": "Name",
    "phone": "+790000000",
    "country": "Russia",
    "company": "GridGain",
    "industry": "Software"
}
  1. 发布“/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"
}
  1. 获取“/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
}

推荐阅读