热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

openstackkeystoneapi测试(curl)

参考文档:http://keystone.openstack.org/configuration.htmlhttp://keystone.openstack.org/api_curl_examples.html1、重要概念:AdminToken所有服务共享的一个密钥,如果设置不同,哪些依赖keystone的服务将无法正

参考文档:

http://keystone.openstack.org/configuration.html

http://keystone.openstack.org/api_curl_examples.html

1、重要概念:

Admin Token
所有服务共享的一个密钥,如果设置不同,哪些依赖keystone的服务将无法正常工作。

Tenants
做keystone里,Tenants 是一个高层次的组,表示一组用户。一个tenant 是一个小组,共同拥有 Nova里的虚拟机,或者Swift里的容器。一个tenant可以有一个或者多个用户,用户可以属于一个或者多个tenant,针对每个tenant,用户拥有一个角色(role)。
Tenants are the high level grouping within Keystone that represent groups of users. A tenant is the grouping that owns virtual machines within Nova, or containers within Swift. A tenant can have zero or more users, Users can be associated with more than one tenant, and each tenant ? user pairing can have a role associated with it.

认证几个要素:tenants, users, roles

业务端口:5000
管理端口:35357
2、业务API 测试:

获取版本号:
curl http://0.0.0.0:5000/ | python -mjson.tool
curl http://0.0.0.0:5000/v2.0/ | python -mjson.tool

获取api扩展:
curl http://0.0.0.0:5000/v2.0/extensions | python -mjson.tool

用普通用户登录:
curl -X POST -d ‘{“auth”: {“passwordCredentials”:{“username”: “admin”, “password”: “nova”}}}’ -H “Content-type: application/json” http://0.0.0.0:5000/v2.0/tokens | python -mjson.tool

查看自己的租户:
curl -H “X-Auth-Token:614be856b02449439b116c0b28e94217″ http://0.0.0.0:5000/v2.0/tenants | python -mjson.tool

3、管理API测试:

获取版本号:
curl http://0.0.0.0:35357/ | python -mjson.tool
curl http://0.0.0.0:35357/v2.0/ | python -mjson.tool

获取api扩展:
curl http://0.0.0.0:35357/v2.0/extensions | python -mjson.tool

用角色 admin 登录:

curl -X POST -d ‘{“auth”: {“tenantId”: “6a524dbe23dd4e4ab672cd163c85a27d”, “passwordCredentials”:{“username”: “admin”, “password”: “nova”}}}’ -H “Content-type: application/json” http://0.0.0.0:35357/v2.0/tokens | python -mjson.tool

校验 token 的有效,并返回token的信息:
curl -H “X-Auth-Token: 32efbc8c22af4ad6a8f03d051dc3413b” http://0.0.0.0:35357/v2.0/tokens/82c8d77cac0a4fdba83b2191185ddb39 |python -mjson.tool

使用 HEAD校验,如果返回码是 20X, 表示 token 有效:
curl -I -H “X-Auth-Token: 5a10b008add4435f8473d2b11d3ba8a8″ http://0.0.0.0:35357/v2.0/tokens/5a10b008add4435f8473d2b11d3ba8a8

这个api不对:
curl -H “X-Auth-Token:5a10b008add4435f8473d2b11d3ba8a8″ http://0.0.0.0:35357/v2.0/tokens/5a10b008add4435f8473d2b11d3ba8a8/endpoints

返回租户:
curl -H “X-Auth-Token:5a10b008add4435f8473d2b11d3ba8a8″ http://0.0.0.0:35357/v2.0/tenants|python -mjson.tool

返回某个租户:
curl -H “X-Auth-Token:5a10b008add4435f8473d2b11d3ba8a8″ http://0.0.0.0:35357/v2.0/tenants/6a524dbe23dd4e4ab672cd163c85a27d |python -mjson.tool

返回用户:
curl -H “X-Auth-Token:5a10b008add4435f8473d2b11d3ba8a8″ http://0.0.0.0:35357/v2.0/users|python -mjson.tool

