13.3.5. HTPasswd


identityProviders 小节中设置 HTPasswdPasswordIdentityProvider,针对使用 htpasswd 生成的文件验证用户名和密码。

注意

htpasswd 工具程序位于 httpd-tools 软件包中:

# yum install httpd-tools

OpenShift Container Platform 支持 Bcrypt、SHA-1 和 MD5 加密哈希功能,而 MD5 是 htpasswd 的默认值。目前不支持明文、加密文本和其他散列功能。

如果修改时间更改,则无格式文件重新读取,无需重新启动服务器。

重要

由于 OpenShift Container Platform master API 现在作为静态 pod 运行,因此您必须在 /etc/origin/master/ 中创建 HTPasswdPasswordIdentityProvider htpasswd 文件,使其可以被容器读取。

使用 htpasswd 命令:

  • 要创建带有用户名和散列密码的平面文件,请运行:

    $ htpasswd -c /etc/origin/master/htpasswd <user_name>

    然后,输入 并确认该用户的明文密码。该命令将生成散列版本的密码。

    例如:

    htpasswd -c /etc/origin/master/htpasswd user1
    New password:
    Re-type new password:
    Adding password for user user1
    注意

    您可以包含 -b 选项,用于在命令行中提供密码:

    $ htpasswd -c -b <user_name> <password>

    例如:

    $ htpasswd -c -b file user1 MyPassword!
    Adding password for user user1
  • 要在文件中添加或更新登录,请运行:

    $ htpasswd /etc/origin/master/htpasswd <user_name>
  • 要从文件中删除登录,请运行:

    $ htpasswd -D /etc/origin/master/htpasswd <user_name>

例 13.4. 使用 HTPasswdPasswordIdentityProvider 的 master 配置

oauthConfig:
  ...
  identityProviders:
  - name: my_htpasswd_provider 1
    challenge: true 2
    login: true 3
    mappingMethod: claim 4
    provider:
      apiVersion: v1
      kind: HTPasswdPasswordIdentityProvider
      file: /etc/origin/master/htpasswd 5
1
此提供程序名称作为前缀放在提供程序用户名前,以此组成身份名称。
2
true 时,来自非 Web 客户端(如 CLI)的未经身份验证的令牌请求会为此提供程序发送 WWW-Authenticate 质询标头。
3
true 时,来自 Web 客户端(如 Web 控制台)的未经身份验证的令牌请求会重定向到由该供应商支持的登录页面。
4
控制如何在此提供程序的身份和用户对象之间建立映射,如上 所述
5
使用 htpasswd 生成的文件。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.