Atom feed of this document
  

 集成LDAP身份认证

OpenStack 身份服务支持整合已有的LDAP目录服务来做认证和授权。

当OpenStack身份服务被配置来使用LADP的后端时,你可以将认证(使用身份 特性)和授权(使用分配 特性)。

身份特性启用了管理员通过每个域活OpenStack身份服务实体来管理用户和组。

分配这个特性启用管理员使用OpenStack认证服务的SQL数据库来管理项目角色认证,通过LDAP目录来提供用户认证。

[重要]重要

对于OpenStack认证服务访问LDAP服务器的话,你必须在OpenStack认证服务上启用SELinux的authlogin_nsswitch_use_ldap 布尔值。要启用且确保重启后仍然生效:

# setsebool -P authlogin_nsswitch_use_ldap on

认证配置可分为两个独立的后端:认证(后端是用户和组)和分配(后端是域,项目,角色,角色分配)。要配置身份,在文件/etc/keystone/keystone.conf中设置一些属性,关于认证后端的配置实例,请参阅“将LDAP当作后端认证的集成”一节,关于分配后端的配置实例,请参阅“集成LDAP为分配的后端”一节。按需修改这些例子。

[注意]注意

多后端是被支持的。你可以集成OpenStack认证服务,或基于单个对LDAP服务器(身份和分配都配置为LDAP,或设置身份和分配后端为SQL或LDAP),或者使用指定域配置文件的多后端。

定义目标LDAP服务器. 在文件keystone.conf定义目标LDAP服务:

[ldap]
url = ldap://localhost
user = dc=Manager,dc=example,dc=org
password = samplepassword
suffix = dc=example,dc=org
use_dumb_member = False
allow_subtree_delete = False
[注意]注意

请配置dumb_member,如果你设置了use_dumb_member为true的话。

[ldap]
dumb_member = cn=dumb,dc=nonexistent

外挂LDAP集成设置. 为单个LDAP服务在文件 /etc/keystone/keystone.conf中设置属性,或者在/etc/keystone/domains/keystone.DOMAIN_NAME.conf 文件中配置多后端。

查询属性

使用query_scope通过LDAP来控制数据表现的范围级别(仅搜索第一级或者是整个子树)。

使用page_size来控制每页到最大结果。值为零时表示弃用分页。

使用alias_dereferencing来控制LDAP查询的非关联化选择。

使用chase_referrals来覆盖系统的默认推荐行为。

[ldap]
query_scope = sub
page_size = 0
alias_dereferencing = default
chase_referrals = 
调试

使用debug_level为LDAP调用设置LDAP调试级别。若值为零的话意味着调试没有启用。

[ldap]
debug_level = 0
[警告]警告

此值为一个位掩码,参考你的LDAP文档来可以设置什么值。

连接池

使用use_pool来启用LDAP连接池。配置连接池的大小,最大尝试次数,重连尝试,超时(-1表示不确定的等待)以及以秒算的生命周期。

[ldap]
use_pool = true
pool_size = 10
pool_retry_max = 3
pool_retry_delay = 0.1
pool_connection_timeout = -1
pool_connection_lifetime = 600
最终用户认证的连接池

使用use_auth_pool 来为最终用户认证启用LDAP连接池。配置连接池大小和以秒算的生命周期。

[ldap]
use_auth_pool = false
auth_pool_size = 100
auth_pool_connection_lifetime = 60

当你完成这些配置时,重启OpenStack身份服务:

# service keystone restart
[警告]警告

在服务重启期间,认证和授权不可用。

Questions? Discuss on ask.openstack.org
Found an error? Report a bug against this page


loading table of contents...