如何使用ldap作为身份后端来配置,引导Openstack keystone而不返回身份验证失败?

时间:2017-10-13 02:06:25

标签: openstack keystone

我使用ldap作为keystone身份后端,但它不能像我预期的那样工作。 我总是得到身份验证失败的http 401响应。

我按照这些文档来配置我的keystone和ldap:

我引用此文档来配置keystone:https://docs.openstack.org/keystone/latest/admin/identity-integrate-with-ldap.html

我引用此文档来配置ldap:https://wiki.openstack.org/wiki/OpenLDAP

我的openstack ldif文件是这样的(这里似乎没有管理员用户,我将所有这些添加到我的ldap中):

dn: dc=openstack,dc=org
dc: openstack
objectClass: dcObject
objectClass: organizationalUnit
ou: openstack

dn: ou=Groups,dc=openstack,dc=org
objectClass: top
objectClass: organizationalUnit
ou: groups

dn: ou=Users,dc=openstack,dc=org
objectClass: top
objectClass: organizationalUnit
ou: users

dn: ou=Roles,dc=openstack,dc=org
objectClass: top
objectClass: organizationalUnit
ou: roles  

我的openstack keystone.conf [ldap]是:

url = ldap://localhost
user = cn=admin,dc=openstack,dc=org
password = password
suffix = dc=openstack,dc=org

我的ldap slap.conf是:

 database        bdb
 suffix          "dc=openstack,dc=org"
 rootdn          "cn=admin,dc=openstack,dc=org"
 rootpw  password

当我输入命令时( - os-password nomoresecret 是默认的devstack配置密码,我最初使用它.deststack安装keystone,它使用mysql作为所有keystone服务后端默认情况下):

openstack --os-username admin --os-password nomoresecret --os-domain-name default --os-auth-url http://127.0.0.1:5000/ token issue

它返回:

The request you have made requires authentication. (HTTP 401) (Request-ID: req-bbd485e6-b689-4bf3-b8f8-7d55f994e79f)

当我输入此命令时( - os-password 密码 是ldap rootpw密码。)

openstack --os-username admin --os-password password --os-domain-name default --os-auth-url http://127.0.0.1:5000/ token issue

它返回:

The request you have made requires authentication. (HTTP 401) (Request-ID: req-87bd8a1e-901e-4077-8461-095e3b7ee44e)

我找不到一个特定的演练指南,关于" bootstrap keystone with identity ldap guide(安装和配置keystone的文档更多关于使用mysql)"。

我指的是:Ldap connection with Openstack could not find user : admin,但似乎还没有解决问题。

任何人都可以帮助我使用keystone.conf和ldap .ldif文件的基本正确配置,以及如何使用ldap作为身份后端来引导keystone

我想先用ldap手动配置keystone(虽然我的openstack是由devstack安装的,默认情况下它的版本来自master分支。事实上,我使用devstack一次用ldap安装keystone,但是验证失败时失败了)。

任何人都可以提供帮助,谢谢你。

0 个答案:

没有答案