开发者社区 问答 正文

钉钉如何获取ticket套件?

钉钉如何获取ticket套件?

展开
收起
真的很搞笑 2024-01-31 20:17:08 68 分享 版权
阿里云 AI 助理回答

在钉钉中获取Ticket套件通常需要通过调用相关API接口来实现。以下是详细的步骤和说明,帮助您完成Ticket的获取和使用:


1. 配置钉钉应用权限

在获取Ticket之前,需要确保您的钉钉应用已正确配置相关权限。以下是关键权限点及其对应的接口信息:

  • 个人手机号信息Contact.User.mobile
  • 通讯录个人信息读权限Contact.User.Read
  • 调用SNS API时需要具备的基本权限snsapi_base
  • 调用企业API基础权限qyapi_base
  • 生成微应用管理后台accessToken:需配置相关权限
  • 自定义机器人接入发送消息:需配置相关权限

注意:确保您的应用已开通上述权限,并根据实际需求选择合适的权限点。


2. 调用CreateTicket接口

钉钉的Ticket通常用于生成免密且免登录的访问链接,适用于嵌入第三方系统或分享场景。以下是调用CreateTicket接口的具体步骤:

请求参数

参数名类型是否必填描述示例值
WorksIdstring开通嵌入的报表ID(支持仪表板、电子表格、数据大屏等)a206f5f3-****-e9b17c835b03
TicketNumintegerTicket的票据数量,默认值为1,最大值为999991
UserIdstringQuick BI的UserId,可通过QueryUserInfoByAccount接口获取46e537466****92704c8
AccountNamestring用户账号名称,格式为主账号或[主账号:子账号]测试用户
AccountTypeinteger用户账号类型(1:阿里云账号,3:Quick BI自建账号,4:钉钉等)4
ExpireTimeinteger过期时间,单位为分钟,默认为240200

返回参数

参数名类型描述示例值
RequestIdstring请求IDD787E1A3-A93C-424A-B626-C2B05DF8D885
Resultstring生成的Ticket值ccd3428c-****-****-a608-26bae29dffee
Successboolean请求是否成功true

3. 拼接免密且免登录链接

获取Ticket后,可以将其拼接到目标URL中,生成免密且免登录的访问链接。以下是一个通用的拼接格式:

https://<目标域名>/<目标路径>?<参数>=<值>&sls_ticket=<Ticket>&isShare=true&hideTopbar=true&hideSidebar=true&ignoreTabLocalStorage=true

示例

假设目标域名为sls.console.aliyun.com,目标路径为lognext/project/<Project名称>/dashboard/<仪表盘ID>,则拼接后的链接可能如下:

https://sls.console.aliyun.com/lognext/project/<Project名称>/dashboard/<仪表盘ID>?slsRegion=<Project所在地域>&sls_ticket=eyJ***************.eyJ******************.KUT****************&isShare=true&hideTopbar=true&hideSidebar=true&ignoreTabLocalStorage=true

4. 动态生成Ticket

如果需要在第三方系统中动态生成Ticket,建议使用RAM角色调用CreateTicket接口,以降低安全风险。以下是具体操作步骤:

  1. 创建RAM用户和RAM角色

    • 创建一个可信实体为阿里云账号的RAM角色。
    • 为RAM用户授予STS的管理权限AliyunSTSAssumeRoleAccess)。
  2. 授权RAM角色

    • 为RAM角色授予调用CreateTicket接口的权限以及日志服务的相关权限。
  3. 调用AssumeRole接口

    • 使用RAM用户调用AssumeRole接口,获取SecurityTokenAccessKeySecretAccessKeyId
  4. 调用CreateTicket接口

    • 使用上述参数扮演RAM角色,调用CreateTicket接口生成Ticket。

5. 注意事项

  • Ticket的有效性:生成的Ticket只能使用一次,默认有效期为一天,最长为30天。
  • 安全性:建议使用临时身份凭证(STS Token)调用接口,避免泄露长期访问密钥。
  • 测试链接:首次在浏览器中打开免登录链接时,Ticket会失效,需重新生成新的Ticket。

通过以上步骤,您可以成功获取并使用钉钉的Ticket套件,实现免密且免登录的访问功能。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答