跳到主要内容

HTTP Request 凭证#

你可以使用这些凭证来验证以下节点:

前置条件#

你必须使用你想要查询的应用程序或服务所需的身份验证方法。

如果你需要使用 SSL 证书来保护身份验证,请参阅提供 SSL 证书以获取所需信息。

支持的身份验证方法#

  • 预定义凭证类型
  • 基本身份验证(通用凭证类型)
  • 自定义身份验证(通用凭证类型)
  • 摘要身份验证(通用凭证类型)
  • 标头身份验证(通用凭证类型)
  • Bearer 身份验证(通用凭证类型)
  • OAuth1(通用凭证类型)
  • OAuth2(通用凭证类型)
  • 查询身份验证(通用凭证类型)

有关通用凭证类型的更多信息,请参阅 HTTP 身份验证

预定义凭证类型

n8n 建议在有可用于你想要连接的服务的凭证类型时使用预定义凭证类型。与配置通用凭证相比,它提供了一种更简单的设置和管理凭证的方法。

你可以使用预定义凭证类型对某些 API 执行自定义操作,其中 n8n 为该平台提供了节点。例如,n8n 有一个 Asana 节点,并支持在 HTTP Request 节点中使用你的 Asana 凭证。有关更多信息,请参阅自定义操作

使用预定义凭证类型#

要使用预定义凭证类型:

  1. 打开你的 HTTP Request 节点,或向工作流添加一个新节点。
  2. Authentication 中,选择 Predefined Credential Type
  3. Credential Type 中,选择你想要使用的 API。
  4. Credential for <API name> 中,你可以:
    1. 选择该平台的现有凭证(如果可用)。
    2. 选择 Create New 以创建新凭证。

有关更多信息,请参阅自定义 API 操作

使用基本身份验证#

如果你的应用程序或服务支持基本身份验证,请使用此通用身份验证。

要配置此凭证,请输入:

  • 你用于访问 HTTP Request 目标应用程序或服务的 Username
  • 与该用户名对应的 Password

使用摘要身份验证#

如果你的应用程序或服务支持摘要身份验证,请使用此通用身份验证。

要配置此凭证,请输入:

  • 你用于访问 HTTP Request 目标应用程序或服务的 Username
  • 与该用户名对应的 Password

使用标头身份验证#

如果你的应用程序或服务支持标头身份验证,请使用此通用身份验证。

要配置此凭证,请输入:

  • 你需要传递给 HTTP 请求目标应用程序或服务的标头 Name
  • 标头的 Value

阅读更多关于 HTTP 标头的信息

使用 Bearer 身份验证#

如果你的应用程序或服务支持 Bearer 身份验证,请使用此通用身份验证。此身份验证类型实际上只是标头身份验证,其中 Name 设置为 AuthorizationValue 设置为 Bearer <token>

要配置此凭证,请输入:

  • 你需要传递给 HTTP 请求目标应用程序或服务的 Bearer Token

阅读更多关于 Bearer 身份验证的信息。

使用 OAuth1#

如果你的应用程序或服务支持 OAuth1 身份验证,请使用此通用身份验证。

要配置此凭证,请输入:

  • Authorization URL:也称为资源所有者授权 URI。此 URL 通常以 /oauth1/authorize 结尾。临时凭证将发送到此处以提示用户完成授权。
  • Access Token URL:这是用于临时凭证初始请求的 URI。此 URL 通常以 /oauth1/request/oauth1/token 结尾。
  • Consumer Key:也称为客户端密钥,类似于用户名。这指定了用于调用的 oauth_consumer_key
  • Consumer Secret:也称为客户端密钥,类似于密码。
  • Request Token URL:这是用于在授权后从临时凭证切换到长期凭证的 URI。此 URL 通常以 /oauth1/access 结尾。
  • 选择身份验证握手使用的 Signature Method。这指定了用于调用的 oauth_signature_method。选项包括:
    • HMAC-SHA1
    • HMAC-SHA256
    • HMAC-SHA512

对于大多数 OAuth1 集成,你需要配置应用程序、服务或集成以生成这些字段的大部分值。使用 n8n 中的 OAuth Redirect URL 作为此类服务的重定向 URL 或重定向 URI。

阅读更多关于 OAuth1OAuth1 授权流程的信息。

使用 OAuth2#

如果你的应用程序或服务支持 OAuth2 身份验证,请使用此通用身份验证。

配置此凭证的要求取决于所选的 Grant Type。有关每种授权类型的更多信息,请参阅 OAuth 授权类型

对于大多数 OAuth2 集成,你需要配置应用程序、服务或集成。使用 n8n 中的 OAuth Redirect URL 作为此类服务的重定向 URL 或重定向 URI。

阅读更多关于 OAuth2 的信息。

Authorization Code 授权类型#

使用 Authorization Code 授权类型将授权码交换为访问令牌。身份验证流程使用重定向 URL 将用户返回到客户端。然后应用程序从 URL 获取授权码并使用它来请求访问令牌。有关更多信息,请参阅 Authorization Code 请求

