重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
小编给大家分享一下openstack中如何实现policy鉴权,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
创新互联建站主营青秀网站建设的网络公司,主营网站建设方案,重庆APP软件开发,青秀h5小程序设计搭建,青秀网站营销推广欢迎青秀等地区企业咨询
鉴权简介:
keystone用于认证,看用户是否是系统的合法用户,政策鉴权用于检查用户的操作是否被允许,openstack每个项目都有各自对应的政策鉴权。对应都有一个policy文件,叫policy.json,里面定义了鉴权用的rules。
以cinder为例,policy文件的位置在:/etc/cinder/policy.json,下面先来看几条rules,了解其基本含义:
语法规则为:rule:[result]
rule:定义此规则的行为操作,通常对应一个action,以类似scope:action的形式给出,scope表示作用范围,action表示执行哪种操作
result: 表示这条rule的判定结果或者如何进行判定,比如 "volume_extension:quotas:delete": "is_admin:True",如果执行此操作的用户具有admin角色(role),则这条结果的判定结果就是True。
还有嵌套式规则的,比如"volume:delete_volume_metadata": "rule:admin_or_owner",表示volume:delete_volume_metadata这条规则得到的结果为admin_or_owner这条规则的结果,而admin_or_owner规则是这样的: "admin_or_owner": "is_admin:True or project_id:%(project_id)s",
如果调用这个操作的用户的角色是admin,就返回True,或者返回用户所属的project_id.
以上是“openstack中如何实现policy鉴权”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!