3.6. 为红帽单点登录服务器创建管理员帐户


Red Hat Single Sign-On 不提供任何预先配置的管理帐户。此管理员帐户需要登录 域的管理控制台并执行服务器维护操作,如创建域或用户或注册应用程序,旨在由红帽单点登录保护。

可创建管理员帐户:

注意

Red Hat Single Sign-On 允许 Welcome Page web 表单创建初始管理员帐户,但只有从本地主机访问 Welcome Page 时;此管理员创建方法不适用于 Red Hat Single Sign-On for OpenShift 镜像。

3.6.1. 使用模板参数创建管理员帐户

在部署 Red Hat Single Sign-On 应用模板时,SSO_ADMIN_USERNAMESSO_ADMIN_PASSWORD 参数表示为 master 域创建 Red Hat Single Sign-On 服务器的管理员帐户的用户名和密码。

这两个参数都是必需的。如果没有指定,则在模板实例化时,它们会自动生成并显示为 OpenShift 指令消息。

Red Hat Single Sign-On 服务器的管理员帐户的期限取决于用来存储 Red Hat Single Sign-On 服务器数据库的存储类型:

  • 对于 in-memory 数据库模式(sso76-ocp3-https, sso76-ocp4-https, sso76-ocp3-x509-https, 和 sso76-ocp4-x509-https 模板,帐户在整个特定 Red Hat Single Sign-On pod 生命周期中(在 pod 销毁时会丢失)
  • 对于临时数据库模式(sso76-ocp3-postgresqlsso76-ocp4-postgresql 模板),帐户在整个数据库 pod 生命周期中存在。即使红帽单点登录 pod 被破坏,存储的帐户数据会在假设数据库 pod 仍在运行的情况下保留。
  • 对于持久性数据库模式(sso76-ocp3-postgresql-persistent, sso76-ocp4-postgresql-persistent, sso76-ocp3-x509-postgresql-persistent, 和 sso76-ocp4-x509-postgresql-persistent 模板,帐户在整个用于保存数据库数据的持久介质生命周期中存在。这意味着,即使红帽单点登录和数据库 pod 都被销毁,存储的帐户数据也会保留。

部署 Red Hat Single Sign-On 应用程序模板是一种常见做法,以获取应用程序的对应 OpenShift 部署配置,然后多次重复使用部署配置(每当需要实例化新的红帽单点登录应用程序)。

如果是 临时或持久数据库模式,在创建 RH_SSO 服务器的管理员帐户后,在部署新红帽单点登录应用程序前从部署配置中删除 SSO_ADMIN_USERNAMESSO_ADMIN_PASSWORD 变量。

流程

运行以下命令,以准备之前创建的红帽单点登录应用程序的部署配置,以便在创建管理员帐户后重复使用:

  1. 识别红帽单点登录应用程序的部署配置。

    $ oc get dc -o name
    deploymentconfig/sso
    deploymentconfig/sso-postgresql
  2. 清除 SSO_ADMIN_USERNAMESSO_ADMIN_PASSWORD 变量设置。

    $ oc set env dc/sso \
      -e SSO_ADMIN_USERNAME="" \
      -e SSO_ADMIN_PASSWORD=""

在不使用模板的情况下,从镜像流部署 Red Hat Single Sign-On 服务器时,使用以下命令为 Red Hat Single Sign-On 服务器的 master realm 创建管理员帐户。

前提条件

  • Red Hat Single Sign-On 应用 pod 已启动。

流程

  1. 识别 Red Hat Single Sign-On 应用容器集。

    $ oc get pods
    NAME                     READY     STATUS    RESTARTS   AGE
    sso-12-pt93n             1/1       Running   0          1m
    sso-postgresql-6-d97pf   1/1       Running   0          2m
  2. 打开到用于 OpenShift 容器的 Red Hat Single Sign-On 的远程 shell 会话。

    $ oc rsh sso-12-pt93n
    sh-4.2$
  3. 在命令行中,通过 add-user-keycloak.sh 脚本为 master realm 创建 Red Hat Single Sign-On 服务器管理员帐户。

    sh-4.2$ cd /opt/eap/bin/
    sh-4.2$ ./add-user-keycloak.sh \
            -r master \
            -u sso_admin \
            -p sso_password
    Added 'sso_admin' to '/opt/eap/standalone/configuration/keycloak-add-user.json', restart server to load user
    注意

    上例中的 'sso_admin' / 'sso_password' 凭证仅用于演示目的。如需有关如何创建安全用户名和密码的指导,请参阅您的机构内的密码策略。

  4. 重启底层 JBoss EAP 服务器实例,以加载新添加的用户帐户。等待服务器正确重启。

    sh-4.2$ ./jboss-cli.sh --connect ':reload'
    {
        "outcome" => "success",
        "result" => undefined
    }
    警告

    在重新启动服务器时,只需在运行 Red Hat Single Sign-On 容器内重新启动 JBoss EAP 进程,而不是整个容器。这是因为重启整个容器将从头开始重新创建,无需 Red Hat Single Sign-On 服务器 管理帐户

  5. 使用上述步骤中创建的凭据,登录红帽单点登录服务器的 主域 管理控制台。在浏览器中,进入 http://sso-<project-name>.<hostname>/auth/admin for the Red Hat Single Sign-On web server, or to https://secure-sso-<project-name>.<hostname>/auth/admin for the encrypted Red Hat Single Sign-On web server,并指定用于创建管理员用户的用户名和密码。
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部