Devops 之LDAP的分析和選擇

統一身份認證

Devops 之LDAP的分析和選擇

最近在建設公司

單點登錄

單點登錄:(Single Sign On),簡稱為 SSO,是目前比較流行的企業業務整合的解決方案之一。SSO的 定義是在多個應用系統中,用戶只需要登錄一次就可以訪問所有相互信任的應用系統。 單點登錄網絡生活中隨處可見,比如登錄了QQ客戶端,然後你可以打開騰訊微博,QQ空間,QQ郵箱, 校友錄等等一系列的應用,這時候我們不需要在一個個再輸入用戶名和密碼了,作為受信任的站點,就可 以直接登錄了。這些我們都已經習以為常了,其實這就是單點登錄的例子,離我們一點都不遙遠。但作為 一個開發者,不只是要使用其功能,更要明白其原理並開發出支持單點登錄的應用出來。

需求

從個人的角度

入職後每個人會接觸多個系統,項目管理系統,需求管理系統,代碼倉庫,持續集成,文件服務器,有八 個系統就有八個密碼,每個系統用一個密碼安全隱患較大,每個系統都用不同的密碼也不容易記住。

從管理角度

公司需要一個統一認證系統,自助分配權限系統,定期審計,集中分配與追蹤所有權限,便於記錄。沒有 的後果,操作與安全問題無法追溯,工作效率低。會佔用大量人力去添加賬戶。建議建立統一認證系統與 自助分配權限的系統。人員複雜與傳統公司不同我們人員不固定流動性較大更需要整體把握與權限,而且 需要定期審計。多項目情況下人員變動更為複雜。解決方案通過openldap或者ad進行權限劃分配合一定的 二次開發,為什麼不建議分組分散到各個系統,添加人員與遷移成本非常高。

單點登錄 (SSO)

為用戶提供一組用戶名和密碼來登錄需要訪問的所有應用,讓他們的生活更加輕鬆。無縫集成 Nginx,Ftp,Gitlab,Jenkins,Jira、Confluence 和 Bitbucket 等所有產品,為用戶提供單點登錄 (SSO) 體 驗。

集中多個目錄

如果公司屬於集團或者已有統一認證,windowsad或ldap需要集成多個已有目錄,將任意目錄組合映射到 單個應用(非常適用於管理不在主目錄中的用戶),然後在同一位置管理身份驗證權限。開始使用適用於 AD、LDAP、Microsoft Azure AD、Novell eDirectory 等的連接器。您甚至可以創建自己的自定義連接 器。

Ldap協議

市面上只要你能夠想像得到的所有工具軟件,全部都支持 LDAP協議。比如說你公司要安裝一個項目管理 工具,那麼這個工具幾乎必然支持 LDAP協議,你公司要安裝一個 bug管理工具,這工具必然也支持 LDAP協議,你公司要安裝一套軟件版本管理工具,這工具也必然支持 LDAP協議。 LDAP協議的好處就是 你公司的所有員工在所有這些工具裡共享同一套用戶名和密碼,來人的時候新增一個用戶就能自動訪問所 有系統,走人的時候一鍵刪除就取消了他對所有系統的訪問權限,這就是 LDAP。

LdapServer方案

公司搭建LDAP Server的幾個方案。

crowd3 什麼是Crowd?

以下是來自官網的介紹: 能夠管理來自多個目錄(Active Directory、LDAP、OpenLDAP 或 Microsoft Azure AD)的用戶,並在 一個位置控制應用身份驗證權限。

為什麼考慮crowd3? Atlassian產品中最知名的就是confluence和jira。confluence和jira易用性和專業性。收費較高,公司使用 不建議使用破解版本。有webui易用性較強。

Freeipa

FreeIPA是一款集成的安全信息管理解決方案。FreeIPA包含Linux (Fedora),389 Directory Server MIT Kerberos, NTP, DNS, Dogtag (Certificate System)等等身份,認證和策略功能。搭建可以用 Redhat,Fedora,Centos搭建。有webui但是專業性較強,配置複雜。

Openldap

openLDAP,這個比較著名,yum可以直接安裝。openldap開發用c和c++實現的。配置較為複雜為命令 式的配置。可以採用docker搭建。無webui使用複雜。可以採用docker搭建,apt搭建,yum搭建,編譯 搭建。

Appacheds

Appacheds提供客戶端與server端。Appacheds為java實現。

WindowsAD

WindowsAD是一個常見方案,Windows Server也是一個常見方案。Windows Ad可以快速通過 windows Server搭建統一認證還可以同時管理筆記本。

Ldap客戶端方案

PhpLDAPAdmin 是web版本的ldap客戶端用web管理較為方便。

Apache Directory Studio java版本

客戶端。

LDAP Admin LdapAdmin是一個常用的客戶端界面較為簡單。

選型對比後的結果

crowd3收費,openldap過於簡陋,freeipa過於複雜。WindowsAD管理windows電腦,Appacheds管 理openldap相關認證。




最近幫忙建設公司部門的devops 系統,記錄一些信息。如果有前輩可以一起交流,相互學習。如果您公司也想搭建也歡迎留言交流。


分享到:


相關文章: