编辑: star薰衣草 | 2016-07-08 |
3 没有绝对的安全,只有最佳的实践.只有遵循最佳安全实践原则,综合利用这些保护机制,相信可以极大提高 对您的账号资产的保护. RAM 企业上云实践 在创业之初,企业对云资源的安全管理要求不高,可以接受使用一个访问密钥(AccessKey)来操作所有资源.但 随着时间推移,初创企业成长为大型的公司,或是大型企业客户迁移上云,他们的组织结构更加复杂,对云资 源的安全管理需求非常强烈. 本文从企业管理者视角,以企业上云后面临严峻的资源访问控制需求出发,通过场景模拟,介绍如何通过 RAM 一步步建立安全完善的资源控制体系. 场景描述 假设您是 X 公司的管理者.当初您为 X 公司注册了云账号([email protected]),并购买了基础设施服务 ECS、RDS 和OSS.自从公司上云之后,业务发展迅猛,团队不断壮大,云资源越来越多.但是资源操作和管 理都是使用一个大账号所带来的安全问题越来越突出. 假设 X 公司组织结构如下图所示.一共有 HR、研发和运维三个部门.HR 只能管人,研发人员只能使用资源 ,而运维人员可以管理资源(比如启停虚拟机). 实践步骤 下面我们看看如何使用 RAM 来帮助您逐步实现对资源访问的安全管理. 访问控制 最佳实践
4 - - 第1步:给主账号开启多因素认证 考虑到之前您可能已经将主账号密码与他人分享,密码泄露的可能性较高.强烈建议您 给主账号开通多因素认 证(Multi-Factor Authentication, MFA). 阿里云账号支持标准的虚拟 MFA,它是一种可以安装在移动设备(如智能手机、智能手表)上的应用程序,使 用起来非常方便.当您在账号中心启用虚拟 MFA 功能之后,在您登录阿里云平台时,除了校验用户名和密码 (第一安全要素),系统还会要求您提供由虚拟 MFA 应用程序所产生的动态安全码(第二安全要素).多重 要素结合起来可以为您的账户提供更高的安全保护. 第2步:创建用户并给用户分组 根据上述的组织结构,您需要分别给员工 A、B、C、D、E 分别创建不同的 用户账号,再给应用 app 创建一个 用户账号.然后创建三个 用户组 分别对应 HR、研发和运维组,再将不同用户添加到合适的组中去(注意用户 D 是同时属于研发组和运维组). 进一步,根据不同用户的需要,分别为 在用户属性上设置登录密码或访问密钥. 对于应用 app 而言,它只可能通过 OpenAPI 访问云资源,所以只需要给它创建访问密钥即可. 而对于员工而言,如果只需要通过控制台操作云资源,那么就只给他设置登录密码即可. 再进一步,考虑到运维操作一般都是特别敏感,您可能会担心运维人员的账号密码泄露会带来巨大的风险,那 么您可以 为这些账号设置登录时强制多因素认证,而且可以将账号密码和多因素认证设备交给不同的人员分开 保管,这样可以做到必须两人同时在场时才能完成某些操作. 第3步:给不同用户组分配最小权限 RAM 提供了多种 系统授权策略模板 供您选择使用.比如,您需要给运维组授予对 ECS、RDS 的所有操作权限 ,给研发组授予对 ECS、RDS 的只读操作权限以及对 OSS的所有操作权限,给HR 组授予对 RAM 用户管理操 作权限. 如果您觉得 RAM 默认提供的系统授权策略模板对资源的控制粒度不够精细,那么您也可以在 RAM 中 自定义 授权策略模板.自定义授权策略可以支持非常精细的访问控制粒度,比如精确定义 API 操作名称和资源实例名 称;