如同世界正在经历的个方疫情 ,由于网络攻击的法管大幅增加 ,许多公司也遭受着“网络疫情” ,户权保障代码安全迫在眉睫
。个方阅读本文 ,法管将带您了解如何在代码发布到 GitHub 之前最大化安全权限,户权及查看创建计划来锁定 GitHub 开发流程中所需的个方多层权限和工具。 GitHub 有三个帐户类型,其访问控制量不等。户权 了解您的开发团队拥有哪种类型的帐户,以便您可以充分利用所有可用的访问权限。 将访问权限和权限集中给管理员可以简化外部协作者的管理,还可以降低GitHub访问成本
。 GitHub 为开发提供以下类型的访问权限。服务器租用根据开发人员角色设置访问级别。 避免根据需求设置访问权限。虽然在短期内很方便,但随着项目的发展和时间的推移
,项目中的源码下载角色和职位可能会发生变化
。为了最大化访问安全
,请指定一个人来专门处理和授予项目所需的最低权限 。 如果您拥有组织所有者帐户
,则可以将新用户添加到存储库并控制其访问级别。您需要确定组织的基本权限配置文件。当您将新成员添加到 GitHub 存储库时,将自动应用基本权限。默认情况下,为了获得最大的安全性
,请确保基本权限仅有读取访问权限 。仅在需要时授予更广泛的访问权限 。源码库 根据2019年发布的一项研究
,对公共 GitHub 代码库的全面扫描发现该平台上共有超过57万个敏感数据实例。这些实例包括 API 密钥、私有密钥、OAuth ID 、AWS 访问密钥 ID 和各种访问 token。 这些类型暴露的主要风险包括经济损失、隐私泄露、数据完整性受损以及信息滥用。尝试执行以下做法来保护您的代码库。 配置不当的模板下载服务器或访问权限配置不当的开发人员可能会不小心更改代码库的可见性。要避免这种情况并确保最大安全性 ,请将代码库可见性更改限制为组织的所有者帐户或项目的管理员级别。 具有 GitHub Enterprise 的组织可以使用单节点登录(Single Sign-On, SSO) 。借助 SSO,组织可以使用自己的帐户和访问权限规则
,而无需开发人员使用 GitHub 帐户。SSO 可限制潜在的人为错误和密码重用问题。 通过有限的亿华云只读访问权限
,开发人员可以使用 Fork 轻松复制整个代码库 。代码仓库最初可能是私有的,但 fork 可以快速将所有内容暴露到公共空间中。风险随着每次 Fork 的发生呈指数级增加,通过暴露的敏感数据创建树状的安全漏洞链。为避免这些情况 ,请禁用 Fork 以获得最大的安全性 。 若要确保 GitHub 帐户和数据的安全,请要求和管理身份验证访问。 双重身份验证(2FA)通过在对登录进行身份验证时需要多个凭据来保障安全
。为了获得最大的安全性,GitHub 建议使用带有使用时间限制的一次性密码(TOTP)服务,例如 LastPass 身份验证器或 Microsoft 身份验证器 。 用户设置安全系数较低的密码或在多个服务之间共享密码
,从而产生安全风险。为避免此类风险 ,请使用 SSH 私有密钥/公有密钥对服务器上的操作进行身份验证 。为了提高安全性,GitHub 支持自动 SSH 密钥过期和轮换 ,即使 SSH 密钥泄露,访问窗口也会受到限制。 对于较小的项目 ,请使用个人访问令牌
。个人访问令牌的运作原理类似于 SSH 密钥,但不提供自动轮换 ,GitHub 帐户所有者需要手动设置。 将 GitHub 服务器的访问锁定在预先批准的静态 IP 地址列表中,这种方法是最简单 、最直接的安全访问方式之一。有了IP限制,黑客在试图访问你的 GitHub 代码仓库之前,必须识别并渗透到预先批准的名单上的计算机 。即使你的登录凭证被泄露 ,这对他们来说也是一个重大障碍
。 为了保持最高的安全标准
,需要细化管理访问权限 ,并在项目开发期间定期对其进行评估。当员工离开项目或企业时,请及时修改或撤销其访问权限 。此方法遵循最小特权原则,即授予执行特定任务所需的权限
。这样做将确保每个有权访问代码的人都只在其权限范围内工作
。 GitHub 代码库面临的最大安全风险之一是开发人员的粗心大意
,而不是恶意组织入侵基础架构
。为最大化代码库的安全性 ,可以考虑密钥管理解决方案
。这些解决方案会自动阻止敏感信息到达 GitHub 代码库,并在敏感数据已泄露的情况下清理代码库。 多个 GitHub 工具可处理不同的安全模式,例如: 密钥管理解决方案需要直接集成到 CI/CD 流水线中,还必须使用 AI 和机器学习算法来进行自动识别和阻止 ,然后再将其推送到 GitHub 存储库。 若要防止机密首先暴露(即便是意外泄露),请实施 “Secret Vault 机密保险库” 安全策略。Secret Vault 是一个独立的系统,用于存储敏感信息
。而 Vault 是一种用于保护高度敏感数据的工具,同时提供统一的访问接口。有了 Secret Vault
,可以执行更严格的访问控制和审核跟踪 ,并能够轻松检测漏洞和违规行为。 在制定安全计划时,请注意以下几点
: 企业可以尝试使用这些扫描工具,并将此工具集成到 CI/CD 流水线中 ,来有效阻止敏感信息提交到 GitHub 代码库。
1. 了解您的法管 GitHub 账户类型
2. 集中访问管理
3. 保护您的代码库
4. 验证访问权限
5. 将访问限制在预批准 IP 地址列表
6. 及时撤销权限
7. 密钥管理解决方案
8. 制定安全计划保护您的代码