要配置此凭证,请选择 Authorization Code 作为 Grant Type

然后输入:

  • Authorization URL
  • Access Token URL
  • Client ID:用于登录的 ID 或用户名。
  • Client Secret:用于登录的密钥或密码。
  • 可选: 为凭证输入一个或多个 Scope。如果未指定,凭证将请求客户端可用的所有范围。
  • 可选: 某些服务需要更多查询参数。如果你的服务需要,请将它们添加为 Auth URI Query Parameters
  • Authentication 类型:选择最适合你的用例的选项。选项包括:
    • Header:将凭证作为基本身份验证标头发送。
    • Body:在请求正文中发送凭证。
  • 可选: 选择是否 Ignore SSL Issues。如果启用,即使 SSL 验证失败,n8n 也会连接。

Client Credentials 授权类型#

当应用程序请求访问令牌以访问其自己的资源而不是代表用户时,使用 Client Credentials 授权类型。有关更多信息,请参阅 Client Credentials

要配置此凭证,请选择 Client Credentials 作为 Grant Type

然后输入:

  • Access Token URL:用于开始 OAuth2 流程的 URL。通常此 URL 以 /token 结尾。
  • Client ID:用于登录客户端的 ID 或用户名。
  • Client Secret:用于登录客户端的密钥或密码。
  • 可选: 为凭证输入一个或多个 Scope。大多数服务不支持 Client Credentials 授权类型的范围;仅在你的服务支持时才在此处输入范围。
  • Authentication 类型:选择最适合你的用例的选项。选项包括:
    • Header:将凭证作为基本身份验证标头发送。
    • Body:在请求正文中发送凭证。
  • 可选: 选择是否 Ignore SSL Issues。如果启用,即使 SSL 验证失败,n8n 也会连接。

PKCE 授权类型#

Proof Key for Code Exchange (PKCE) 授权类型是 Authorization Code 流程的扩展,用于防止 CSRF 和授权码注入攻击。

要配置此凭证,请选择 PKCE 作为 Grant Type

然后输入:

  • Authorization URL
  • Access Token URL
  • Client ID:用于登录的 ID 或用户名。
  • Client Secret:用于登录的密钥或密码。
  • 可选: 为凭证输入一个或多个 Scope。如果未指定,凭证将请求客户端可用的所有范围。
  • 可选: 某些服务需要更多查询参数。如果你的服务需要,请将它们添加为 Auth URI Query Parameters
  • Authentication 类型:选择最适合你的用例的选项。选项包括:
    • Header:将凭证作为基本身份验证标头发送。
    • Body:在请求正文中发送凭证。
  • 可选: 选择是否 Ignore SSL Issues。如果启用,即使 SSL 验证失败,n8n 也会连接。

使用查询身份验证#

如果你的应用程序或服务支持将身份验证作为单个键/值查询参数传递,请使用此通用身份验证。(对于多个查询参数,请使用自定义身份验证。)

要配置此凭证,请输入:

  • 查询参数键或 Name
  • 查询参数 Value

使用自定义身份验证#

如果你的应用程序或服务支持将身份验证作为多个键/值查询参数传递,或者你需要比其他通用身份验证选项更多的灵活性,请使用此通用身份验证。

Custom Auth 凭证需要 JSON 数据来定义你的凭证。你可以使用 headersqsbody 或混合使用。查看以下示例以开始使用。

发送两个标头#

{
"headers": {
"X-AUTH-USERNAME": "username",
"X-AUTH-PASSWORD": "password"
}
}

Body#

{
"body": {
"user": "username",
"pass": "password"
}
}

查询字符串#

{
"qs": {
"appid": "123456",
"apikey": "my-api-key"
}
}

发送标头和查询字符串#

{
"headers": {
"api-version": "202404"
},
"qs": {
"apikey": "my-api-key"
}
}

提供 SSL 证书#

你可以在 HTTP 请求中发送 SSL 证书。创建 SSL 证书作为节点使用的单独凭证:

  1. 在 HTTP Request 节点的 Settings 中,启用 SSL Certificates
  2. Parameters 选项卡上,将现有的 SSL Certificate 凭证添加到 Credential for SSL Certificates 或创建一个新凭证。

要配置你的 SSL Certificates 凭证,你需要添加:

  • 证书颁发机构 CA 捆绑包
  • Certificate (CRT):也可能显示为公钥,具体取决于你的颁发 CA 是谁以及他们如何格式化证书
  • Private Key (KEY)
  • 可选: 如果 Private Key 已加密,请为私钥输入 Passphrase

如果你的 SSL 证书在单个文件中(例如 .pfx 文件),你需要打开该文件以从中复制详细信息并粘贴到相应的字段中:

  • 将公钥/CRT 输入为 Certificate
  • 在该字段中输入 Private Key/KEY