希望挂载一个应用在易搭云平台上,要如何做到,有大佬知道吗~
🌟🌟🌟🌟🌟 我在文档库中找到相关资料 希望能解决你的问题 🌟🌟🌟🌟🌟

AppID 以及 AppSecret 需要向易搭云系统提工单申请
申请 AppID 工单说明请跳转:
https://web.yidayun.com/public/form?publicKey=f8e9716aa827fe31510ea441dd729fef17025f0bd3f539b1d92ab4f6ff9b07f2f044b9e9f28d292977140e7e13c7cc7834ff1e2486ff72082fe441d27e699afe24975684fa80b55ba342073adbe0610defb347ab3683801192b1853e876688f075864ad70f2e51e19be193d90165be4d
配置第三方应用菜单流程
工作区 -> 创建应用 -> 创建功能 -> 创建菜单 -> 外部链接 -> 填写菜单名称 -> 填写第三方应用被易搭云集成的地址链接
使用易搭云用户的账户身份时,需要先同步易搭云账户到第三方应用系统。
目前支持的方式:
1、使用易搭云 OpenApi 接口全量同步用户信息接口
工作区集成方式:https://help.yidayun.com/openapi/#_3-1-%E8%8E%B7%E5%8F%96%E6%95%B0%E6%8D%AE%E8%AF%A6%E6%83%85
伙伴集成方式:https://help.yidayun.com/partnerapi/#_2-2-%E8%8E%B7%E5%8F%96%E5%91%98%E5%B7%A5%E5%88%97%E8%A1%A8
所有的通信都应该使用安全的HTTPS协议。
定期更新客户端密钥以增强安全性。
在易搭云系统中,配置OIDC客户端链接在菜单中以与易搭云建立信任关系。需要提供以下信息:
- 客户端ID(AppID):易搭云为第三方应用分配的唯一标识符。
- 客户端密钥(AppSecret):易搭云为第三方应用分配的令牌。
- 重定向URL(RedirectURL):易搭云用于发送授权码(Authorization Code)的URI。
用户在第三方应用中点击登录按钮后,第三方应用通过浏览器将用户重定向到易搭云的认证页面。在重定向URI中包含客户端ID、重定向URL(需要将URI Base64加密)。
重定向到易搭云的认证地址:
https://web.yidayun.com/third-integration?appId=f03edbc9be8c44a694b15728b4fc934b&redirectUrl=aHR0cDovLzE5Mi4xNjguMjAwLjk6ODg4OC9jYWxsYmFjaw==
参数含义
- 客户端ID(AppID):易搭云为第三方应用分配的唯一标识符。
- 重定向URL(RedirectURL):易搭云用于发送授权码(Authorization Code)的URL。
在易搭云的认证页面,用户完成登录,然后决定是否授权第三方应用访问其信息。如果用户同意,易搭云将生成一个授权码并将用户重定向回第三方应用的重定向URL。
第三方应用从重定向URL中提取AuthorizationCode。
示例代码(javascript)
// window.location.search: redirectUri?code=?
//构造一个含有目标参数的正则表达式对象
const reg = new RegExp("(^|&)code=([^&]*)(&|$)");
//匹配目标参数
const r = window.location.search.substring(1).match(reg);
// 获取 Authorization Code
const code = null == r ? null : r[2];
第三方应用使用获得的 AuthorizationCode,以及之前配置的客户端ID和客户端密钥,向易搭云发送请求以获取 AccessToken。
用户获取 AccessToken 接口 (GET 请求):
https://api.yidayun.com/sso/outside/accessToken?code=code&appId=f03edbc9be8c44a694b15728b4fc934b&appSecret=345fa2a055164860be211dca8d38126b
参数含义:
- 客户端ID(AppID):易搭云为第三方应用分配的唯一标识符。
- 客户端密钥(AppSecret):易搭云为第三方应用分配的令牌。
- 身份认证编码(AuthorizationCode):易搭云用户授权后从回调链接返回的编码。
示例代码(java)
// 换取 access_token
String url = "https://api.yidayun.com/sso/outside/accessToken?code=code&appId=f03edbc9be8c44a694b15728b4fc934b&appSecret=345fa2a055164860be211dca8d38126b"
HttpRequest request = HttpRequest.newBuilder().uri(URI.create(url)).GET().build();
HttpResponse<String> response = HttpClient.newBuilder().build().send(request,HttpResponse.BodyHandlers.ofString());
String body = response.body();
返回值
{
"success": true,
"data": {
"appId": "f03edbc9be8c44a694b15728b4fc934b",
"accessToken": "345fa2a055164860be211dca8d38126b",
"expire": 1701416769933
},
"errorMessage": "",
"errorCode": 0,
"showType": 0,
"traceId": "ieqgsd2hw99agvj"
}
返回值参数含义:
- 客户端ID(AppID):易搭云为第三方应用分配的唯一标识符。
- 访问凭证(AccessToken):访问易搭云资源的 accessToken,有效期一天。
- 访问凭证过期时间(Expire):访问易搭云资源 accessToken 的过期时间,毫秒时间戳格式。
易搭云验证授权码的有效性,并向第三方应用提供Access Token。AccessToken用于访问受保护的资源。
使用获得的Access Token,第三方应用向身份提供商的UserInfo Endpoint发送请求,以获取有关用户的详细信息。
用户获取用户信息接口 (GET 请求):
https://api.yidayun.com/sso/api/getUserInfo
headers参数:
accessToken: accessToken
参数含义:
- 访问凭证(AccessToken):访问易搭云资源的 accessToken。
示例代码(java)
String url = "https://api.yidayun.com/sso/api/getUserInfo";
HttpRequest request = HttpRequest.newBuilder().header("accessToken", "d189380601e94ed6873c0e9cde21ec38").uri(URI.create(url)).GET().build();
HttpResponse<String> response = HttpClient.newBuilder().build().send(request, HttpResponse.BodyHandlers.ofString());
String body = response.body();
返回值示例
{
"success": true,
"data": {
"account": "1568072601001571314",
"user": "1646395992762773114",
"wsn": "W856VD"
},
"errorMessage": "",
"errorCode": 0,
"showType": 0,
"traceId": "madbubyge6786t9"
}
返回值参数含义:
- 易搭云用户账户ID(account):易搭云账户唯一标识。
- 易搭云用户员工ID(user):易搭云工作区员工唯一标识。
- 易搭云工作区编码(wsn):易搭云工作区编码。
易搭云将用户信息以JSON格式返回给第三方应用。第三方应用可以使用这些信息完成用户的注册、登录,或者其他必要的操作。
感谢, karina.