LDAP与关系数据库

时间:2012-06-29 22:07:54

标签: authentication ldap authorization relational-database

我在网上搜索了一个绝望的令人失望的搜索问题之后来找你: 哪一个更快:LDAP或关系数据库?

我需要设置一个同时具有用户身份验证和授权的系统。 我知道LDAP有这种需求的“结构”,但它真的比MySQL快吗?

3 个答案:

答案 0 :(得分:7)

出于身份验证和授权的目的,我认为LDAP提供了性能和简单性或安装和维护之间的最佳组合。 LDAP作为协议非常小,需要相对较少的网络带宽。小协议也使加密传输具有相当高的性能。

LDAP也很简单,服务器易于部署,现代,专业品质的LDAP服务器提供了令人印象深刻的性能与关系数据库,所有其他条件相同,如硬件和查询类型。

我同意在您的情况下可以使用其中任何一种,但由于其简单性和较低的维护成本,LDAP通常更适合身份验证和授权。至于性能,我测试的LDAP服务器每秒提供大约28,000次身份验证,而postgres在同一硬件上提供约42%的数量,但很难比较苹果和橙子。

现代专业品质的LDAP服务器还提供极其强大且快速的加密哈希,用于安全密码存储 - 以及如果客户端必须使用SASL的DIGEST-MD5机制,则需要可逆密码的情况下,如AES的相当强的可逆块密码无密码验证。

答案 1 :(得分:5)

我同意Al,一般说哪个更快是不可能的。这完全是背景。 我喜欢在这个真理之后,Al然后提出一个普遍的观点,即LDAP很慢。 :)我离题了......

开玩笑说,它归结为你要做的事情与目标系统优化的目标。 MySQL / MSFT SQL Server /等。被构建为通用存储,您将(倾向于)在数据上存储具有各种查询模式的规范化数据。它们在堆栈的多个层面上具有各种逻辑,以尝试帮助您执行各种类型的查询。对您的数据进行计算,甚至让您在最了解情况时向QP提示。 LDAP目录倾向于以完全不同的方式进行优化...就像存储具有一组特定查询模式的层次结构组织对象(由LDAP RFC指定)。例如,AD很快......非常快。它针对对象搜索进行了优化检索和相关操作(如auth)。

像任何事情一样,你既可以使用也可以使用。

如果没有处于疯狂的比例模式,我怀疑你可以非常成功地使用它。

答案 2 :(得分:0)

IMO这不是一个真正的问题,因为它总是取决于特定的实现

我只能把我的经验放在这里:LDAP很慢,SQL很快。我使用MS SQL 2008,在我的情况下,由于它对重复查询的智能缓存,它非常快。

但是你需要它特别快吗?在使用用户,授权和身份验证时,基于LDAP的解决方案通常可以更轻松,更好地与其他软件和/或LAN基础架构集成。