Keystone角色配置

Keystone身份认证--主要总结Role的相关配置 用户管理中有三个概念Tenant,User,Role 阅读详情
Basic Concepts

The Identity services has two primary functions:

  1. User management: keep track of users and what they are permitted to do

  2. Service catalog: Provide a catalog of what services are available and where their API endpoints are located

 User management

The three main concepts of Identity user management are:

  • Users

  • Tenants

  • Roles

A user represents a human user, and has associated information such as username, password and email. This example creates a user named "alice":

$ keystone user-create --name=alice --pass=mypassword123 --email=alice@example.com

A tenant can be thought of as a project, group, or organization. Whenever you make requests to OpenStack services, you must specify a tenant. For example, if you query the Compute service for a list of running instances, you will receive a list of all of the running instances in the tenant you specified in your query. This example creates a tenant named "acme":

$ keystone tenant-create --name=acmeNote

Because the term project was used in instead of tenant in earlier versions of OpenStack Compute, some command-line tools use --project_id instead of --tenant_id to refer to a tenant ID.

A role captures what operations a user is permitted to perform in a given tenant. This example creates a tenant named "compute-user":

$ keystone role-create --name=compute-userNote

It is up to individual services such as the Compute service and Image service to assign meaning to these roles. As far as the Identity service is concerned, a role is simply a name.

The Identity service associates a user with a tenant and a role. To continue with our previous examples, we may wish to assign the "alice" user the "compute-user" role in the "acme" tenant:

$ keystone user-list
+----------------------------------+---------+-------+--------+
| id | enabled | email | name |
+----------------------------------+---------+-------+--------+
| 96a6ebba0d4c441887aceaeced892585 | True | ... | alice |
+----------------------------------+---------+-------+--------+
$ keystone role-list
+----------------------------------+--------------+
| id | name |
+----------------------------------+--------------+
| f8dd5a2e4dc64a41b96add562d9a764e | compute-user |
+----------------------------------+--------------+
$ keystone tenant-list
+----------------------------------+--------------+---------+
| id | name | enabled |
+----------------------------------+--------------+---------+
| 2395953419144b67955ac4bab96b8fd2 | acme | True |
+----------------------------------+--------------+---------+
$ keystone user-role-add \
--user=96a6ebba0d4c441887aceaeced892585 \
--role=f8dd5a2e4dc64a41b96add562d9a764e \
--tenant_id=2395953419144b67955ac4bab96b8fd2

A user can be assigned different roles in different tenants: for example, Alice may also have the "admin" role in the "Cyberdyne" tenant. A user can also be assigned multiple roles in the same tenant.

The /etc/[SERVICE_CODENAME]/policy.json controls what users are allowed to do for a given service. For example, /etc/nova/policy.json specifies the access policy for the Compute service, /etc/glance/policy.json specifies the access policy for the Image service, and /etc/keystone/policy.json specifies the access policy for the Identity service.

The default policy.json files in the Compute, Identity, and Image service recognize only the admin role: all operations that do not require the admin role will be accessible by any user that has any role in a tenant.

If you wish to restrict users from performing operations in, say, the Compute service, you need to create a role in the Identity service and then modify /etc/nova/policy.json so that this role is required for Compute operations.

For example, this line in /etc/nova/policy.json specifies that there are no restrictions on which users can create volumes: if the user has any role in a tenant, they will be able to create volumes in that tenant.

1"volume:create":[],

If we wished to restrict creation of volumes to users who had the compute-user role in a particular tenant, we would add "role:compute-user", like so:

1"volume:create":["role:compute-user"],

