基于钉钉通讯录,同步构建本地LDAP服务

news2024/9/27 23:33:40

上一篇《利用飞书通讯录同步搭建本地LDAP》方案发出后,引起不少企业 IT 人员共鸣。本次,宁盾针对使用了钉钉社交应用的企业推出基于钉钉通讯录(组织架构和用户信息)同步搭建本地 LDAP的方案。

钉钉已经成为很多企业日常处理工作的必备工具,它改变了企业/组织的协作方式,让线下办公乃至远程办公变得高效、便捷。HR 也会在钉钉上去管理所有员工的状态及组织架构。

钉钉作为事实上的主身份源,却无法为内部应用系统提供统一身份认证。企业内的应用系统,例如研发应用Gitlab、Github、Bitbucket,项目管理应用Jenkins、JIRA,知识管理Confluence、MediaWiki,企业网盘、邮箱等,可能使用了不同的账号认证体系(应用内自建账号或 OpenLDAP 账号),当公司内有人事变动(入职、离职、调转)时,都需要管理员在应用内手动创建、删除、修改账号和权限,既繁琐且低效,也无法避免人为操作失误带来的安全风险。

如果能整合钉钉的组织架构和用户信息,同步搭建本地 LDAP 服务,且做到及时同步,就能为 LDAP 应用提供统一鉴权,运维效率和访问体验都将得到极大提升。

5af3b3026f066843fcd242848fc06888.jpeg

实现思路

我们希望通过钉钉提供的 LDAP 作为统一身份认证和访问授权方式,但是钉钉没有开放这个能力,那么我们需要根据钉钉的组织架构和用户信息模拟创建一个 LDAP 服务。内网环境中,LDAP 用户信息的使用基本上围绕着用户名和密码,因此除了同步账号体系外,我们还需要赋予 LDAP 账号一个初始密码,并提供用户自助服务界面,允许用户本地自助修改密码。

整体实现思路如下:

• 钉钉开放平台:在钉钉开放平台创建应用,获取到 App ID、App Secret后,开启通讯录权限范围,提供给宁盾 LDAP 目录服务进行数据同步

• 配置钉钉自建应用:在宁盾 AM 统一身份管理平台配置社交帐号,输入钉钉自建应用的凭证,再添加钉钉用户源,就可以将钉钉账号同步至 AM 中

• 添加 LDAP 目录服务:添加宁盾目录服务用户源后,在应用中添加宁盾目录服务应用,账户同步中勾选钉钉用户源,即可实现数据同步

配置过程

钉钉开放平台主要配置:

1、创建企业自建应用

创建应用

78ab99e158d98d0a7085bbdb7a83244d.jpeg

31e6d719b3d4f44ff0c0a46cbab697a2.jpeg

创建完成进入应用,编辑应用

4518f1cb46b0241cad975e2c3db226cb.jpeg

设置服务器出口IP

d00ac8799d9ef6e2b075ebf7f7b12f01.jpeg

开放通讯录权限

350fcfeba51a6ad246060ee9df9cd2b7.jpeg

宁盾配置:

1、宁盾目录服务配置

登录宁盾 AM 管理员账号

添加用户源,选择宁盾目录服务

7662c22855cbdef2462f1e808e71b314.jpeg

2、添加用户源

社交账号添加,输入钉钉自建应用的凭证

1f9a5314aedec706aaac45a7c85ff5ad.jpeg

添加钉钉用户源

添加完成,就可以将钉钉的用户同步至宁盾 AM

7b97e7c60dd7236f0dce329f3abd9c8f.jpeg

宁盾目录服务同步:

添加应用

d9d37a2fb246d0321dd809f09761395b.jpeg

同步账号,就可以看到钉钉的账号已经同步至到宁盾目录服务

基于钉钉通讯录同步搭建本地LDAP

(本文来源于宁盾,仅供学习和参考,未经授权禁止转载和复制。如欲了解更多内容,可前往宁盾官网博客解锁更多干货)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/56039.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于FPGA的智能小车系统

目 录 前 言 1 第1章 系统总体方案设计 4 1.1 系统任务描述 4 1.2 控制系统要求 4 1.3 方案设计与论证 4 1.3.1 小车载体选择 4 1.3.2 主控制器选择 5 1.3.3 传感器选择 5 1.3.4 电机驱动选择 6 1.3.5 稳压电源选择 7 1.3.6 智能小车系统最终方案 7 1.4 系统总体设计 8 1.4.…

【Java开发】 Spring 07 :Spring AOP 实践详解(通过 AOP 打印数据访问层)

AOP 指是面向切面编程(通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术),利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提…

SpringBoot 3.0 新特性,内置声明式 HTTP 客户端

http interface 从 Spring 6 和 Spring Boot 3 开始,Spring 框架支持将远程 HTTP 服务代理成带有特定注解的 Java http interface。类似的库,如 OpenFeign 和 Retrofit 仍然可以使用,但 http interface 为 Spring 框架添加内置支持。 什么是…

RabbitMQ之集群方案原理

对于无状态应用(如普通的微服务)很容易实现负载均衡、高可用集群。而对于有状态的系统(如数据库等)就比较复杂。 1、业界实践 主备模式:单活,容量对等,可以实现故障转移。使用独立存储时需要借…

【Matplotlib绘制图像大全】(二十五):Matplotlib使用figure()添加画布

