我希望有 IAM 介绍

2025-06-10

我希望有 IAM 介绍

在云原生环境中,“IAM”这个词很常见。那么,这样的系统究竟起什么作用呢?如果您了解它,您花了多长时间才理解它的全部用途?我将从忙碌的工程师的角度,为您解释这个庞大软件家族背后的主要概念。

这里描述的基本原理与供应商无关。不过我的大部分经验都来自 AWS 的实现。
人类形式的 IAM

什么是 IAM

IAM 代表身份访问管理。它是一个复杂的系统,由请求访问系统的实体(人员、应用程序等)组成。此外,它还包含一套复杂的层级规则,用于授予或拒绝所请求的访问权限。在进一步讨论之前,我们先了解一下您将遇到的主要术语。

  • 资源:任何值得保护的东西。例如存储服务、虚拟机等等。

  • 政策:一套规定“谁可以在哪些资源上做什么”的规则。当然,也规定了谁不能

  • 操作:在云环境中,任何人都可以执行的操作。例如,创建虚拟机

  • 用户:嗯...一个用户:)

  • :一组具有相同权限的用户

  • 主体:请求访问的用户或应用程序

  • 角色:分配给委托人的一组权力。通常有效期有限。

为什么它有用

它的主要用途包括身份验证、授权、细粒度访问和治理。让我们看看这些功能是什么:

  • 身份验证:我们已经验证了您的身份

  • 授权:我们想确认您是否可以执行您请求的操作。通常与身份验证结合使用,但并非必需。

  • 精细访问:资源中可能发生的每个操作都由权限控制。拥有查看防火墙规则的权限并不意味着您可以更改它们。这是通过基于角色的访问控制实现的。

  • 治理:为了了解你的环境到底发生了什么而采取的行动。主要包括预算、合规性、适当的访问范围。

您的公司只有 1-3 名员工吗?那么,部署一套完善的 IAM 解决方案就显得有些过度,而且维护起来也负担过重。但如果您的员工人数超过这个数字,或者您计划扩展规模,那么您应该开始考虑这个问题。
IAM支柱

缺乏一个

我相信您已经看到了 IAM 解决方案的优势。让我们来看看,在缺乏 IAM 解决方案的情况下,组织会面临哪些常见问题。

难以审计和管理访问

您是否听说过员工拥有超出其应有权限的情况?而且,没有人知道?通过正确设置 IAM 解决方案,可以避免这种情况。

设置新员工账户很麻烦

有了正确设置的 IAM 解决方案,只需点击几下即可完成。也就是说,设置用户,将他们添加到其团队使用的 IAM 组中。就这样。

但是没有它呢?你需要从头开始设置所有权限。你可能有一个参考用户,可以“复制”。但是,我们需要这个参考用户拥有的所有权限吗?我们是否需要对公司入职不到6个月的用户进行特殊处理?参考用户是否拥有超级用户权限,而这些权限不应该被意外分配给新员工?

解雇员工

这里的问题与“新员工案例”类似。但你还需要更改所有他们可能用过的账户的密码。这很快就会变得很糟糕,更不用说它对其他团队成员造成的副作用了。

例如,每次下线时,都必须更新所有密码。每个脚本和应用程序都需要更新。如果团队每月变更 2-3 次,该怎么办?这样做的效率如何?

商品身份识别任务需要人工干预

我所说的“商品化”指的是诸如重置密码或重新启用已锁定的帐户之类的任务。顶级的 IAM 解决方案能够快速轻松地解决此类问题。

最佳实践

最佳实践

以下是我总结的一些最佳实践。这远非完整列表,只是我的个人经验。不过,我在多个团队中都见过这些实践,所以它们可能已经足够好了。

永远无法完全访问...

在实际场景中,您不希望每个用户都拥有对帐户的无限访问权限。理想情况下,除了帐户所有者之外,任何人都不应该拥有访问权限。
如果 Jack 正在处理监控日志,他们应该拥有该工具的读取权限。他们不应该能够重启服务。或者,会计团队应该只能查看账单信息。

了解虚拟机可扩展性规则是如何设置的对任何人都没有帮助。

群组与多用户

如果有选择,最好选择单个组而不是多个用户。组可以让管理变得无比轻松。

角色、多个组和新用户

如果可以选择,最好为用户分配角色,而不是创建新用户。例如,不要创建管理员用户,然后让 10 个人共享密码。创建一个管理员角色,并将其分配给任何需要使用一段时间的用户。

权限应经常审核

很容易犯错或执行恶意操作。公司至少应该审核只有合适的人员才能访问,这是最低限度的要求。

当发生可疑行为时,您还可以向某个团队发送电子邮件。例如,为新员工分配管理员角色。

提前设定界限

如果 IAM 解决方案允许,请为您的生态系统添加边界。复制自亚马逊的文档(我知道,我保证与供应商无关 :))

权限边界是一项高级功能,使用托管策略设置基于身份的策略可以授予 IAM 实体的最大权限。实体的权限边界仅允许其执行其基于身份的策略和权限边界都允许的操作。

通俗地说,你可以定义分配给任何人的“最大”权限。例如,用户最多可以查看相关工具的日志并重启服务。如果有人试图获取创建新虚拟机的角色,则将被禁止。

结论

感谢您阅读到这里。希望您喜欢这篇关于 IAM 技术的介绍。如有任何疑问,欢迎联系我们。

鏂囩珷鏉yu簮锛�https://dev.to/perigk/how-to-evaluate-if-a-certification-is-worth-it-for-you-4776
PREV
我希望有的 DevOps 简介
NEXT
独立开发者的 DevOps 和基础设施