If we wished to restrict all Compute service requests to require this role, the resulting file would look like:

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102{    "admin_or_owner":  [["role:admin"], ["project_id:%(project_id)s"]],    "default":[["rule:admin_or_owner"]],      "compute:create": ["role":"compute-user"],    "compute:create:attach_network": ["role":"compute-user"],    "compute:create:attach_volume": ["role":"compute-user"],    "compute:get_all": ["role":"compute-user"],      "admin_api":[["role:admin"]],    "compute_extension:accounts":[["rule:admin_api"]],    "compute_extension:admin_actions":[["rule:admin_api"]],    "compute_extension:admin_actions:pause":[["rule:admin_or_owner"]],    "compute_extension:admin_actions:unpause":[["rule:admin_or_owner"]],    "compute_extension:admin_actions:suspend":[["rule:admin_or_owner"]],    "compute_extension:admin_actions:resume":[["rule:admin_or_owner"]],    "compute_extension:admin_actions:lock":[["rule:admin_api"]],    "compute_extension:admin_actions:unlock":[["rule:admin_api"]],    "compute_extension:admin_actions:resetNetwork":[["rule:admin_api"]],    "compute_extension:admin_actions:injectNetworkInfo":[["rule:admin_api"]],    "compute_extension:admin_actions:createBackup":[["rule:admin_or_owner"]],    "compute_extension:admin_actions:migrateLive":[["rule:admin_api"]],    "compute_extension:admin_actions:migrate":[["rule:admin_api"]],    "compute_extension:aggregates":[["rule:admin_api"]],    "compute_extension:certificates": ["role":"compute-user"],    "compute_extension:cloudpipe":[["rule:admin_api"]],    "compute_extension:console_output": ["role":"compute-user"],    "compute_extension:consoles": ["role":"compute-user"],    "compute_extension:createserverext": ["role":"compute-user"],    "compute_extension:deferred_delete": ["role":"compute-user"],    "compute_extension:disk_config": ["role":"compute-user"],    "compute_extension:extended_server_attributes":[["rule:admin_api"]],    "compute_extension:extended_status": ["role":"compute-user"],    "compute_extension:flavorextradata": ["role":"compute-user"],    "compute_extension:flavorextraspecs": ["role":"compute-user"],    "compute_extension:flavormanage":[["rule:admin_api"]],    "compute_extension:floating_ip_dns": ["role":"compute-user"],    "compute_extension:floating_ip_pools": ["role":"compute-user"],    "compute_extension:floating_ips": ["role":"compute-user"],    "compute_extension:hosts":[["rule:admin_api"]],    "compute_extension:keypairs": ["role":"compute-user"],    "compute_extension:multinic": ["role":"compute-user"],    "compute_extension:networks":[["rule:admin_api"]],    "compute_extension:quotas": ["role":"compute-user"],    "compute_extension:rescue": ["role":"compute-user"],    "compute_extension:security_groups": ["role":"compute-user"],    "compute_extension:server_action_list":[["rule:admin_api"]],    "compute_extension:server_diagnostics":[["rule:admin_api"]],    "compute_extension:simple_tenant_usage:show":[["rule:admin_or_owner"]],    "compute_extension:simple_tenant_usage:list":[["rule:admin_api"]],    "compute_extension:users":[["rule:admin_api"]],    "compute_extension:virtual_interfaces": ["role":"compute-user"],    "compute_extension:virtual_storage_arrays": ["role":"compute-user"],    "compute_extension:volumes": ["role":"compute-user"],    "compute_extension:volumetypes": ["role":"compute-user"],      "volume:create": ["role":"compute-user"],    "volume:get_all": ["role":"compute-user"],    "volume:get_volume_metadata": ["role":"compute-user"],    "volume:get_snapshot": ["role":"compute-user"],    "volume:get_all_snapshots": ["role":"compute-user"],      "network:get_all_networks": ["role":"compute-user"],    "network:get_network": ["role":"compute-user"],    "network:delete_network": ["role":"compute-user"],    "network:disassociate_network": ["role":"compute-user"],    "network:get_vifs_by_instance": ["role":"compute-user"],    "network:allocate_for_instance": ["role":"compute-user"],    "network:deallocate_for_instance": ["role":"compute-user"],    "network:validate_networks": ["role":"compute-user"],    "network:get_instance_uuids_by_ip_filter": ["role":"compute-user"],     "network:get_floating_ip": ["role":"compute-user"],    "network:get_floating_ip_pools": ["role":"compute-user"],    "network:get_floating_ip_by_address": ["role":"compute-user"],    "network:get_floating_ips_by_project": ["role":"compute-user"],    "network:get_floating_ips_by_fixed_address": ["role":"compute-user"],    "network:allocate_floating_ip": ["role":"compute-user"],    "network:deallocate_floating_ip": ["role":"compute-user"],    "network:associate_floating_ip": ["role":"compute-user"],    "network:disassociate_floating_ip": ["role":"compute-user"],     "network:get_fixed_ip": ["role":"compute-user"],    "network:add_fixed_ip_to_instance": ["role":"compute-user"],    "network:remove_fixed_ip_from_instance": ["role":"compute-user"],    "network:add_network_to_project": ["role":"compute-user"],    "network:get_instance_nw_info": ["role":"compute-user"],     "network:get_dns_domains": ["role":"compute-user"],    "network:add_dns_entry": ["role":"compute-user"],    "network:modify_dns_entry": ["role":"compute-user"],    "network:delete_dns_entry": ["role":"compute-user"],    "network:get_dns_entries_by_address": ["role":"compute-user"],    "network:get_dns_entries_by_name": ["role":"compute-user"],    "network:create_private_dns_domain": ["role":"compute-user"],    "network:create_public_dns_domain": ["role":"compute-user"],    "network:delete_dns_domain": ["role":"compute-user"]} Service management

