GoCD 加入基础密码验证

GoCD 加入基础密码验证

💡 原文中文,约1100字,阅读约需3分钟。
📝

内容提要

本文介绍为GoCD配置基于文件的认证。先安装htpasswd工具(CentOS用httpd-tools,Ubuntu用apache2-utils),用命令生成密码文件,再在GoCD管理页面的Security→Authorization Configurations中添加为认证方式,之后即可用账号密码登录。忘记密码时,重新生成密码文件覆盖原文件即可。

🔎

延伸解读

为什么需要为 GoCD 添加密码验证

文章指出,刚安装好的 GoCD 默认没有任何安全措施,任何人都可以创建 pipeline,并且每个人都拥有 admin 权限,可以操作 pipeline 等信息。这种开放状态会导致数据安全无法保证。因此,为 GoCD 设置密码验证是保护 pipeline 安全的关键步骤。

基于文件的认证方式与依赖工具

文章采用基于文件的认证方式,依赖 GoCD 的 filebased-authentication-plugin 插件。生成密码文件需要使用 htpasswd 工具,该工具可能未预装。CentOS 系统可通过 yum install httpd-tools 安装,Ubuntu 系统可通过 apt-get install apache2-utils 安装。

配置流程与密码重置方法

安装 htpasswd 后,使用命令生成密码文件,例如 sudo htpasswd -B -c /etc/go/passwd_auth_admin gocd-admin,并设置密码。然后在 GoCD 管理页面的 admin -> Security -> Authorization Configurations 中将该密码文件添加为认证方式。之后即可用设置的账号密码登录。如果忘记密码,只需重新生成密码文件覆盖原文件即可。

❓

Q&A

GoCD 默认安装后有什么安全问题?

GoCD 安装后没有任何安全措施,任何人都可以建立 pipeline,任何人都是 admin,可以操作 pipeline 等信息,数据安全无法保证。

如何为 GoCD 配置基于文件的密码认证?

使用基于文件的认证方式,基于插件 gocd-filebased-authentication-plugin。先安装 htpasswd 工具,生成密码文件,然后在 GoCD 管理页面的 admin -> Security -> Authorization Configurations 中将密码文件添加为认证方式。

在 CentOS 和 Ubuntu 上如何安装 htpasswd?

CentOS 使用 yum install httpd-tools;Ubuntu 使用 sudo apt-get install apache2-utils。

生成 GoCD 密码文件的 htpasswd 命令是什么?

命令为:sudo htpasswd -B -c /etc/go/passwd_auth_admin gocd-admin,执行后会提示输入并确认密码。

在 GoCD 管理页面哪里添加密码文件作为认证方式?

在 GoCD 管理页面的 admin -> Security -> Authorization Configurations 中添加。

忘记 GoCD 密码怎么办?

重新生成一个密码文件覆盖原来的密码文件即可。

🏷️

标签

➡️

继续阅读