GetConnectionTicket - 获取连接凭证

更新时间:
复制 MD 格式

获取云电脑连接凭证。

接口说明

云电脑的状态必须为运行中(Running),使用该接口获取的 Ticket 过期时间为 10 分钟。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

调试

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。

  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。

  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:

    • 对于必选的资源类型,用前面加 * 表示。

    • 对于不支持资源级授权的操作,用全部资源表示。

  • 条件关键字:是指云产品自身定义的条件关键字。

  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。

操作

访问级别

资源类型

条件关键字

关联操作

ecd:GetConnectionTicket

get

*全部资源

*

请求参数

名称

类型

必填

描述

示例值

RegionId

string

地域 ID。可以调用 DescribeRegions 获取无影云电脑支持的地域列表。

cn-hangzhou

EndUserId

string

云电脑授权用户的用户名。必须传入云电脑现有的授权用户才能成功生成凭证。

alice

Password

string

云电脑授权用户的密码。

Ab123456

TaskId

string

云电脑连接任务 ID。

2afbad19-778a-4fc5-9674-1f19c638****

DesktopId

string

需生成连接凭证的云电脑 ID。必须传入该字段才能成功生成凭证。

ecd-gx2x1dhsmucyy****

Uuid

string

客户端唯一标识。若使用无影客户端,可在客户端登录界面的关于对话框中查看该参数。

28c80e90-f71e-4c23-93d6-1225329cf949

CommandContent

string

当前参数可以配置自定义用户态应用,当成功获取凭证后,自动执行应用。

  • appPath:String 类型,应用启动文件路径,例如:"C:\\Program Files (x86)\\000\\000.exe",注意路径分隔符要用双斜杠(\\)。

  • appParameter:String 类型,应用启动参数,例如:"meetingid 000 meetingname aaa",注意参数与参数之间直接用空格。

{ "startApplication": { "startApplicationList": [ { "sessionName": "", "appList": [ { "appPath": "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe", "appParameter": "www.example.com www.example1.com" } ] } ] } }

返回参数

名称

类型

描述

示例值

object

RequestId

string

请求 ID。

1CBAFFAB-B697-4049-A9B1-67E1FC5F****

TaskStatus

string

任务状态。

枚举值:

  • FAILED :

    获取凭证失败

  • RUNNING :

    获取凭证中

  • FINISHED :

    获取完成

FINISHED

Ticket

string

云电脑连接凭证。

W0VuY29kaW5nXQ0KSW5wdXRFbmNvZGluZz1V********

TaskId

string

云电脑连接任务 ID。

2afbad19-778a-4fc5-9674-1f19c638****

TaskCode

string

用于连接用户实例的 Ticket,使用时需要先将其内容执行 base64 的解码,并保存为 xxx.ica 文件,然后打开这个文件。Python 代码示例:

import base64
response = {
    "Ticket": "W0VuY29kaW5nXQ0KSW5wdXRFbmNvZGluZz1V********",
    "RequestId": "1CBAFFAB-B697-4049-A9B1-67E1FC5F****",
}
f = open ('xxx.ica', 'w')
out = base64.b64decode(response['Ticket'])
f.write(out)
f.close()

W0VuY29kaW5nXQ0KSW5wdXRFbmNvZGluZz1V********

TaskMessage

string

云电脑连接任务 ID。

2afbad19-778a-4fc5-9674-1f19c638****

DesktopId

string

云电脑 ID。

ecd-gx2x1dhsmucyy****

示例

正常返回示例

JSON格式

{
  "RequestId": "1CBAFFAB-B697-4049-A9B1-67E1FC5F****",
  "TaskStatus": "FINISHED",
  "Ticket": "W0VuY29kaW5nXQ0KSW5wdXRFbmNvZGluZz1V********",
  "TaskId": "2afbad19-778a-4fc5-9674-1f19c638****",
  "TaskCode": "W0VuY29kaW5nXQ0KSW5wdXRFbmNvZGluZz1V********",
  "TaskMessage": "2afbad19-778a-4fc5-9674-1f19c638****",
  "DesktopId": "ecd-gx2x1dhsmucyy****"
}

错误码

HTTP status code

错误码

错误信息

描述

400 DesktopCommitMemoryHighLoad.broken The specified desktop commit memory high load. 指定云电脑内存超载
400 DesktopDiskHighLoad.broken The specified desktop disk high load. 指定云电脑磁盘超载
400 DesktopNetworkError The specified desktop network anomaly. 指定云电脑网络异常
400 InvalidClientType.AccessDenied This desktop cannot be access from this kind of client. 该云电脑不支持从此类客户端访问
400 InvalidDesktopId.NotFound The specified param DesktopId is not found. 指定的参数 DesktopId 不存在
400 NoEnoughDesktops there's no enough idle desktops for the request. 没有足够的空闲云电脑满足请求
400 NotFindDesktopId The specified DesktopId is not find. 指定的云电脑ID不存在
400 INSUFFICIENT_QUOTA Insufficient quota. 用户配额不足
400 AssignUser.ConnectionBroken Agent connection broken. 座席连接已断开
400 AuthorizeFailed.OfficeSIteId Authorize failed with wrong officeSiteId. 办公网络ID错误,鉴权失败
400 UnavailableDesktop.2903 Context deadline exceeded. Error Code - 2903 LogOnDesktopSession InnerError. 连接超时,云电脑会话内部错误
400 UnavailableDesktop.2907 Wait response timeout. Error Code 2907 Log On Desktop Session Aspserve not Ready. 等待响应超时,云电脑服务端未就绪
403 PermissionDeny.Desktop no permission to access the desktop. 无权限访问该云电脑

访问错误中心查看更多错误码。

变更历史

更多信息,参考变更详情