Mendix App 与企业微信SSO集成
作业Ralf
2021.07.08 18:48发布于技术 - 集成与扩展
2.14k5

此文档解释如何使用企业微信SSO模块使Mendix应用用户能够通过企业微信账户实现单点登录
重要提示!为了避免Studio Pro版本不兼容造成的error:
如果使用Studio Pro 8.x 请下载module https://cdn.mendix.tencent-cloud.com/wechatenterprisesso/WeChatEnterpriseSSO.mpk
如果使用Studio Pro 9.x 请下载module https://cdn.mendix.tencent-cloud.com/wechatenterprisesso/WeChatEnterpriseSSO_9.6.0.mpk


1.开通企业微信服务


进入企业微信点击立即注册或者点击企业登录


1.1 邀请同事加入或使用“添加成员”


1.JPG


1.2 通讯录配置


1.2.1 创建子部门


切换到通讯录页面,点击“+”添加子部门。名称格式为<一级部门>_<新部门>。请确保子部门名称中的前缀与一级部门名称完全一致,否则会影响后续登陆。子部门名称后缀“新部门”应与后续Mendix App中的角色名称一致。示例如下


2.JPG


1.2.2 分配成员所在部门


编辑成员信息,修改其“部门”信息,选择对应的部门,保存设置。


3.JPG


也可复选


4.JPG


1.3 应用管理


1.3.1 应用添加


选择“应用管理”-> “创建应用”


5.JPG


上传应用logo,输入应用名称及介绍,示例如下


6.JPG


选择可见部门,请选择一级部门,点击“创建应用”


7.JPG


1.3.2 设置应用主页


请先完成Mendix 应用域名的申请


点击应用页面“设置”,请将<Mendix应用域名>/tencent/login输入点击确定。示例如下:


24.jpg


1.3.3 设置应用网页授权及JS-SDK


点击“网页授权及JS-SDK”->“设置可信域名”输入Mendix应用域名,示例如下


11.JPG


9.JPG


如应用页面需使用微信JS-SDK、跳转小程序等, 需完成域名归属验证,请点击“申请校验域名”将Step1中的txt文件下载到本地,勾选“用于OAuth2.0回调的可信域名是否校验”。如果是第一次部署,由于Mendix App尚未部署,请继续后续步骤,等Mendix App部署完毕后,再次设置“申请校验域名”。示例如下


10.JPG


1.3.4 设置企业微信授权登录


点击“企业微信授权登录”->“设置授权回调域”


24.jpg


12.JPG


输入Mendix App域名点击“保存”


2.jpg


1.3.5 本地保存配置参数


将AgentId保存到本地
点击“Secret 查看”


13.JPG


点击“发送”, 获取Secret并保存本地


3.jpg


点击“我的企业”Tab页,将底部的“企业ID”保存本地,示例如下


14.JPG


2. Mendix配置


2.1 创建Mendix App


请使用腾讯云ID登陆Mendix平台
点击“Download Studio Pro”下载并安装Studio Pro


21.JPG


点击“Create App”完成App初始化


使用腾讯云ID登陆Studio Pro,点击“Open Project”


22.jpg


选择“Mendix Team Server”找到刚才创建的App后点击“OK”


23.JPG


2.2 集成WeChatEnterpriseSSO模块


2.2.1 下载WeChatEnterpriseSSO模块


下载该模块


2.2.2 导入WeChatEnterpriseSSO模块


用Studio Pro打开已有app工程,如没有工程请先创建App工程。右键点击工程选择


5.jpg


选择刚下载的WeChatEnterpriseSSO.mpk文件确认后点击import


15.JPG


2.2.3 配置WeChatEnterpriseSSO模块


点击“Settings”-> “Runtime”-> “After startup”选择“WeChatEnterpriseSSO. WeChatEnterpriseSSO_AfterStartup”


16.JPG


展开WeChatEnterpriseSSO模块,进入Configuration文件夹


17.JPG


将1.3.5节中保存的AgentID,Secret,企业ID分别赋值给AgentId,AppSecret,CorpId.将1.2节中一级部门的名称赋值给常量Prefix例如


3.JPG


则将Prefix设置为Mendix


2.2.4 配置登出页面


请自行实现以下链接实现登出功能


<App URL>/tencent/logoff 

2.2.5 Role设置


打开 “Security"在Security level中选择“Production”.“User roles”请确保角色名称与1.1节中子部门名称一致。示例如下


18.JPG


点击对应角色点击“Edit”确保“WeChatEnterpriseSSO”中对应权限勾选上


19.JPG


2.2.6 添加域名归属验证文件


如果1.3.3 开启了域名归属验证,请将txt文件保存至工程路径下的theme文件夹,示例如下


6.jpg


打开工程目录theme文件夹


20.JPG


点击“Commit”提交代码


24.jpg


2.2.7 应用部署


请过腾讯Mendix网页购买license,并完成集群初始化.参照Mendix App 腾讯部署方案部署app
将App Url修改为申请的域名


25.JPG


点击“Apply Changes”


26.JPG


如需要回到1.3.3章节完成域名归属验证


2.2.8 应用单点登录测试


进入手机企业微信->“工作台”->访问Mendix App

红猪、hercules_jia、净岢Ryan、zhengliangyu
点赞
收藏
手机查看
举报
5个评论
倒序看帖
仅看楼主
    作业Ralf
    2022.01.05 17:13 发布
    楼主
    #1
    如果使用Studio Pro 8.x 请下载该module https://cdn.mendix.tencent-cloud.com/wechatenterprisesso/WeChatEnterpriseSSO.mpk 如果使用Studio Pro 9.x 请下载该module https://cdn.mendix.tencent-cloud.com/wechatenterprisesso/WeChatEnterpriseSSO_9.6.0.mpk
    收费的阳光
    点赞
    评论
    举报
    zhengliangyu
    评论
    作业Ralf
    2022.07.05 18:00 发布
    1.3.2中的Mendix域名是什么
    首赞
    评论
    举报
    作业Ralf
    评论
    zhengliangyu
    2022.07.29 14:26 发布
    楼主
    就是你app的域名
    首赞
    评论
    举报
    dd
    2022.08.19 10:42 发布
    #2
    不购买license可以测试吗
    首赞
    评论
    举报
    Niko
    评论
    dd
    2022.09.14 10:41 发布

    可以测试,没有license 不影响应用的部署和测试。

    首赞
    评论
    举报