1 政务成钉钉和普通钉钉的区别
政务钉钉也叫专有钉钉,政务钉钉的使用对象是政府职能部门,普通钉钉的使用对象主要是企业。
2 政务集成钉钉的前提条件
部署DataViz的服务器需要外网的访问权限,因为要通过访问钉钉的服务器进行登录校验以及获取用户信息。开发环境使用域名为:https://openplatform.dg-work.cn,应用发布后的域名请跟钉钉工程师确认。
3 集成政务钉钉的使用场景
开发人员通过DataViz的登录页面登录dataviz,制作公共项目、看板以及看板权限设置,然后对钉钉用户进行授权,然后钉钉用户就可以通过钉钉客户端(移动端和PC端)的工作台访问DataViz的看板展示页面,进行看板的查看。
4 钉钉集成步骤说明
4.1 钉钉开发平台申请应用
- 登录政务钉钉开放平台,地址:https://openplatform-portal.dg-work.cn/
- 使用管理员登录,然后跳转至“开发者后台”(https://openplatform-portal.dg-work.cn/devPage/#/myApp)
- 创建应用 根据实际情况填写先关信息,应用类型选择“H5微应用”,然后选择“确定”
- 然后在创建应用的列表中,选择刚刚创的应用的“详细”操作选项。
- 在【凭证与基础信息】中, 记录应用的AppKey和AppSecret,后边会用到。
- 在【应用配置】中填写应用的使用场景,配置调用API的服务器IP地址,以及应用的访问地址等信息。
假设DataViz部署后的访问地址是http://www.dataviz.com/dataviz-web/src/index.html,
移动端首页地址:http://www.dataviz.com/dataviz-web/src/index.html#/dingtalk/mobile;
PC端首页地址:http://www.dataviz.com/dataviz-web/src/index.html#/dingtalk/pc;
管理后台地址:http://www.dataviz.com/dataviz-web/src/index.html#/dingtalk/manage。
- 在应用的权限中勾选全部服务端的全部权限。
4.2 DataViz配置修改
打卡路径dataviz-web\src\js\lib\dingtalk\,用dingtalk.zw.open.js替换dingtalk.open.js;
打开路径dataviz-web\src\modules\security\dingtalk\,用signin_zw-xxx.js替换signin-xxxx.js;
修改dataviz-service\WEB-INF\conf\dingtalk.properties文件,把dingtalk.zwdd.apply的值改为true;然后把上面申请应用中第5步记录的AppKey、AppSecret配置到对应的位置; dingtalk.zwdd.domainName的值为服务端调用API的域名,文档默认配置为开发环境,发布后的具体地址请跟钉钉工程师确认。
修改dataviz-service\WEB-INF\conf\spring\applicationContext-security.xml文件,找到如下配置,并解开注释:
<!-- <authentication-provider ref="dingtalkAuthenticationProvider" /> 勿删 钉钉 登录 需要解开此注释-->
<!-- 勿删 钉钉 登录 需要解开此注释 <beans:bean id="dingtalkLoginFilter" class="com.neusoft.saca.dataviz.authentication.springsecurity.dingtalk.DingTalkAuthentationProcessingFilter"> <beans:property name="authenticationManager" ref="authenticationManager"></beans:property> <beans:property name="authenticationSuccessHandler" ref="dingtalkAuthenticationResultHandler"></beans:property> <beans:property name="authenticationFailureHandler" ref="dingtalkAuthenticationResultHandler"></beans:property> </beans:bean> <beans:bean id="dingtalkAuthenticationResultHandler" class="com.neusoft.saca.dataviz.authentication.springsecurity.dingtalk.DingTalkAuthenticationResultHandler"></beans:bean> <beans:bean id="dingtalkAuthenticationProvider" class="com.neusoft.saca.dataviz.authentication.springsecurity.dingtalk.DingTalkAuthorizationAuthenticationProvider"></beans:bean> -->
<!-- <custom-filter before="FORM_LOGIN_FILTER" ref="dingtalkLoginFilter"></custom-filter> 勿删 钉钉 登录 需要解开此注释-->
4.3 用户集成
完成以上操作即可完成钉钉的免登陆集成,但是对用户的看板授权还需要做用户集成,DataViz默认使用钉钉账号的employeeCode属性作为主键。
用户集成参考:系统集成中的《第4章 用户集成》
4.4 发布应用
- 回到开发者后台(https://openplatform-portal.dg-work.cn/devPage/#/myApp),应用的列表中,点击“详细”操作选项,发布应用。
- 应用发布后,可见应用的用户在使用钉钉客户端时,就可以在工作台中看到发布的应用了。