2.2. HTTP 身份验证


具有 Red Hat Virtualization 帐户的任何用户可以访问 REST API。API 用户通过对 API 的所有请求提交强制的 Red Hat Virtualization Manager 用户名和密码。每个请求都使用 HTTP 基本身份验证 [2] 对这些凭证进行编码。如果请求不包含适当的 Authorization 标头,API 会发送 所需的 401 Authorization

例 2.1. 在没有适当的凭证的情况下访问 REST API

HEAD [base] HTTP/1.1
Host: [host]

HTTP/1.1 401 Authorization Required
请求通过指定域的 Authorization 标头发出。API 用户使用 username@domain:password 约定对提供的凭证中的相应 Red Hat Virtualization Manager 域和用户进行编码。
下表显示了 base64 中编码凭据的流程。
表 2.1. API 访问的编码凭证
用户名 rhevmadmin
domain domain.example.com
密码 123456
取消编码的凭证 rhevmadmin@domain.example.com:123456
base64 编码凭证 cmhldm1hZG1pbkBibGFjay5xdW1yYW5ldC5jb206MTIzNDU2
API 用户提供 base64 编码凭证,如下所示:

例 2.2. 使用适当的凭证访问 REST API

HEAD [base] HTTP/1.1
Host: [host]
Authorization: Basic cmhldm1hZG1pbkBibGFjay5xdW1yYW5ldC5jb206MTIzNDU2

HTTP/1.1 200 OK
...
重要
基本身份验证涉及潜在的敏感信息,如密码,以纯文本形式发送。REST API 需要 Hypertext 传输协议安全(HTTPS)进行纯文本请求的传输级别加密。
重要
有些 base64 库将结果分解成多行,并使用换行符终止每行。这会破坏标头,并导致有故障的请求。Authorization 标头需要在标头中的一行中编码的凭据。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.