身份管理 (IAM)
什么是身份与访问管理 (IAM)?
IAM(Identity and Access Management,身份与访问管理)是一套由策略、流程和技术组成的框架, 用于确保正确的人在正确的时间对正确的资源拥有适当的访问权限。 它是安全性、合规性和运营效率的基础。
IAM 的核心组件
1. 身份验证
验证用户、系统或实体身份的过程。
- 身份验证因素:
- 你所知道的(密码、PIN)
- 你所拥有的(令牌、智能手机)
- 你本身的特征(生物识别)
- 现代方法:
- 无密码身份验证(FIDO2、WebAuthn)
- 基于风险的身份验证
- 持续身份验证
2. 授权
确定经过身份验证的用户可以访问哪些资源和操作。
- RBAC(Role-Based Access Control,基于角色的访问控制):基于角色的权限
- ABAC(Attribute-Based Access Control,基于属性的访问控制):基于属性的决策
- PBAC(Policy-Based Access Control,基于策略的访问控制):动态策略
- ReBAC(Relationship-Based Access Control,基于关系的访问控制):基于关系
3. 配置与取消配置
- 自动化账户创建
- 基于角色的权限分配
- 用户入职与离职
- 跨系统同步(HR → IAM → Apps)
多因素身份验证 (MFA)
MFA 通过在授予访问权限之前要求多种形式的验证,增加了额外的安全层级。
MFA 的类型
- 短信/语音:通过短信或电话发送的验证码(安全性较低)
- 身份验证器应用:TOTP(Google Authenticator、Authy)
- 推送通知:通过智能手机批准
- 硬件令牌:YubiKey、RSA SecurID
- 生物识别:指纹、人脸识别
- FIDO2/WebAuthn:现代无密码标准
MFA 的实施
- 特权账户强制启用 MFA
- 基于风险的条件式 MFA
- 用于恢复的备用选项
- 就其重要性对用户进行教育
单点登录 (SSO)
SSO 允许用户使用一组凭据访问多个应用程序,从而改善体验和安全性。
SSO 协议
- SAML 2.0:企业标准,基于 XML
- OAuth 2.0:授权,与 OpenID Connect 配合使用
- OpenID Connect (OIDC):位于 OAuth 2.0 之上的身份层
- Kerberos:网络身份验证协议
SSO 的优势
- 减少密码疲劳
- 减少密码重置的帮助台工作量
- 更好的用户体验
- 集中化的身份验证和审计
特权访问管理 (PAM)
PAM 保护并监控拥有提升权限的账户,这些账户对安全至关重要。
PAM 的功能
- Password Vaulting(密码保险库):安全存储特权凭据
- Session Management(会话管理):记录和监控特权会话
- Just-in-Time Access(即时访问):临时提升权限
- Password Rotation(密码轮换):自动更改密码
- Secrets Management(机密管理):管理 API keys、tokens、证书
零信任架构
零信任消除了隐式信任,无论访问来源如何,都会持续验证每一次访问。
零信任原则
- 显式验证(始终进行身份验证和授权)
- 使用最小权限访问
- 假设已遭入侵(限制影响范围)
- 微分段
- 持续监控和日志记录
零信任的实施
- Identity-centric security perimeter
- 持续且自适应的身份验证
- Device trust and posture assessment
- Network segmentation and microsegmentation
- Encrypted traffic inspection
身份治理 (IGA)
IGA 确保正确的人对正确的资源拥有正确的访问权限,并具备完整的审计能力。
IGA 的功能
- Access Certification(访问认证):定期访问审查
- Access Request Workflow(访问请求工作流):带审批的请求
- Segregation of Duties (SoD)(职责分离):防止冲突
- Analytics and Reporting(分析与报告):访问可见性
- Policy Enforcement(策略执行):访问策略的自动化
目录与身份提供商
企业目录
- Active Directory (AD):Microsoft,本地部署
- Azure AD (Entra ID):Microsoft,云端
- Okta:身份提供商即服务
- Auth0:面向开发者的身份平台
- Ping Identity:企业级 IAM
开源
- Keycloak:开源 IAM,Red Hat
- FreeIPA:面向 Linux/Unix 的身份管理
- OpenLDAP:轻量级目录
最佳实践
密码管理
- 适当的复杂度策略(12 个以上字符)
- 仅对特权账户进行定期轮换
- 禁止重复使用密码
- 检测已泄露的密码(Have I Been Pwned)
- 鼓励使用密码管理器
最小权限原则
- 仅授予必要的权限
- 定期审查访问权限
- 移除未使用的访问权限
- 使用组/角色而非单独的权限
审计与合规
- 记录所有身份活动
- 每季度进行访问审查
- 特权访问报告
- 针对异常活动的告警
常见挑战
- Shadow IT(影子 IT):未被 IAM 管理的应用程序
- Orphaned Accounts(孤立账户):离职员工仍处于活动状态的账户
- Over-Privileged Users(过度授权用户):拥有超出所需访问权限的用户
- Credential Stuffing(撞库攻击):使用泄露的凭据
- Phishing(网络钓鱼):通过社会工程窃取凭据
未来趋势
- Passwordless Authentication(无密码身份验证):消除密码
- Decentralized Identity(去中心化身份):自主主权身份 (SSI)
- AI-Powered IAM(AI 驱动的 IAM):利用 ML 进行异常检测
- Blockchain Identity(区块链身份):分布式身份
- Biometrics Evolution(生物识别的演进):行为生物识别
有效的身份与访问管理对现代安全至关重要。一套稳健的策略 结合了强身份验证 (MFA)、细粒度授权 (RBAC/ABAC)、持续治理 (IGA) 以及零信任架构。随着向远程办公和云的演进, IAM 已成为新的安全边界,需要谨慎的实施和 持续的维护。
