Keystone在OpenStack中的做用html
一、Service Provider(SP) 为终端用户提供服务ide
二、Identity Provider(IdP) 存储用户和组信息的服务spa
经典受权方式
htm
包括用户、项目和角色。针对用户关联的某个特定项目执行身份认证身份认证成功后会返回一个持有人token其中包含该用户在这个项目上的角色该用户要求Openstack组件表明它执行一个操做的时候该组件会调用本身的policy引擎检查该token及其包含的角色确认用户是否有权限执行该操做。
token
利用Federation支持的受权方式get
用户信息再也不存储在keystone中直接从身份提供程序中获取用户信息不存在keystone中不能再经过一个项目来关联用户和角色的方法来获取了。keystone的实现是使用组来支持利用与用户关联的身份提供程序对用户进行身份验证时身份提供程序返回和用户关联的属性经过一条规则基于这些属性将用户映射到一个keystone组。it
如今支持的两种federation协议SAML和OpenID。io
参考连接class
http://www.ibm.com/developerworks/cn/cloud/library/cl-keystone-tfim/ pdf
http://docs.openstack.org/developer/keystone/configure_federation.html
https://www.openstack.org/assets/presentation-media/os-federation-final.pdf