29.5. 使用红帽单点登录服务器(Keycloak)配置服务发现.


作为系统管理员,允许用户单独验证 3scale 并授权 3scale 通过 使用红帽单点登录 OpenShift 来发现服务。

有关将 OpenShift 配置为使用 Red Hat 单点登录部署作为 OpenShift 授权网关的示例,您可以参考 此工作流

先决条件

  • 您必须将 3scale 2.14 部署到 OpenShift Container Platform (OCP) 4.x 集群。
  • 3scale 用户若要在 3scale 中使用服务发现,必须有权访问 OpenShift 集群。

流程

  1. 在 Red Hat OAuth 服务器(Keycloak)中为 3scale 创建 OAuth 客户端。

    注意

    在客户端配置中,验证用户名是否映射到 preferred_username,以便 OpenShift 可以链接帐户。

  2. 编辑 3scale 服务发现设置:

    $ oc project <3scale-project>
    $ oc edit configmap system
  3. 验证是否已配置以下设置,其中 '< the-client-secret-from-Keycloak > 是创建 OAuth 客户端时自动生成的 Keycloak 的值:

        service_discovery.yml:
          production:
            enabled: true
            authentication_method: oauth
            oauth_server_type: rh_sso
            client_id: '3scale'
            client_secret: '<the-client-secret-from-Keycloak>'
  4. 确保用户具有适当的权限,可以查看包含可发现服务的集群项目。

    例如,要为 <namespace> 项目提供 <user> 视图权限,请使用这个命令:

    $ oc adm policy add-role-to-user view <user> -n <namespace>
  5. 修改 configmap 后,您必须重新部署 system-appsystem-sidekiq pod 以应用更改。

其他资源

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.