10.4. HTTP 标头


在 Event-Driven Ansible 和事件流的情况下,HTTP 标头会扮演一个重要角色,因为它们从第三方源(如 GitHub、监控工具或专有 webhook)执行传入的事件所需的上下文和安全信息。它们包括以下功能:

Authentication and non-repudiation
这是最重要的使用。标头通常包含令牌、API 密钥或安全签名(如 X-Hub-Signature 标头中的 HMAC),Event-Driven Ansible 用来验证 发送 者的身份,并确保事件有效负载没有被修改。这支持事件来自合法来源的非弹性。
调试和日志记录
标头提供与延迟或失败事件相关的关键数据点(DateUser-AgentX-Request-ID)以帮助系统管理员和 SREs 调试问题。

对于所有 HTTP 通信,标头是至关重要的,提供几个不同的目的:

  • 上下文和元数据: 描述正在发送的数据(如 Content-Type: application/json, Content-Length: 1024)。
  • 客户端/服务器功能 : 对发送者的功能或首选项(例如 Accept-Language: en-US)的接收方的格式。
  • Authentication/Authorization: Carry 安全凭证(例如 Authorization: Bearer <token>)。
  • Cache 控制客户端和代理应缓存内容的方式(例如,Cache-Control: max-age=3600)。
  • 路由和跟踪 :它们可以通过自定义标头(如 X-Request-ID)促进网络路由和事务跟踪

10.4.1. 为事件流安全地配置 HTTP 标头

要增强事件流安全性,您必须明确定义传递哪些 HTTP 标头。这些标头包含处理所需的关键上下文和验证数据。

流程

  1. 要包括所有 HTTP 标头,请在 Headers 字段中输入星号 rolebinding。这允许所有 HTTP 标头,但几个标头除外:

    • excluded :X-EnvoyX-Trusted-ProxyX-Forwarded-ForX-Real-Id开头的标头
    • redacted: Authorization 标头(例如 Authorization: Redacted

      重要

      如果 Headers 字段为空,则任何 HTTP 标头都添加到 Production 和 Test 模式中的事件有效负载中。

  2. 要包括一组特定的 HTTP 标头,以逗号分隔的字符串(如 Host,Authorization,X-Request-ID)输入所需标头的名称。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat