认证服务原理
平台认证服务组件(keystone)最早即采用OpenStack的keystone组件,2019年采用golang重构实现了keystone组件,保持和OpenStack Keystone v3.0 API的兼容,并且扩展了认证源(identity_provider)和权限(policy)的实现,使得更容易实现复杂的认证源(如SAML 2.0)和权限体系。
目前认证服务组件(keystone)的功能主要有三个:
- 提供用户认证体系,向其他系统证明一个用户是否合法,并提供用户的属性。涉及的概念有认证源(identity_providers),域(domains),用户(user)和组(group)。
- 提供资源归属体系,向其他系统提供一套域和项目的资源归属体系。设计的概念有域(domains),项目(projects)。