keystone v3接口下,域管理员、项目管理员简单的判断方式
来源:互联网 发布:wifi信号与网络延时 编辑:程序博客网 时间:2024/06/08 13:22
简单介绍
keystone提供了v3接口,包含了域(domain),项目的概念,域、项目都有角色的划分。
假设具有"admin"角色的用户是管理员,则本文提供了简单的用户管理员判断的方式
项目下申请token的方式
# 项目管理申请token方式
curl -X 'POST' -H "Content-type: application/json" http://localhost:35357/v3/auth/tokens -d '{
"auth": {
"identity": {
"methods": [
"password"
],
"password": {
"user": {
"domain":{
"name":"default"
},
"name": "admin",
"password": "admin-pwd"
}
}
},
"scope": {
"project": {
"domain":{
"name":"default"
},
"name": "admin"
}
}
}
} '
域申请token方式
# 域申请token方式
curl -X 'POST' -H "Content-type: application/json" http://localhost:35357/v3/auth/tokens -d '{
"auth": {
"identity": {
"methods": [
"password"
],
"password": {
"user": {
"domain":{
"name":"default"
},
"name": "admin",
"password": "admin-pwd"
}
}
},
"scope": {
"domain": {"name":"default"}
}
}
} '
token消息返回体
其返回body体带有角色信息, 包含一个role信息,示例如下:
{
"token": {
"is_domain": false,
"methods": ["password"],
"roles": [{
"id": "5be5497493fb4945bed88b251b45d229",
"name": "heat_stack_owner"
},
{
"id": "9fe2ff9ee4384b1894a90878d3e92bab",
"name": "_member_"
},
{
"id": "a80b25283631487e854d64780750655e",
"name": "admin"
}],
"expires_at": "2017-08-24T13:32:22.000000Z",
"project": {
"domain": {
"id": "default",
"name": "Default"
},
"id": "9c5b936c873b498c8d7f912a4018fcbb",
"name": "admin"
},
"catalog": [],
"user": {
"password_expires_at": null,
"domain": {
"id": "default",
"name": "Default"
},
"id": "ee2b93d6cd7040049e4509fa0265494e",
"name": "admin"
},
"audit_ids": ["JxqNxl-8QeeVLP9jOXnlVg"],
"issued_at": "2017-08-24T05:32:22.000000Z"
}
}
角色判断依据
通过role可以判断该用户的角色
1、通过"项目管理申请token方式"获取到的role
如果是"admin",则是项目管理员
2、通过"域申请token方式"获取到的role
如果 域是"default",role 是"admin",则是 "系统管理员"
如果 域不是"default",role 是"admin",则是 "域管理员"
如果返回401错误,则该用户在该域下没有任何角色,没有任何操作权限
- keystone v3接口下,域管理员、项目管理员简单的判断方式
- 管理员
- 一个SQL管理员的web接口
- 借用管理员的登录方式渗透
- 织梦CMS的管理员密码加密方式
- Oracle管理员与非管理员登陆方式
- Oracle管理员认证方式
- 【discuzx2】管理员密码的简单修改
- 商业智能项目管理员的四大悲哀
- gerrit管理员快速创建项目的方法
- WinXP下恢复管理员密码的五大密诀
- vista 下文件夹获取管理员的权限
- ubuntu下获得管理员的权限
- Ubuntu下管理员界面的切换
- ubuntu下获得管理员的权限
- C# WinForm判断Win7下是否是管理员身份运行
- 管理员看下
- 请求管理员帮忙下!
- python requests用url爬妹子套图保存在文件夹
- 理解OSI 七层模型这一篇足够了
- ACM:凸包问题
- Java设计模式---策略者模式
- HashMap和Hashtable的遍历
- keystone v3接口下,域管理员、项目管理员简单的判断方式
- java 泛型类 和 泛型函数 的介绍
- JAVA中int、String的类型转换
- HTML元素的显示优先级
- golang web流量统计 上
- 使用java代码计算不死神兔的数量
- 所有窗体
- 创业日志(十五) 希望
- python一些常用方法以及模块的使用