飞天平台安全相关
1. capability机制
用户的身份认证(authentication)是基于密钥机制的。
- 用户对资源的访问控制是基于权能(capability)机制进行授权(authorization)的。
capability是用于访问控制的一种数据结构,它定义了对一个或多个指定的资源(如目录、文件、表等)所具有的访问权限。用户访问飞天系统的资源时必须持有capability,否则即视为非法。打一个比方,如果把capability理解为地铁票,乘坐地铁(对地铁的一种访问方式)的时候必须要有capability,即地铁票。
密钥对是基于公开密钥方法的,包括一个私钥和相对应的公钥。在飞天平台系统中,密钥对用于数字签名服务,以保证capability的不可伪造。换句话说,私钥用于产生数字签名(如签发capability),公钥用于验证数字签名的有效性(如验证签发过的capability的有效性)。
考虑到网络通信时任何通信节点都是不可信的,所以即使是飞天自身模块内部之间的通信也同样是需要认证和授权的,而且验证的机制也完全一样。
2. Sandbox
随着云计算业务的发展,搭建在飞天平台的上层应 (如ODPS)有把第三方用户的代码放到飞天上处理业务数据的需求。在飞天现有的机制下,第三方用户可以在提交的程序中嵌 恶意代码对飞天进行攻击,轻则影响系统的稳定运作,重则偷取甚破坏盘古的数据。所以,飞天需要有一套安全机制,通过对第三方用户提交的程序进行资源隔离,来保护飞 天系统的安全。
通常攻击者的目标是获取系统资源的控制权,从而进行破坏活动。那么我们进程级沙箱的目标就是要限制第三方程序对系统资源的控制权,将其限制在最小的范围内。
3. 密钥中心
全局的密钥中心,提供安全的服务。
4. 进程的身份认证和安全通信套件
设计一套每个进程都有可信度,而且通信安全的系统。