IM 工作台免密登录
配置钉钉、企业微信、飞书工作台免密登录,让企业成员在 IM 客户端内一键访问 Knodo
IM 工作台免密登录
企业成员在钉钉、企业微信、飞书的工作台中打开 Knodo 时,可以自动完成身份认证,无需手动输入账号密码或扫码。本文介绍如何在各 IM 平台的开放平台中配置应用,以启用工作台免密登录。
前提条件
- 拥有对应 IM 平台的企业管理员权限
- 已在 IM 开放平台创建企业自建应用
- Knodo 实例已部署并可从公网访问
核心原理
工作台免密登录的核心在于 $CORPID$ 占位符机制:
- 在 IM 开放平台配置应用首页地址时,在 URL 中加入
?corpId=$CORPID$参数 - 当企业成员从工作台打开应用时,IM 客户端会自动将
$CORPID$替换为当前企业的真实 corpId - Knodo 前端从 URL 参数中读取 corpId,结合 IM 平台的 JS-SDK 完成自动免密登录
- 登录完成后,系统根据 corpId 自动将用户加入对应的企业组织
钉钉
1. 进入应用管理
登录 钉钉开放平台,进入您的企业自建应用。
2. 配置网页应用地址
在左侧菜单选择 应用能力 > 网页应用,编辑网页应用配置:
- PC 端首页地址:
https://knodo.vip/bots?corpId=$CORPID$ - 移动端首页地址:
https://knodo.vip/workspaces?corpId=$CORPID$

3. corpId 获取方式
钉钉支持两种方式获取企业 corpId:
| 方式 | 说明 | 优先级 |
|---|---|---|
dd.corpId | H5 微应用运行时由钉钉客户端注入 | 高 |
URL $CORPID$ 占位符 | 打开应用时钉钉自动替换为真实 corpId | 低 |
Knodo 会按优先级依次尝试获取,通常无需额外配置。
4. 发布生效
配置完成后需要发布新版本,修改才能生效。
企业微信
1. 进入应用管理
登录 企业微信管理后台,进入 应用管理 > 自建应用。
2. 配置应用主页
点击应用主页旁的「设置」,配置从工作台点击进入的网页地址:
- 应用主页桌面端:
https://knodo.vip/workspaces?corpId=$CORPID$ - 应用主页移动端:
https://knodo.vip/bots?corpId=$CORPID$

3. corpId 获取方式
企业微信通过 URL $CORPID$ 占位符获取企业 corpId。员工从工作台打开应用时,企业微信会自动将 $CORPID$ 替换为企业的真实 corpId。
4. 保存生效
配置保存后即时生效,无需额外发布。
飞书
1. 进入应用管理
登录 飞书开放平台,进入您的企业自建应用。
2. 配置网页应用地址
在左侧菜单选择 应用能力 > 网页应用,编辑网页应用配置:
- 桌面端主页:
https://knodo.vip/workspaces - 移动端主页:
https://knodo.vip/workspaces

3. 与钉钉/企微的区别
飞书不支持 $CORPID$ 占位符机制,也没有类似 dd.corpId 的客户端属性。飞书的租户标识(tenant_key)通过 OAuth 服务端流程获取:
- 飞书客户端自动调用 JS-SDK 获取免登授权码
- Knodo 后端用授权码换取
user_access_token,响应中包含tenant_key - 后端根据
tenant_key自动关联企业组织
因此飞书的应用首页地址无需添加 $CORPID$ 参数。
4. 发布生效
配置完成后需要创建新版本并发布,修改才能生效。
配置汇总
| IM 平台 | 首页地址格式 | corpId 获取方式 | 是否需要 $CORPID$ |
|---|---|---|---|
| 钉钉 | https://knodo.vip/workspaces?corpId=$CORPID$ | 客户端注入 dd.corpId + URL 参数 | 是 |
| 企业微信 | https://knodo.vip/workspaces?corpId=$CORPID$ | URL 参数替换 | 是 |
| 飞书 | https://knodo.vip/workspaces | 服务端 OAuth 获取 tenant_key | 否 |
用户体验
配置完成后,企业成员的登录体验:
- 在 IM 工作台点击 Knodo 应用图标
- 系统自动识别 IM 客户端环境
- 自动完成身份认证(无需手动操作)
- 首次登录自动创建账号并加入企业组织
- 直接进入工作空间页面
整个过程对用户完全透明,实现真正的「一键直达」。
常见问题
Q:配置 $CORPID$ 后打开应用报错「无法获取企业ID」?
A:请检查:
- URL 参数名是否为
corpId(注意大小写) - 占位符是否为
$CORPID$(注意是美元符号包裹、全大写) - 是否已发布新版本(钉钉和飞书需要发布后生效)
Q:免密登录后没有自动加入企业组织?
A:请确认:
- Knodo 系统管理中已配置对应 IM 平台的企业关联
- 应用首页地址正确包含
$CORPID$参数(飞书除外)
Q:飞书为什么不需要 $CORPID$?
A:飞书的设计理念不同,租户标识通过服务端 OAuth 流程获取,不依赖客户端 URL 参数。Knodo 后端会在免登流程中自动获取 tenant_key。