我刚刚使用 MySQL 用户数据库和LDAP身份验证设置了Guacamole 0.9.9,到目前为止一切正常。
但是,我希望能够从 Guacamole 之外的 MySQL 数据库中创建新用户和连接。有没有办法使用 API 来执行这些任务?
我正在阅读的有关 API 的所有内容都是创建一个嵌入远程连接的新 Web 应用程序。
我刚刚使用 MySQL 用户数据库和LDAP身份验证设置了Guacamole 0.9.9,到目前为止一切正常。
但是,我希望能够从 Guacamole 之外的 MySQL 数据库中创建新用户和连接。有没有办法使用 API 来执行这些任务?
我正在阅读的有关 API 的所有内容都是创建一个嵌入远程连接的新 Web 应用程序。
您可以在代码中使用以下 MySQL 命令来创建新用户。
SET @salt = UNHEX(SHA2(UUID(), 256));
INSERT INTO guacamole_user (username, password_salt, password_hash, password_date) VALUES ('testuser', @salt, UNHEX(SHA2(CONCAT('testpass', HEX(@salt)), 256)), NOW());
您可以使用 Guacamole REST API 创建用户。
首先,您需要创建一个令牌:
端点:
POST {{baseURL}}/api/tokens
x-www-form-urlencoded:
username: guacadmin
password: guacadmin
示例响应:
{
"authToken": "8144B9B1EBAF73E8EDCE08EF5C145F49C1C9F563F13E21BF7A1CEC43E74011A4",
"username": "guacadmin",
"dataSource": "postgresql",
"availableDataSources": [
"postgresql",
"postgresql-shared"
]
}
之后,您可以使用令牌创建用户。
端点:
POST {{baseURL}}/api/session/data/{{dataSource}}/users?token={{authToken}}
样品请求正文:
{
"username": "testuser",
"password": "password",
"attributes":{
"disabled":"",
"expired":"",
"access-window-start":"",
"access-window-end":"",
"valid-from":"",
"valid-until":"",
"timezone": ""
}
}