跳转到主内容

管理员API

框架管理员API服务基于标准RESTHTTPS调用API端点都要求通过HTTP头签名认证

典型API调用工作流如下:

  1. 认证框架RESTAPI签名HTTPSAPI请求需要创建签名客户端_id中,客户端保密并标定时间上头客户端_id客户端保密可由有托管角色/权限者获取

  2. HTTPSREST调用客户端_id时间戳和HTTP头签名

  3. 框架RESTAPI验证HTTPS请求签名并发送请求回复

框架管理员API服务

https://api.console.nutanix.com/v1

下一节中,我们将审查如何用Frame正确认证我们的API请求

API验证华府

RESTAPI所有调用均需认证第三方服务(个人用户目前不支持)和API所有调用均需签名认证请求

每项API请求必须签名并包括适当签名验证的必要信息签名API请求调用客户端_id客户端保密需要签名创建验证

如何提供API认证华府

  1. 导航到框架管理员控制台

  2. 导航到客户端组织化页并选择用户群从左手菜单

  3. 启动API系统选项并点击保存.这将创建用户页新标签标题API系统.

  4. 转到新建API授权标签并点击添加API.

  5. 输入 API授权名并选择您想要授予底部API密钥的角色角色决定API权限级点击添加.

  6. 点击ilipsis旁边API授权刚创建并选择管理器.

  7. 命名a键并点击加法符号创建

  8. 记录客户端_id客户端保密后用API调用

    警告

    确定记录此信息, 因为它只出现一次 。无法重取细节 。

制作API调用华府

上段生成客户端_id客户端保密.

上头客户端_id是一个独特的字符串框架使用识别并授权适当的实体和API权限

上头客户端保密算法HMAC-SHA256键生成签名并需要签名验证过程

签名通过应用HMAC-SHA256算法生成字符串客户端_id并标定时间时间戳是自时代以来分秒计时

创建签名的适当步骤如下:

  1. 获取当前时标

  2. 编译时标创建字符串客户端_idtimestamp+客户端_id

  3. HMAC-SHA256应用新创建字符串使用客户端保密.

验证签名时 API也需要客户端_id时标请求 HTTP头上头客户端保密应该是内含

Python3实例华府

下方简单示例ython3可生成API调用和HTTPS请求所需签名脚本

#!/bin/envpthon

导入hashlib
导入赫马克
导入时间轴
导入请求
导入基数64

#客户证书
客户端_id=... ...
客户端保密=b ...

# 创建签名
时间戳=整数高山市时间轴.时间轴高山市))
to_sign='%s%s'百分数高山市时间戳,客户端_id)
签名=赫马克.新建高山市客户端保密,to_sign.编码编码高山市utf-8),hashlib.sha256).exdigest应用高山市)

准备网站请求头
页眉={{"X-Frame-ClientId":客户端_id,"X-Frame-Timestamp":字符串高山市时间戳),"X-Frame-Signature":签名}

请求
R=请求.获取高山市"https://api.console.nutanix.com/v1/accounts",页眉=页眉)
账号=R.公元前高山市)

#打印账号
For账号账号:
打印高山市账号)

API端点华府

最后,每个框架实体都有自己的端点简化访问

Baidu