保护敏感资源的一种方法是限制对它们的访问。但是,限制对敏感资源的访问也会给偶尔需要访问这些资源的人带来麻烦。例如,用户可能需要紧急访问来访问敏感资源以解决突发事件。
在这些情况下,我们建议授予用户临时访问资源的权限。我们还建议,为了改进审核,请记录用户访问资源的理由。
在 Trusted Cloud by S3NS中,您可以通过多种方式来管理这种临时提升的访问权限。
IAM Conditions
您可以使用 IAM Conditions 向用户授予对Trusted Cloud 资源的限时访问权限。如需了解详情,请参阅配置临时访问权限。
如果要记录用户访问敏感资源的理由,您必须定义自己的操作流程和工具。
过期的角色绑定不会自动从允许政策中移除。为确保您的允许政策不超过允许政策的大小上限,我们建议您定期移除过期的角色绑定。
拒绝政策不支持基于时间的条件。因此,您不能在拒绝政策中使用条件来暂时将用户从拒绝规则中豁免。
服务账号模拟
经过身份验证的主账号(例如用户或其他服务账号)以服务账号的身份进行身份验证以获取该服务账号的权限时,这就称为模拟服务账号。通过模拟服务账号,经过身份验证的主账号可以访问服务账号可以访问的任何内容。只有具有适当权限的经过身份验证的主账号才能模拟服务账号。
要为服务账号设置临时提升的访问权限,请创建服务账号,然后向其授予您要临时授予用户的角色。如果您使用拒绝政策,还请考虑添加不受任何相关拒绝规则影响的服务账号,以避免意外拒绝。
设置服务账号后,您可以允许用户模拟服务账号,从而为其提供临时提升的访问权限。有多种方式可让用户模拟服务账号:
向用户授予一个角色,该角色允许他们创建该服务账号的短期有效凭据。然后,用户可以使用短期有效凭据来模拟服务账号。
授予 Service Account OpenID Connect Identity Token Creator 角色 (
roles/iam.serviceAccountOpenIdTokenCreator
),允许用户创建服务账号的短期有效 OpenID Connect (OIDC) ID 令牌。授予 Service Account Token Creator 角色 (
roles/iam.serviceAccountTokenCreator
),允许用户创建以下类型的服务账号凭据:- OAuth 2.0 访问令牌,您可以使用该令牌向 Google API 进行身份验证
- OIDC ID 令牌
- 已签名的 JSON Web 令牌 (JWT) 和二进制 blob
如果您向用户授予其中一个角色,则他们可以随时模拟服务账号以提升自己的访问权限。但是,他们不太可能意外访问或修改敏感资源。
如需了解如何模拟服务账号,请参阅使用服务账号模拟。
创建令牌代理服务,以便在用户进行身份验证并提供理由后为用户提供服务账号的短期有效凭据。然后,用户可以使用短期有效凭据来模拟服务账号。
通过此方法,您可以确定何时允许用户模拟服务账号。
如需了解如何生成短期有效凭据,请参阅创建服务账号的短期有效凭据。
如需详细了解服务账号模拟,请参阅服务账号模拟。
后续步骤
- 设置 Privileged Access Manager 以临时提升访问权限。
- 使用 IAM Conditions 向主账号授予临时访问权限。
- 手动创建短期有效凭据以模拟服务账号。