配置身份服务 (keystone) (可选)

/etc/openstack_deploy/user_variables.yml 中自定义您的 keystone 部署。

使用 SSL 证书保护 keystone 通信

OpenStack-Ansible 项目提供了使用自签名或用户提供的 SSL 证书来保护 keystone 通信的能力。默认情况下,使用自签名证书。但是,您可以通过在 /etc/openstack_deploy/user_variables.yml 中使用以下 Ansible 变量来提供您自己的证书

keystone_user_ssl_cert:          # Path to certificate
keystone_user_ssl_key:           # Path to private key
keystone_user_ssl_ca_cert:       # Path to CA certificate

注意

如果您为没有信任链(或无效/自生成 CA)的 CA 提供证书、密钥和 CA 文件,则应将变量 keystone_service_internaluri_insecurekeystone_service_adminuri_insecure 设置为 True

有关这些配置选项以及如何提供自己的证书和密钥以与 keystone 配合使用,请参阅 使用 SSL 证书保护服务 以获取更多信息。

实现 LDAP(或 Active Directory)后端

如果您已经在部署中拥有 LDAP 或 Active Directory (AD) 基础设施,则可以使用 keystone 内置的支持。Keystone 使用现有的用户、组和用户-组关系来处理 OpenStack 部署中的身份验证和访问控制。

注意

我们不建议将 keystone 中的默认域配置为使用 LDAP 或 AD 身份后端。在 keystone 中创建其他域,并为该域配置 LDAP 或 Active Directory 后端。

在身份后端由于网络问题或其他问题而无法访问的情况下,这一点至关重要。在这种情况下,默认域中的管理用户仍然可以使用不受 LDAP 或 AD 支持的默认域对 keystone 进行身份验证。

您可以通过在 /etc/openstack_deploy/user_variables.yml 中添加变量来添加带有 LDAP 后端的域。例如,此字典添加了一个名为 Users 的新的 keystone 域,该域由 LDAP 服务器支持

keystone_ldap:
  Users:
    url: "ldap://10.10.10.10"
    user: "root"
    password: "secrete"

添加上面的 YAML 块会导致 keystone playbook 在每个 keystone 服务容器中创建一个 /etc/keystone/domains/keystone.Users.conf 文件,该文件配置了由 LDAP 支持的域 Users

您可以创建更复杂的配置,这些配置使用 LDAP 过滤并以只读资源方式使用 LDAP。以下示例显示了如何应用这些配置

keystone_ldap:
  MyCorporation:
      url: "ldaps://ldap.example.com"
      user_tree_dn: "ou=Users,o=MyCorporation"
      group_tree_dn: "cn=openstack-users,ou=Users,o=MyCorporation"
      user_objectclass: "inetOrgPerson"
      user_id_attribute: "cn"
      user_name_attribute: "uid"
      user_filter: "(groupMembership=cn=openstack-users,ou=Users,o=MyCorporation)"

在上面的 MyCorporation 示例中,keystone 将 LDAP 服务器用作只读资源。该配置还确保 keystone 过滤可能的用户列表,仅保留存在于 cn=openstack-users,ou=Users,o=MyCorporation 组中的用户。

Horizon 提供多域支持,可以在部署期间使用 Ansible 变量启用

horizon_keystone_multidomain_support: True

在 horizon 中启用多域支持会在 horizon 登录页面上添加 Domain 输入字段,并在 keystone 部分添加其他特定于域的功能。

有关 LDAP Identity 后端的有效配置的更多详细信息,请参阅 Keystone 开发者文档OpenStack 管理员指南