Skip to content

如何将丰盘集成至企业微信平台

企业微信是腾讯微信团队为企业客户开发的互联网专业办公协同一体化平台,企业微信拥有与微信一致的沟通体验,丰富免费的OA应用插件,并可以实现与微信消息、小程序、微信支付等互通,助力企业实现高效办公和管理。

应广大客户的要求,在丰盘v23.9商业版里,我们实现了与企业微信平台的集成认证打通,管理员经过正确配置之后,所有企微用户不再需要记住密码,即可使用企业微信账号扫码免密登录系统,实现账号打通,同时也可以在企业微信工作台入口一键点击进入系统的效果。

重要限制

由于腾讯企业微信的安全限制,您需要准备好一个经过工信部 ICP备案过的域名 用于访问丰盘系统(可在 ICP/域名信息备案管理系统 查询),该域名的认证企业主体必须与您企业微信的认证主体相同,或具有关联关系,否则您将无法配置企业微信后台(详见 企业微信:企业内部开发配置域名指引。同时,丰盘系统所在的主机在访问腾讯企业微信服务器时必须使用 公网静态IP(可配置多个公网静态IP白名单,但无法配置网段)才能实现对接,如果丰盘主机访问外网使用的公网IP是动态分配的,无法提前配置在企业微信后台的话,您将无法正常使用企业微信认证打通的功能。

腾讯企业微信配置

复制企业标识CorpID字段到记事本

使用企业微信管理员账号登入企微管理后台,在 我的企业/企业信息 页面找到 企业ID 字符串,将其复制粘贴到记事本里,后续配置需要用到此字段。

企业微信管理后台-获取企业ID

创建企业自建应用指向丰盘系统

企业微信支持自建内部应用,指向局域网已有的IT系统的网址,实现系统集成打通。我们找到 应用管理/企业应用自建 版块,创建一个叫丰盘ECM的内部应用,您也可以使用自定义的名称和LOGO。

企业微信管理后台-自建应用

企业微信管理后台-配置自建应用信息

(可右键下载丰盘系统的淡蓝背景或白色背景的LOGO图标)

下载丰盘LOGO

丰盘白色LOGO图标

复制应用标识AgentId和应用密钥Secret字段到记事本

新建完成之后,我们点击该应用图标进入详细配置界面,然后复制该自建应用的标识字符串AgentId字段到记事本,并点击Secret旁边的查看按钮,获取密钥字段,保存至记事本后续用到。应用标识和密钥对信息是丰盘系统在服务器上访问企业微信服务接口时所使用的身份认证信息。

企业微信管理后台-获取应用标识

企业微信管理后台-查看应用密钥信息

配置集成认证的可信域名及可信IP

企业微信出于安全限制,要求企业自建应用的绑定域名(如访问丰盘系统的网址)必须是经过工信部 ICP备案的域名 ,并且该域名的认证企业主体必须与本企业微信的认证主体相同,或具有关联关系。例如您计划使用的网盘域名为 pan.mycompany.com:8000 ,那么 pan.mycompany.com 这个域名的ICP备案主体就需要与您企业微信认证的信息保持一致,您可以在 工信部ICP/域名信息备案管理系统 进行查询。

工信部ICP域名备案系统

准备好可信网盘域名之后,我们在应用的详细配置页面最下面找到开发者接口配置选项。

企业微信管理后台-配置可信域名及IP白名单

点击 网页授权及JS-SDK 配置菜单,填入准备好的可信域名及端口之后,腾讯企微服务器需要通过互联网实时访问该地址下的某个特定TXT文件,来验证您是否对该域名具有管理权限,同时校验域名是否有ICP备案信息才能通过可信验证。

企业微信管理后台-配置可信域名1

如果丰盘系统所在主机本身就暴露在公网上可以被腾讯服务器访问到(不太安全),那么可以使用该主机做校验,如果不是,那么您需要准备一台可被公网访问到的临时主机用于校验(您可以在公有云上临时采购一台按量计费的主机,1小时费用不到1块钱,参考文章 5分钟快速在阿里云/腾讯云等公有云平台购买云主机并搭建丰盘演示环境 )。注意,验证工作是一次性的,验证完之后您可回收此临时主机

下载界面提示的验证TXT文件,并按下面的代码提示将该文件保持文件名不变上传至待验证的公网主机,并配置好域名DNS解析至该公网主机IP。(此处假设计划使用的端口号是8000,若使用其他端口,则需要替换下面代码里的8000即可)

bash
# 如果您在丰盘主机上运行,则需要先下线丰盘系统,避免端口冲突
sh /opt/xpan/tools/xpc.sh stop

# 创建临时目录,并将刚刚下载的验证文件上传至此目录下
mkdir -p ~/wecomauth

# 如果该临时主机没有安装Docker,您可以使用curl或wget其中一条命令进行安装
# 如果您在丰盘系统所在主机上验证,则可跳过此步骤
sudo curl https://releases.rancher.com/install-docker/20.10.sh --output docker-install.sh && sudo bash ./docker-install.sh --mirror Aliyun

sudo wget https://releases.rancher.com/install-docker/20.10.sh -O docker-install.sh && sudo bash ./docker-install.sh --mirror Aliyun

# 运行临时代理容器,根目录映射至上述临时创建的工作目录,并对外暴露8000的公网端口
# 此时在浏览器里应该可以通过IP或域名访问到验证文件
# http://公网IP地址:8000/WW_verify_skdfkeixlasdklfsldf.txt
# http://企业网盘域名:8000/WW_verify_skdfkeixlasdklfsldf.txt
docker run --rm -p 8000:80 -v ~/wecomauth/:/usr/share/nginx/html/ nginx

# 回到腾讯企业微信管理后台点击域名验证...

# 验证成功后,删除临时容器及临时目录
rm -rf ~/wecomauth/

提示

企业微信仅在验证时需要通过互联网访问网盘域名,此时要求网盘域名DNS解析至公网IP地址,但是验证工作是一次性的,管理员可以在验证完成之后,将网盘域名的重新DNS解析至局域网私有IP上,不影响用户的日常使用,这样可以避免将网盘长期暴露在互联网上,提高安全性。

同样的操作,我们还需要点击 企业微信授权登录 配置菜单,配置和前面相同的回调域名及端口,例如 pan.mycompany.com:8000 。由于丰盘系统采用WEB网页机制进行认证,因此此处我们只需要配置第一个选项即可。

企业微信管理后台-配置企业微信授权登录回调域名

最后,我们需要配置 企业可信IP 白名单列表,注意此地址与前面验证可信域名使用的IP地址不一定相同,此地址是丰盘系统所在主机主动访问腾讯企微服务器时使用的NAT出口IP地址,腾讯会使用该IP白名单作为防火墙来拦截其他未配置的网络请求,该IP地址不需要被腾讯企微或公网访问到

企业微信管理后台-配置企业可信IP列表

如果该主机有且只有一个NAT或公网IP地址,您可以在服务器上运行以下命令获取到该IP地址,如果您单位的机房采用使用的是网络NAT IP地址池的话,您需要咨询机房网络管理员,获取分配给您单位的所有公网IP地址,将其全部配置在上面的企业微信可信IP名单里。

bash
# 获取服务器对外访问使用的IP地址
curl cip.cc

配置企微客户端工作台的入口页面

至此,我们完成了企业微信的配置准备工作。为了方便用户在企微PC或手机客户端里通过工作台页面点击快速进入丰盘系统,我们还可以配置应用主页信息,例如 http://pan.mycompany.com:8000/app/

企业微信管理后台-配置用户工作台入口链接

企业微信管理后台-配置用户工作台入口链接2

企业微信管理后台-客户端工作台入口

丰盘系统后台配置

在完成上述企业微信的配置之后,我们收集到了三个字段信息:企业标识、应用标识和应用密钥。然后我们需要使用系统管理员账号登入丰盘后台,在 系统管理 / 用户管理 页面里找到企业微信集成的配置页面,将上述三个字段填入系统配置中,然后点击验证配置,没有问题的话即可保存。

企业微信集成配置界面

在正确配置好企微字段信息之后,普通用户在登录页面可以看到企业微信的登录入口,点击企业微信图标即可扫码登录,如果用户在PC端已经登录了企业微信的客户端,则网页端无需扫码,可直接一键使用客户端身份认证登录,全部过程无需输入密码。

开启企业微信认证的登录页面

用户也可以在企业微信PC客户端及手机客户端的工作台界面找到丰盘ECM的入口,在工作台页面直接免密登入系统。

企业微信对接后可在工作台打开

微信图片_20230930122341