前言 大家好,我是阿光。 本专栏整理了《Matplotlib绘制图像大全》,内包含了各种常见的绘图方法,以及Matplotlib各种内置函数的使用方法,帮助我们快速便捷的绘制出数据图像。 正在更新中~ ✨ 🚨 我的项目环境: 平台:Windows10语言环境:python3.7编译器:PyCharmMatp…

2022re:Invent:亚马逊云科技拥有超过15年的数据创新经验

在探索适合企业的数据战略的道路上,企业并不孤单。亚马逊云科技有着超过15年的数据领域创新经验。并一直在尝试通过创新的方法去改进数据存储和分析的过程:亚马逊云科技在云中提供了第一个可扩展存储服务S3、发布了云上第一个专门构建的数据库DynamoDB和…

easyrecovery2023免费版电脑数据恢复软件下载功能介绍

误删了重要文件?电脑中毒数据丢失?本想拷贝却手抖格式化了?那可以试试easyrecovery,这是一款十分强大的电脑数据恢复软件,界面简洁明了,操作也是十分的简单,只需要根据文字提示来进行操作即可进…

B端产品实战课读书笔记:第七章B端产品常用功能设计

目录 一、工作台 二、列表 三、搜索/筛选 3.1输入框搜索 3.2 单选/复选筛选 3.3 独立/联动筛选 3.4 其他 四、审批 4.1概念 4.2扩展功能 4.3设计要点 五、用户--角色--权限 5.1 什么是RBAC模型 5.2单系统的用户权限设计 5.3多系统的用户权限设计 六、可视化 6.…

用HTML+CSS做一个漂亮简单的音乐网站

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

[附源码]计算机毕业设计springboot新能源汽车租赁

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

基于STM32G431嵌入式学习笔记——九、IIC总线(一)EEPROM

一、基础原理剖析 先前的实验中我们都是通过程序设计语言去调用串口、定时器、引脚等硬件设备进行从0到有的功能实现,所有的指令以及数据均来自程序设计语言,而没有想计算机一样将一些必要数据存入存储器中。 IIC总线是我们嵌入式板子上进行数据传输的主…

太简单了,一文彻底搞懂Jenkins的用法

程序员宝藏库:https://gitee.com/sharetech_lee/CS-Books-Store 你想要的,这里都有! 我在前公司的某个部门做过一年CV算法工程师,部门推崇全栈式开发。换句话说,做算法,不能只聚焦于算法,要全流…

阿里云NAS存储部署简介

近期在阿里云上部署OCP需要用到NAS,其中遇到NAS无法扩容的问题,在此简单笔记。 1、部署NAS 参照github.com\kubernetes-sigs\alibaba-cloud-csi-driver\docs\nas.md部署说明,需要执行以下步骤: Step 1: Create RBAC resource …

四、伊森商城 前端基础-Vue MVVM思想Vue安装单向绑定 p21

目录 一、MVVM 思想 二、Vue 简介 2.1、安装 2.1.1、初始化vue项目 -y默认确定 2.1.2、安装上vue的2.6.11版本 三、Vue的单向绑定 一、MVVM 思想 M:即 Model,模型,包括数据和一些基本操作 V:即 View,视图&#xf…

【Docker】常用命令总结

Docker是基于Go语言实现的云开源项目。Docker的主要目标是**“Build,Ship and Run Any App,Anywhere”**。也就是通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的APP(可以是一个WEB应用或数据库应用等等)及其运…

容器开发运维人员的 Linux 操作机配置优化建议

"工欲善其事必先利其器", 作为一个PAAS平台架构师, 容器相关技术(docker, k8s等)是必不可少的. 本文简单介绍下我自己的Linux操作机配置. 提升工作效率, 提高使用体验. :heart::heart::heart: :exclamation: 注意: 本文以CentOS 7.6 为例, RHEL7.6 操作类似. Ubuntu系…

为什么简历上不要轻易写“精通分布式”,一线大厂为什么面试必问分布式?

为什么要学习分布式? 作为一名后端 Java 程序员,我们在找工作写简历的时候除了高并发经验。一般情况下都还会写上自己熟悉/了解/掌握/精通分布式系统,所以高并发和分布式大多是成对出现的。 在某直聘网站上搜到的 Java 岗位 这么多金的一个知…

Shiro-SpringBoot (二)

在上一节中实现了在SpringBoot中使用Shiro做权限控制,但是针对上一节留下的不足点,在这里进行一下优化和改造,主要有一下几点: 支持AJAX请求支持FreeMarker模板URL拦截提取到yml配置文件 (一) 支持AJAX请求 如果是AJAX请求URL接口&#xff0…

软件外包公司真的去不得吗?

各位小伙伴们!好!啊!最近全国大部分地区都降温了,大家记得做好保暖,不要生病。 无论是应届毕业生,还是准备跳槽的测试人,都有面对“软件外包”公司的可能。有些人说进入外包公司就相当于给履历…

电子招标采购商城系统:优化传统采购业务,提速企业数字化升级

后疫情时代,电子元器件供应链发生了巨大的变化,缺货已经影响了大多数企业,电子元器件采购人员每天被“缺货”“涨价”的字眼包围着,对电子元器件企业的发展带来了极大的限制。当前,借助数字化技术对电子元器件采购管理…