为什么身份控制是确保 API 接口访问安全的关键?
您使用过授权流程吗?你输入过 PIN 码访问账户吗?如果用过,你就已经熟悉身份控制了。
身份控制对于正确监控和保护网络的各个方面(包括API)至关重要。它对于保持高效的工作流程并确保安全也至关重要。在当今竞争激烈、分散的工作环境中,拥有一个良好的身份控制系统是成功的关键。
什么是身份控制?
身份控制,又称身份和访问管理(IAM),是与用户身份及其可访问资源相关的所有内容的总称。身份控制有时也被称为机器身份管理(MIM)。
身份验证是 IAM 的一个重要方面。这意味着我们每天都在使用 IAM,无论是输入密码还是指纹等生物识别信息。这些日常应用有助于形象地说明身份控制是如何工作的。为了形象地说明 IAM,我们不妨以 ATM 为例。在这个例子中,用户的银行账号就是他们的用户 ID。用户的 PIN 码是授权流的一个例子,它允许用户访问自己的账户以执行各种功能。但这并不能让他们访问别人的账户,这就简单说明了身份控制为何如此重要。
这些只是最简单的例子,事情很快就会变得更加复杂。例如,自动取款机可能规定了每天的取款限额。银行可能会强制要求某个人亲自关闭银行账户,这也是 IAM 可以规定访问权限或限制特定操作的另一个例子。
身份控制主要涉及两个方面–用户和角色。每个用户都有一个唯一的 ID,这使得 IAM 成为可能。角色决定哪些用户可以访问哪些信息。这些规则通常被称为策略。
身份管理研究所将 IAM 分成六类,称为认证、授权和记账(AAA)模型。
IAM 的 6 个阶段
用户识别、验证和认证
用户和访问生命周期管理
保护公司数据和资产的安全措施
活动跟踪和监控
合规性审计
工作流程管理
身份控制如何提高 API 安全性
根据最近的一项研究,65% 的用户在多个账户中使用相同的密码。50%以上的员工使用一个密码登录所有与工作相关的账户。令人震惊的是,同一份报告还发现,81% 的数据泄露事件都与密码管理不善有关。
考虑到一个用户平均使用 11 个应用程序来完成一项任务,这可能会给负责网络安全的 IT 团队带来一场噩梦。最安全的解决方案可能是要求用户为每个实用程序设置一个唯一的密码。不过,这对用户来说是个头疼的问题,他们不得不在一天中重复输入密码。如果实施得当,IAM 就是一种解决方案。
IAM 用于识别和监控用户身份,并控制他们可以访问哪些数据。即使是通过单点登录(SSO)等解决方案增加额外的保护层这样简单的事情,也能使网络更加安全。与自适应多因素授权(自适应 MFA)搭配使用时,单点登录可让管理员根据位置或用户设备等条件允许临时访问。
自适应 MFA 还能有效地进行实时风险评估,在检测到未经授权的访问之前防止敏感数据泄露。同样的方法甚至可用于为用户提供无密码体验,使其使用起来更加高效和便捷。
身份控制提高 API 安全性的 5 种方法
防止 API 仿冒和中间人攻击
冒充合法客户端或服务器访问 API 是未经授权访问的常见方法。拦截或修改来自客户端和服务器的合法流量也非常常见。IAM 可以使用相互传输层安全(mTLS)等技术帮助防止这些攻击,要求用户和服务器都进行身份验证。
防止数据泄露和未经授权的访问
身份控制是确保数据安全的简单方法。为不同级别的用户设置不同的访问权限相对简单。定期更改应用程序接口密钥和密码也很容易,可以防止数据泄露,并将未经授权访问的风险降到最低。
IAM 是基于角色的访问控制(RBAC)的重要组成部分。如果要跟踪管理员、高级用户和普通流量,就必须为每个用户提供唯一的标识符,而这只有在建立了 IAM 结构后才能实现。
确保证书安全
身份控制是实施基于时间的令牌和证书的理想方式。当每个用户都有一个独一无二的 ID 时,他们的登录时间就可以在账户中记录下来。基于时间的授权是防止未经授权访问的另一种简便方法。如果不幸发生数据泄露,根据定义,访问将被限制在一个很小的时间窗口内。这样的系统也是监控所有证书的有效方法。
加强问责制
IAM 是实施日志策略的重要组成部分。当每个用户都有一个唯一的 ID 时,你就可以轻松监控他们何时登录或何时注销。您还可以保存每笔交易的记录。有了日志记录和监控解决方案,你就能更好地跟踪数据和访问者。
透明度的提高甚至有助于加强网络安全。有了用户行为日志,您就可以创建一个用户通常的交互模型。例如,您可能会注意到某个用户主要在下午 3 点到 4 点之间访问 API。而同一用户在凌晨 2 点登录可能会引起警报,需要仔细查看。
支持零信任政策
根据 Fortinet 最近的一份报告,零信任架构正在崛起。例如,75%的受访者表示将在 2023 年使用单一网络网关(SWG),而 2021 年这一比例仅为 45%。云访问安全经纪商也同样飙升,在短短两年内几乎翻了一番。网络访问控制从 17% 上升到了惊人的 70%。
如果要采用零信任策略,IAM 至关重要。对用户来说,每次交互都要输入密码是不现实的。
关于身份控制的最终想法
如果您的应用程序接口以任何方式面向公众,身份控制和 IAM 就显得尤为重要。即使 API 完全是内部的,监控谁在访问您的网络以及他们在访问什么仍然非常重要。只需 API 安全上的一个疏忽,就会造成数据泄露。
这就是为什么采用 API 规范和标准如此重要的原因之一,因为它们能让您更轻松地保护和监控您的 API。幸运的是,目前有许多有用的 API 安全标准,如 OAuth、OpenID Connect、OPA 等。
无论如何,IAM 能让你的网络更高效、更易用。从现在开始,它只会变得更加重要。
原文链接:Why Identity Control Is Crucial to Secure API Access
编译:幂简集成
版权声明: 本文为 InfoQ 作者【幂简集成】的原创文章。
原文链接:【http://xie.infoq.cn/article/5df861e475cadd70f7dd2aa58】。文章转载请联系作者。
评论