返回某个用户:
curl -H “X-Auth-Token:5a10b008add4435f8473d2b11d3ba8a8″ http://0.0.0.0:35357/v2.0/users/3ff8fbca9794436c996d8c6e41427530|python -mjson.tool

返回某个租户上,用户授予的角色:
curl -H “X-Auth-Token:5a10b008add4435f8473d2b11d3ba8a8″ http://0.0.0.0:35357/v2.0/tenants/6a524dbe23dd4e4ab672cd163c85a27d/users/3ff8fbca9794436c996d8c6e41427530/roles |python -mjson.tool

返回某个用户的角色:(出错,没有实现,参见 https://bugs.launchpad.net/keystone/+bug/933565)
curl -H “X-Auth-Token:5a10b008add4435f8473d2b11d3ba8a8″ http://0.0.0.0:35357/v2.0/users/3ff8fbca9794436c996d8c6e41427530/roles


推荐阅读
  • QBlog开源博客系统:Page_Load生命周期与参数传递优化(第四部分)
    本教程将深入探讨QBlog开源博客系统的Page_Load生命周期,并介绍一种简洁的参数传递重构方法。通过视频演示和详细讲解,帮助开发者更好地理解和应用这些技术。 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • python的交互模式怎么输出名文汉字[python常见问题]
    在命令行模式下敲命令python,就看到类似如下的一堆文本输出,然后就进入到Python交互模式,它的提示符是>>>,此时我们可以使用print() ... [详细]
  • 探讨如何高效使用FastJSON进行JSON数据解析,特别是从复杂嵌套结构中提取特定字段值的方法。 ... [详细]
  • 本文详细介绍了如何使用Python编写爬虫程序,从豆瓣电影Top250页面抓取电影信息。文章涵盖了从基础的网页请求到处理反爬虫机制,再到多页数据抓取的全过程,并提供了完整的代码示例。 ... [详细]
  • 使用Python在SAE上开发新浪微博应用的初步探索
    最近重新审视了新浪云平台(SAE)提供的服务,发现其已支持Python开发。本文将详细介绍如何利用Django框架构建一个简单的新浪微博应用,并分享开发过程中的关键步骤。 ... [详细]
  • 本文介绍如何使用Python进行文本处理,包括分词和生成词云图。通过整合多个文本文件、去除停用词并生成词云图,展示文本数据的可视化分析方法。 ... [详细]
  • 本文探讨了在Linux系统上使用Docker时,通过volume将主机上的HTML5文件挂载到容器内部指定目录时遇到的403错误,并提供了解决方案和详细的操作步骤。 ... [详细]
  • 探讨如何真正掌握Java EE,包括所需技能、工具和实践经验。资深软件教学总监李刚分享了对毕业生简历中常见问题的看法,并提供了详尽的标准。 ... [详细]
  • Startup 类配置服务和应用的请求管道。Startup类ASP.NETCore应用使用 Startup 类,按照约定命名为 Startup。 Startup 类:可选择性地包括 ... [详细]
  • 本文将深入探讨如何在不依赖第三方库的情况下,使用 React 处理表单输入和验证。我们将介绍一种高效且灵活的方法,涵盖表单提交、输入验证及错误处理等关键功能。 ... [详细]
  • 本文详细介绍了 Flink 和 YARN 的交互机制。YARN 是 Hadoop 生态系统中的资源管理组件,类似于 Spark on YARN 的配置方式。我们将基于官方文档,深入探讨如何在 YARN 上部署和运行 Flink 任务。 ... [详细]
  • 探讨一个显示数字的故障计算器,它支持两种操作:将当前数字乘以2或减去1。本文将详细介绍如何用最少的操作次数将初始值X转换为目标值Y。 ... [详细]
  • 作为一名专业的Web前端工程师,掌握HTML和CSS的命名规范是至关重要的。良好的命名习惯不仅有助于提高代码的可读性和维护性,还能促进团队协作。本文将详细介绍Web前端开发中常用的HTML和CSS命名规范,并提供实用的建议。 ... [详细]
author-avatar
捕鱼达人2602917825
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有