我在一个有 10 名开发人员的团队中工作。我们设置了执行备份、自动构建软件、自动部署等的服务器。其中一些服务器包含有意义的材料,例如生产系统的登录详细信息(这是自动化部署所必需的)。
我们希望限制谁可以访问这些机器,以降低密码意外泄露的风险。为此,我们在 Active Directory 中创建了一个包含 4 个人的组,这些人被允许访问包含敏感材料的服务器,并确保只有这 4 个用户可以登录。
其中一些服务器运行计划任务和 Windows 服务来执行备份/部署。这些任务/服务在特定的“共享”用户帐户下运行,我们称之为“buildacc”。这样做的原因是任务需要访问网络中的共享资源才能执行构建/部署。所以我们也给了这个用户访问服务器的权限。
为了能够在 Windows 中修改计划任务,所有 4 名开发人员都需要访问这个“buildacc”帐户,这意味着他们都必须知道共享密码并在更改时通知对方,我们不喜欢这个想法的。
我们考虑过使用个人帐户来运行计划任务,例如用于构建的脚本。我们看到的缺点是团队中的任何成员都可以更改构建脚本并使其在配置实际计划任务的用户帐户下执行新操作。
有没有关于如何处理这种情况的最佳实践?