微软公布全球服务大规模中断原因:标注为保留的密钥被移除了

微软旗下包括Teams、Office及Dynamics等众多服务,在世界协调时间(UTC)3月15日(周一)晚间7点、至3月16日的早上9点25分(16日凌晨3点至下午5点25分)大规模出现登录错误且影响全球用户,微软很快地公布了初步的调查结果,指出这些服务皆因所依赖的云计算身份识别及访问管理服务(Azure Active Directory,AAD)故障,而造成用户无法登录。

分析显示,此次的意外是因为那些支持Azure AD使用OpenID或其它加密签章标准协议的密钥,在轮替时发生错误。在标准的安全卫生措施上,自动化系统会定期移除不再使用的密钥,但在过去几周,微软把一个应被移除的密钥标注为“保留”(retain),以用来支持一个复杂的跨云计算迁移,然而,该自动化系统却忽略了该密钥的保留状态而径自将它移除。

Azure AD会根据网络身份标准协议把签署密钥的元资料公布至全球区域,该元资料是在UTC时间15日晚间7点进行变更,所有基于Azure AD及相关协议的应用程序都会开始采用新的元资料,同时弃用已被移除之密钥所签署的权限,因而造成用户无法再访问这些应用程序。

在确认问题所在之后,微软在同一天晚上的9点05分,把密钥元资料还原至先前的状态,只是应用程序也必须重新取回元资料,同时刷新其缓存,而每个应用程序恢复的速度不一,有些还必须强制刷新缓存,一直到UTC时间早上9点25分才完成该程序。

微软表示,Azure AD已有针对其后端安全部署系统(Safe Deployment Process,SDP)的加强防护多阶段计划,已完成的第一阶段的确能够在添增密钥上提供保护,但对于移除密钥的保护则预计于今年中完成,因此尚未部署。在该计划全面完工之后,将可预防本周与去年9月发生的Azure AD意外。