搜索

2.2. 将 Red Hat OpenStack Platform 与红帽单点登录集成

download PDF

使用 Red Hat Single Sign-On (RH-SSO)部署 Red Hat OpenStack Platform (RHOSP)后,您必须将 RH-SSO 与 RHOSP 集成。

流程

  1. 创建一个联邦域:

    $ openstack domain create <federated_domain_name>

    输出示例:

    +-------------+----------------------------------+
    | Field       | Value                            |
    +-------------+----------------------------------+
    | description |                                  |
    | enabled     | True                             |
    | id          | b493634c9dbf4546a2d1988af181d7c9 |
    | name        | my_domain                        |
    | options     | {}                               |
    | tags        | []                               |
    +-------------+----------------------------------+
  2. 设置联邦身份提供程序:

    $ openstack identity provider create --remote-id https://<rh-sso_fqdn>:9443/realms/<realm> --domain <domain_name> kcipaIDP

    <rh-sso_fqdn > 替换为 RH-SSO 的完全限定域名,将 < realm& gt; 替换为 RH-SSO 域。默认域是 master。将 <federated_domain_name > 替换为在第 1 步中创建的联邦域的名称。

    输出示例:

    +-------------------+-----------------------------------------------------+
    | Field         	| Value                                               |
    +-------------------+-----------------------------------------------------+
    | authorization_ttl | None                                                |
    | description   	| None                                                |
    | domain_id     	| b493634c9dbf4546a2d1988af181d7c9                    |
    | enabled       	| True                                                |
    | id            	| kcipaIDP                                            |
    | remote_ids    	| https://rh-sso.fqdn.local:9443/realms/master        |
    +-------------------+-----------------------------------------------------+
  3. 创建一个映射文件,它对云的身份需求是唯一的。

    Example:

 cat > mapping.json << EOF
[
    {
        "local": [
            {
                "user": {
                 "name": "{0}"
                },
                "group": {
                    "domain": {
                     "name": "<federated_domain_name>" 1
                    },
                    "name": "<federated_group_name>" 2
                }
            }
        ],
        "remote": [
            {
                "type": "OIDC-preferred_username" 3
            }
        ]
    }
]
EOF
1
<federated_domain_name> 是在第 x 步中创建的域。
2
federated_group_name 选择一个名称。您将在后续步骤中创建此功能
3
您必须使用 OIDC-preferred_username 作为 RH-SSO 的声明 ID
  1. 使用映射文件为 RHOSP 创建联邦映射规则。在提供的示例中,从 mapping.json 文件创建的映射规则命名为 IPAmap

    openstack mapping create --rules <file> <name>

    例如:

    $ openstack mapping create --rules mapping.json IPAmap
  2. 创建一个联邦组:

    $ openstack group create --domain <federation_domain_name> <federation_group_name>
  3. 创建 Identity 服务(keystone)项目:

    $ openstack project create --domain <federation_domain> <federation_project_name>
  4. 将 Identity 服务联邦组添加到角色中:

    $ openstack role add --group <federation_group_name> --group-domain <federation_domain> --project <federation_project_name> --project-domain <federation_domain> member
  5. 创建 OpenID 联邦协议:

    $ openstack federation protocol create openid --mapping IPAmap --identity-provider kcipaIDP
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.