创建Guacamole用户

4
我刚刚使用MySQL用户数据库和LDAP身份验证设置了Guacamole 0.9.9,并且到目前为止一切都运行得很完美。但是,我希望能够在Guacamole之外创建新的用户和连接到MySQL数据库。是否有一种方法可以使用API执行这些任务?所有我读到的关于API的内容都是创建嵌入远程连接的新Web应用程序。

这个问题有任何进展吗?我也遇到了类似的问题... - M. Barbieri
很遗憾,我们转向了全面的VPN,因为Guacamole无法满足额外的要求。 - Mehrkat
Guacamole 0.9.14有任何解决方案吗?我也有同样的问题。 - Banafshe Bamdad
有人已经解决了这个问题吗?我也有同样的问题。我正在尝试在asp.net core 2.1中实现它。请帮助我们! - PatsonLeaner
2个回答

2
您可以在代码中使用以下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());

1
你可以使用Guacamole REST API创建用户。
首先,你需要创建一个token: 端点:
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": ""
    }
}

我对REST API不是很熟悉,由于我们的服务器在VPN后面,我只能使用基于客户端的REST API工具。我在WSL2 Ubuntu中使用httpie,并成功创建了一个令牌,但我不知道第二部分该如何完成。我们正在运行guacamole 1.3。 - MaKaNu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接