The two main concepts of Identity service management are:

  • Services

  • Endpoints

The Identity service also maintains a user that corresponds to each service (e.g., a user named nova, for the Compute service) and a special service tenant, which is called service.

The commands for creating services and endpoints are described in a later section.

OpenStack多节点部署(四)——KeyStone OpenStack多节点部署(一)——服务器选型 OpenStack多节点部署(二)——操作系统安装 OpenStack多节点部署(三)——网络配置 OpenStack多节点部署(四)——KeyStone OpenStack多节点部署(五)——Nova OpenStack多节点部署(六)——glance 前面啰嗦了这么多,终于要正式进入OpenStack各组件安装部 阅读详情

相关推荐

OpenStack之keystone(身份认证服务)

keystone概述 概念 Keystone (OpenStack ldentity Service)是OpenStack中的一个独立的提供安全认证的模块,主要负责openstack用户的身份认证、令牌管理、提供访问资源的服务目录、以及基于用户角色的访问控制。 Keystone类似一个服务总线,或者说是整个Openstack框架的注册表,其他服务通过keystone来注册其服务的Endpoint(服务访问的URL),任何服务之间相互的调用,需要经过Keystone的身份验证,来获得目标服务的Endpoi

yemu880的博客 5899

openstack详解(八)——Keystone域、项目、用户和角色的创建

今天继续给大家介绍Linux运维相关知识,本文主要内容是openstack Keystone基本配置。 一、Openstack Keystone配置环境变量 二、Openstack命令帮助 三、域、项目、用户和角色的创建

永远是少年 9700

2、OpenStack 云环境中的 Keystone 身份服务配置指南

本文详细介绍了在OpenStack云环境中配置Keystone身份服务的完整流程,涵盖安装Keystone、配置SSL加密通信、创建租户、定义角色与用户、以及设置服务端点等关键步骤。通过系统化的操作指导和流程图示,帮助用户构建安全可靠的OpenStack身份认证基础,为后续云服务的部署与管理提供支撑。

mango的博客 75

Keystone基本实验操作1

Keystone基本实验操作 执行环境变量 1.创建角色“RoleCli_02Gyq”并查看自己创建的角色 #openstack role create RoleCli_02Gyq #创建角色 #openstack role list #查看角色列表 #openstack role RoleCli_02Gyq #查看具体的角色数据 [root@controller

老白嫖大怪兽的博客 1520

3、OpenStack Keystone身份服务配置指南

本文详细介绍了OpenStack Keystone身份服务的配置过程,涵盖租户创建、角色配置、用户管理、服务端点定义以及服务租户和用户的设置。通过逐步操作说明与命令示例,帮助用户构建完整的身份认证体系,并提供常见问题解决方案与流程图解,是搭建OpenStack云环境的基础指南。

mango的博客 84

Seedance 2.5、HappyHorse 1.1与豆包Seed 2.1:一周内三大模型技术参数分析

音频生成延续原生音画同步架构,将文本、画面、音频统一序列建模,生成过程同步产出匹配口型的原声音频,支持中、英、日、韩、德、法、阿拉伯7种语言唇形对齐,无需二次调音。从行业趋势看,30秒直出、4K分辨率、7语种唇形同步正在成为视频生成的标配,编程Agent化和多模态理解正在成为语言模型的标配。技术狂奔的同时,监管在同步收紧。我理解这里的关键在于,视频生成模型的商业化落地不仅取决于生成质量,更取决于推理效率——生成一段15秒1080P视频需要多少秒、消耗多少算力,直接决定了模型的商用可行性。

lichunchuan1的博客 326

openstack学习笔记 --- keystone 客户端管理工程,用户 和 角色

云管理员可以管理 :1 工程 ; 2 用户 ;3 角色 1 工程:  云环境当中分配给多个用户组成的一个组织单位,也叫做租户或者账户 2  用户: 可以隶属于一个或者多个工程  3 角色: 定义用户可以执行的操作 ,在e /etc/PROJECT/policy.json文件中,可以定义角色 例如:  "admin_or_owner": "is_admin:True or p

rually的专栏 2031

面向多目标跟踪的数据关联方法研究综述

