如何以标准方式在LDAP中仅存储用户名和密码且无需新建对象类?
解决方案:使用
simpleSecurityObject标准对象类 你要的标准实现方式确实存在——LDAP标准定义的simpleSecurityObject对象类就是专门用来仅存储用户名和密码的,完全不需要额外创建自定义对象类,也不用填写CN、SN这类冗余属性。
核心优势
- 仅要求两个必填属性:
uid(用户名)和userPassword(密码,通常存储哈希值) - 属于LDAP标准对象类,所有主流LDAP服务器(如OpenLDAP、389 Directory Server等)都原生支持
- 后续如果需要扩展用户属性,可直接叠加其他对象类(比如
inetOrgPerson),无需重构现有数据
示例LDIF创建用户
你可以用以下LDIF格式创建仅含用户名和密码的用户:
dn: uid=johndoe,ou=users,dc=example,dc=com objectClass: top objectClass: simpleSecurityObject uid: johndoe userPassword: {SSHA}yourhashedpassword
为什么inetOrgPerson不行?
inetOrgPerson继承自organizationalPerson,而organizationalPerson又继承自person对象类——person强制要求cn(通用名)和sn(姓氏)作为必填属性,所以你之前用它的时候必须填这两个字段,不符合你的极简需求。
内容的提问来源于stack exchange,提问作者Mateo Bertogliati
相关产品推荐
相关产品推荐

