没有合适的资源?快使用搜索试试~ 我知道了~
Keystone实现始终围绕着Keystone所实现的功能来展开,所以在理解其实现之前,建议大家尝试通过安装Keystone这一个过程来感受Keystone在Openstack架构中所充当的角色。下面给出了Keystone-M的安装过程。Keystone安装列表Openstack组件部署—Overview和前期环境准备Openstack组建部署—EnvironmentofControllerNodeOpenstack组件部署—Keystone功能介绍与认证实现流程Openstack组件部署—KeystoneInstall&CreateserviceentityandAPIendpointsOp
资源推荐
资源详情
资源评论
Openstack组件实现原理组件实现原理—Keystone认证功能认证功能
前言
Keystone实现始终围绕着Keystone所实现的功能来展开,所以在理解其实现之前,建议大家尝试通过安装Keystone这一个过
程来感受Keystone在Openstack架构中所充当的角色。下面给出了Keystone-M的安装过程。
Keystone安装列表
Openstack组件部署 — Overview和前期环境准备
Openstack组建部署 — Environment of Controller Node
Openstack组件部署 — Keystone功能介绍与认证实现流程
Openstack组件部署 — Keystone Install & Create service entity and API endpoints
Openstack组件部署 — keystone(domain, projects, users, and roles)
Keystone架构
Keystone的管理对象
User:指使用Openstack service的用户,可以是人、服务、系统,但凡使用了Openstack service的对象都可以称为User。
Project(Tenant):可以理解为一个人、或服务所拥有的 资源集合 。在一个Project(Tenant)中可以包含多个User,每一个User
都会根据权限的划分来使用Project(Tenant)中的资源。比如通过Nova创建虚拟机时要指定到某个Project中,在Cinder创建卷
也要指定到某个Project中。User访问Project的资源前,必须要与该Project关联,并且指定User在Project下的Role。
Role:用于划分权限。可以通过给User指定Role,使User获得Role对应的操作权限。Keystone返回给User的Token包含了
Role列表,被访问的Services会判断访问它的User和User提供的Token中所包含的Role。系统默认使用管理Role admin和成员
Role _member_ 。
Policy:OpenStack对User的验证除了OpenStack的身份验证以外,还需要鉴别User对某个Service是否有访问权限。Policy机
制就是用来控制User对Tenant中资源(包括Services)的操作权限。对于Keystone service来说,Policy就是一个JSON文件,默
认是/etc/keystone/policy.json。通过配置这个文件,Keystone Service实现了对User基于Role的权限管理。
Token:是一个字符串表示,作为访问资源的令牌。Token包含了在 指定范围和有效时间内 可以被访问的资源。EG. 在Nova
中一个tenant可以是一些虚拟机,在Swift和Glance中一个tenant可以是一些镜像存储,在Network中一个tenant可以是一些网
络资源。Token一般被User持有。
Credentials:用于确认用户身份的凭证
Authentication:确定用户身份的过程
Service:Openstack service,即Openstack中运行的组件服务。
Endpoint:一个可以通过网络来访问和定位某个Openstack service的地址,通常是一个URL。比如,当Nova需要访问Glance
服务去获取p_w_picpath 时,Nova通过访问Keystone拿到Glance的endpoint,然后通过访问该endpoint去获取Glance服务。
我们可以通过Endpoint的region属性去定义多个region。Endpoint 该使用对象分为三类:
admin url –> 给admin用户使用,Post:35357
internal url –> OpenStack内部服务使用来跟别的服务通信,Port:5000
public url –> 其它用户可以访问的地址,Post:5000
public url可以被全局访问,private url只能被局域网访问,admin url被从常规的访问中分离。
一个理解Keystone管理对象功能的例子
如果把宾馆比作为Openstack,那么宾馆的中央管理系统就是Keystone,入住宾馆的人就是User 。在宾馆中拥有很多不同的
房间,房间提供了不同的服务(Service)。在入住宾馆前,User需要给出×××(Credential),中央管理系统(Keystone)在确认
User的身份后(Authenticaiton),会给你一个×××(Token)和导航地图(Endpoint)。不同VIP(Role)级别的User,拥有不同权限的
×××(Token),如果你的VIP(Role)等级高,你可以享受到豪华的总统套房。然后User拿着×××(Token)和地图(Endpoint),就可
以进入特定的房间去享受不同的Services。每一个服务(Services)中都拥有着一些特定资源(Project),例如:×××中可以使用的
精油种类和数量。User可以根据自己的权限来使用这些资源。
资源评论
weixin_38747144
- 粉丝: 4
- 资源: 938
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功