摘要:多目标跟踪技术在军事和民用领域具有广泛应用,其核心挑战在于数据关联问题。本文系统梳理了数据关联的主要解决方法,首次将经典算法分为确定性关联和概率性关联两大类。确定性关联(如NNDA、GNN、MHT)采用"硬分配"策略,计算效率高但易受噪声干扰;概率性关联(如PDA、JPDA、PMHT)通过"软分配"处理不确定性,更适合复杂场景。文章详细分析了各类算法的原理、适用条件和优缺点,并探讨了智能学习等新兴技术在视觉跟踪等领域的应用。研究指出,尽管随机集滤波等新方法出现,

qq_43416206的博客 1141

私有云技术——keystone服务、glance服务

keystone服务运维 1.keystone运维命令 (1)创建用户 创建一个名称为“alice”账户,密码为“mypassword123”,邮箱为“alice@example.com”。 (2)创建项目 创建一个名为“acme”的项目 (3)创建角色 创建一个角色“compute-user” (4)绑定用户和项目权限 给用户“alice”分配“acme”项目下的“compute-user”角色, 2.keystone基础查询命令 (1)查询当前所有用户列表信息: 查询具体用户的详细信息: (

别散的博客 975

Transformer是什么?看完这篇你就醍醐灌顶

前言 由谷歌团队提出的预训练语言模型BERT近年来正在各大自然语言处理任务中屠榜(话说学者们也挺有意思的,模型名都强行凑个芝麻街的人物名,哈哈哈)。 BERT算法的最重要的部分便是Transformer的概念,它本质上是Transformer的编码器部分。 而Transformer是什么呢?transformer是永远的神,自从transformer使用了抛弃rnncnn的纯attention机制之后,各种基于transformer结构的预训练模型都如雨后春笋般雄起,而transformer中最重要就是使用

fs1341825137的博客 6万+

HFSS实战项目——基片集成波导(SIW)带通滤波器

设计了一款直接耦合的SIW带通滤波器, 采用直接耦合的形式, 工作频率覆盖19~21 GHz, 通带内插入损耗小于1.5 dB, 回波损耗小于-20 dB, 带外抑制特性良好.

2401_87464239的博客 4897

keystone 手动建立租户,用户,角色,服务,端口

建立租户: root@cloud:~# keystone tenant-create --name=admin WARNING: Bypassing authentication using a token & endpoint (authentication credentials are being ignored). +-------------+-------------...

weixin_33800593的博客 223

C#实现低通和高通滤波算法

低通滤波器允许通过低于某个截止频率的信号成分,并且抑制高于该频率的成分。而高通滤波器则允许通过高于某个截止频率的信号成分,并抑制低于该频率的成分。巴特沃斯滤波器是一种对称的滤波器,具有平坦的幅度响应和最小的群延迟。低通和高通滤波是数字信号处理中常用的滤波技术,用于滤除或增强信号中的特定频率成分。在本篇文章中,我们将使用C#编程语言来实现低通和高通滤波算法。以上就是使用C#实现低通和高通滤波算法的示例代码。你可以根据自己的需求调整截止频率和采样率,将这些代码应用于你的项目中。是滤波器的截止频率,

XisVisual_Basic的博客 1275

10分钟装好炉石HsMod完整指南:8倍变速、一键开包、战棋MMR透视一次说清

对局里空格连点,五包卡包瞬间开完,多余的卡自动分解成尘;再切两下快捷键,日常以 8 倍速跑完,45 分钟的任务 10 分钟收工;酒馆战棋匹配一结束,对手的 MMR 直接挂在排行榜名字下方。这些全部来自 **HsMod**——一个基于 BepInEx(Unity 游戏的插件加载框架)的炉石传说开源插件,50 多项功能覆盖变速、开包、皮肤、战棋统计与 Web 配置台,AGPL-3.0 协议、免费、不收

gitblog_06810的博客 123

MuJoCo 入门教程(二)

本章介绍 MuJoCo 的数学和算法基础。对于熟悉广义或关节坐标建模和仿真的读者来说,整体框架是相当标准的。因此,我们将对这些材料进行简要总结。本章的大部分篇幅用于介绍我们如何处理接触和其他约束条件。这种方法是基于我们最近的研究,也是 MuJoCo 所独有的,因此我们花时间对其进行了详细的激励和解释。更多信息可参见下面的论文,尽管本章中的一些技术思想是新的,在其他地方还没有描述过。

机器人控制与仿真应用 3713

【YOLOv11改进 - 特征融合】DySample :超轻量级且高效的动态上采样器

【YOLOv11改进 - 特征融合】DySample :超轻量级且高效的动态上采样器

专注于图像领域,主要研究内容包括计算机视觉和深度学习,特别是在图像分类、目标检测和图像生成等方面有深入的研究和实践经验。 1072

keystone组件

keystone组件

weixin_52340511的博客 783

复现Fastjson反序列化漏洞(从dnslog回显到rce再到反弹shell)

Fastjson是阿里巴巴的开源JSON解析库,它可以解析 JSON 格式的字符串,支持将 Java Bean 序列化为 JSON 字符串,也可以从 JSON 字符串反序列化到 JavaBean。它还可以用于将JSON字符串转换为等效的Java对象,fastjson爆出多个反序列化远程命令执行漏洞,攻击者可以通过此漏洞远程执行恶意代码来入侵服务器。......

记录并分享学习安全的知识点.. 2697

Keystone 的安装脚本

Keystone 安装脚本,用于安装和配置 OpenStack 中的 Keystone 服务,Keystone 是 OpenStack 的身份认证服务。脚本从数据库设置到 Keystone 服务启动,最后设置了管理员用户并验证了安装。

Knock_BUG的博客 542

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

openstack-keystone服务

为了提升客户端操作的效率,OpenStack支持简单的客户端环境变量脚本即OpenRC 文件。这些脚本通常包含客户端所有常见的选项,当然也支持独特的选项。本指南的接下来的部分会引用这些脚本,为客户端操作加载合适的的凭证。认证服务为openstack服务提供认证服务,认证服务使用了域,项目,用户和角色的组合。在你配置 OpenStack 身份认证服务前,你必须创建一个数据库和管理员令牌。使用特定租户和用户运行客户端,你可以在运行之前简单地加载相关客户端脚本。部分,配置Fernet UUID令牌的提供者。

gsl371的专栏 1669

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

从0到1构建OpenStack身份系统:Keystone与Horizon集成完整教程

OpenStack Identity (Keystone) 是OpenStack云平台的核心组件,提供身份验证、授权和服务目录管理功能。本教程将带你快速掌握Keystone的部署与Horizon集成方法,从零开始构建安全高效的OpenStack身份系统。 ## 一、Keystone核心功能解析 ✨ Keystone作为OpenStack的"门卫",主要承担三大职责: - **身份认证**:验证

gitblog_00831的博客 235

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

keystone认证服务安装与配置

配置keystone应用环境 (1)使用root用户进行登录mysql数据库,安装配置验证服务数据库 执行命令create database keystone; keystone数据库的访问权限配置,密码配置为”Ccu2019@” (2)安装验证服务 (3)安装配置验证服务 配置验证服务与数据库访问 编辑配置文件/etc/keystone/keystone.conf connection = ...

zjy123078_zjy的博客 3503

OpenStack安装(一) KeyStone模块

一、安装和配置KeyStone 1. 为KeyStone配置数据库 使用数据库客户端,以root用户连接到数据库中:mysql -u root -p 创建KeyStone数据库:CREATE DATABASE keystone; 为KeyStone用户授权: GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFI...

weixin_33806509的博客 386

openstack学习一:openstack共享服务之身份服务-keystone

OpenStack Identity服务提供单点集成,用于管理身份验证,授权和服务目录。通常是用户与openstack交互的第一个服务。经过身份验证后,最终用户可以使用其身份访问其他OpenStack服务。Identity服务还可以与某些外部用户管理系统(例如LDAP)集成。 用户和服务可以使用由Identity服务管理的服务目录来查找其他服务。每个服务可以有一个或多个端点,每个端点...

wangli的博客 1577

linux卸载keystone服务,Keystone 命令汇总

用户(User)查看用户列表keystone user-list创建用户keystone user-create --name [--tenant-id ][--pass ] [--email ][--enabled ]删除用户keystone user-delete 显示用户详细信息keystone user-get 更新用户的密码keystone user-password-update ...

weixin_35562751的博客 1679

错误:在keystone中无法找到默认角色user_云计算Openstack搭建-第三篇:Keystone安装...

继上一篇:云计算Openstack搭建教程-第二篇:基础软件篇 我们本篇就对Openstack服务组件进行一个大致的了解以及配置Keystone服务前言OpenStack系统由几个单独安装的关键服务组成。这些服务根据您的云需求一起工作,包括计算,身份,网络,图像,块存储,对象存储,遥测,编排和数据库服务。可以单独安装这些项目中的任何一个,并将它们配置为独立或作为连接的实体。组成一个最基础的云计算可...

weixin_36354131的博客 1418
上一篇: HttpsURLConnection 与 HttpURLConnection
下一篇: 当发送删除请求时,空返回时异常
HookJames
博客等级 码龄19年 90粉丝 215原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值