技术干货初创CTO技术文

统一账号/统一认证系统的引入和搭建(LDAP)

2018-09-24  本文已影响16人  4300bd61c07f


本期我们谈一项有关企业IT基础设施的实操性话题:如何为初创企业引入并搭建自有的统一账号系统。

为什么需要统一账号/统一认证?

没人喜欢记忆一大堆混乱的账号和密码,员工不喜欢,企业更不喜欢。

企业要高效解决业务和研发问题,必须在初创期规划搭建必要的企业软件和研发工具,也就是进行IT基础设施中软件部分的选型、配置和部署。在大型企业,这样的工作会有专门的IT基础设施部门和内部工具部门负责,而在初创企业,这类工作往往需要由CTO布置,甚至亲自完成。当然,这一过程也是CTO对研发部门贯彻管理和研发思路,同时对企业总体提供IT支持设施的过程。

在公司软件基础设施中,最基础的部分就是统一账号和统一认证,这一体系相当于一张访问软件系统的“员工卡”。它能基于对每个员工的唯一账号、密码、以及其它信息的管理,简化和串联不同软件系统的身份管理、统一登录和权限控制,让员工方便地通过同一套用户名密码登录公司的大部分系统完成工作,也让行政和IT人员一站式地管理任何员工的账号和权限。

为什么选择LDAP?

初创公司选择统一账号的方案只需要考虑两个问题:广泛兼容和自有可控。

广泛兼容指应该选择有最多的软件和工具支持的统一账号方案:应选取不论是哪种操作系统下的软件、不论是云端还是本地部署、不论是开源产品还是收费软件、不论是研发用工具还是其它部门常用软件,都应能顺利接入的方案。

自有可控指这样的方案应该有可靠的私有部署和本地存储方案:无需向第三方长期采购,且随着公司规模的扩大,支持灵活的功能增加、字段增加、组织结构修改、以及复杂权限管控。

因为以上两个考虑,我不建议初创公司选用知名云办公套件或大型OA自行设计提供的统一账户管理接口,原因是兼容软件不全,迁移成本高。也不建议选择不成熟、不可控的LDAP-as-a-service类云服务产品。

满足以上两个需求且最适合初创企业的,是LDAP(Light Directory Access Protocol)这项被广泛支持的协议。这是一个轻量、灵活、通用、长期可靠、可自有部署的目录服务协议。所谓目录服务,本质上是一个适合规划组织和账户结构的数据库标准和实现。各类软件可以通过类似数据库查询的形式,统一存取LDAP内的数据,以实现账号管理和登录认证的统一。

软件选型方面,目前兼容LDAP协议的最主流实现方案有二:Linux操作系统下开源的OpenLDAP,以及Windows Server操作系统下闭源的Active Directory。我们将以OpenLDAP为例讲解,在实际选型中,只要按照操作系统的熟悉程度两者择一即可。

哪些软件和工具可以和统一账号/认证集成?

下面列出一些常用的支持LDAP作为统一登录认证后端数据库的软件和工具。CTO在为公司建设软件工具体系时,可以直接参照下表选型。事实上,大多数包含账号体系的企业级软件,尤其是技术研发相关的软件,都支持LDAP账号。

支持LDAP协议进行统一登录的软件和工具

类型 典型产品
电子邮件服务 大多数主流邮件服务软件,以及全球市场销售的绝大多数云端邮件服务
企业通信录和日历 大多数兼容 CardDav 和 CalDav 协议的通信录和日历协作产品
研发综合管理 Gitlab, Github Enterprise, Phabricator 等
知识管理 Confluence, MediaWiki 等大多数知识管理、知识库、知识协作产品
企业网盘 OwnCloud, NextCloud 等
项目/错误/集成管理 JIRA, Trello, Bugzilla, Redmine, Jenkins
数据看板 Grafana, Apache Superset
实时通信 Slack, Mattermost, IBM Sametime 等
Wifi接入 部分企业级路由器,大部分路由器网关软件,OpenWRT
虚拟专线 OpenVPN
证书管理 OpenSSH

实施要点

我们的专栏不会讲具体的部署配置细节。但会介绍实施的关键步骤以及需关注思考的重点。

1. 搭建和配置LDAP服务

2. 建立组织结构和人员数据

3. 与各软件工具集成

4. 解决日常使用问题

这样基于LDAP的统一账号体系就搭建完成了,员工可以用一个账号和密码来访问和对接全部软件和研发工具,公司的众多软件基础设施也开始能从账户层面进行简单明确的管理了。

上一篇下一篇

猜你喜欢

热点阅读