guacamole免密登录,guacamole不通过登录界面登录,guacamole指定用户名免密登录

发布时间 2023-04-12 17:25:25作者: sddhome

第一步,获取指定用户token

通过POST接口: http://localhost:9090/guacamole/api/tokens

参数1:username

参数2:password

返回:authToken

JAVA代码调用如下:

public String generateToken(String userName) {
        HttpHeaders headers = getHttpHeaders(MediaType.APPLICATION_FORM_URLENCODED);

        MultiValueMap<String, String> forms = new LinkedMultiValueMap<String, String>();
        forms.put("username", Collections.singletonList(userName));
        forms.put("password", Collections.singletonList(globalConfig.getGuacPassword()));

        HttpEntity<MultiValueMap<String, String>> httpEntity = new HttpEntity<MultiValueMap<String, String>>(forms, headers);
        String body = restTemplateConfig.restTemplate().postForObject(globalConfig.getGuacamoleUrl() + "/api/tokens", httpEntity, String.class);
        JSONObject responseBody = JSONObject.parseObject(body);
        return responseBody.getString("authToken");
    }

第二步,带上token请求,访问生成的guacamole url 即可。

浏览器访问:http://localhost:9090/guacamole/#/client/MjgAYwBteXNxbA?token=C08E3DC80A4E04D3747E8EB5C8D379E1EF6E70E9FC43F0E722FFD39B6B1154E7

结果如图:

 

guacamole JAVA工具类:

 https://files.cnblogs.com/files/sdd53home/HttpMethodForGuacamole.zip?t=1681291274