帮助手册

添加 OAuth 提供商

关于 OAuth 2

OAuth 2 是一个开放授权框架,为客户端应用程序提供通过 HTTP 对 Google、Facebook、GitHub 等服务器资源进行"安全委托访问"的能力,代表资源所有者执行操作。它可用于构建适用于 Web、桌面和移动应用程序的授权工作流。通过 Site24x7,您可以生成访问令牌,用于监控受 OAuth 2 保护的 API 端点。 

创建 OAuth 提供商

Site24x7 允许您设置多个 OAuth 提供商以监控其 API 端点。每个 OAuth 提供商可生成唯一的访问令牌,用于授权 Site24x7 监控其网站/端点 API。在为 URL、REST API 和 SOAP 工作流配置监控表单时,您可以使用这些预设的 OAuth 访问令牌进行身份验证。按照以下步骤设置 OAuth 提供商:

  1. 登录 Site24x7 客户端。
  2. 导航至管理 > 配置文件 > OAuth 提供商
  3. 点击添加 OAuth 提供商按钮。
  4. 系统将弹出添加 OAuth 提供商表单。 
  5. Site24x7 支持三种授权流程类型:
    • 授权码:此类型授权用于服务端应用程序  
    • 客户端凭据:用于应用程序 API 访问
    • 资源所有者密码凭据:用于受信任的应用程序,例如服务本身使用的应用程序。 
注意

拥有自定义角色的用户可以使用查看我的资源选项过滤和查看他们创建的资源。

根据应用程序请求授权的方式以及 API 支持的授权流程,OAuth 提供商表单的呈现方式会有所不同。请在 OAuth 提供商表单中填写相关详情:

授权码:

  • 提供商名称:指定 OAuth 应用程序提供商的名称。
  • OAuth 流程:将此项指定为授权码。
  • 刷新位置:从下拉菜单中选择要刷新令牌的位置,系统将根据所选位置收集配置数据。
  • 刷新间隔: 指定 OAuth 令牌的刷新间隔。仅当 API 响应中未提供令牌过期时间时才使用此值。间隔范围应在 1-9999 分钟之间。
  • 授权端点 URL:OAuth 提供商的 API 授权端点。
  • 客户端 ID:将 Site24x7 注册为客户端时从 OAuth 提供商处获得的唯一字母数字字符串。
  • 客户端密钥:Site24x7 在客户端注册过程中获得的密钥字符串。
  • 重定向 URI:成功授权后重定向到的 Site24x7 URL,此项将自动填充且用户无法修改。
  • 范围:指定 Site24x7 访问 OAuth 应用程序可能需要请求的 OAuth 范围。您可以根据监控所需的访问级别提供多个范围。
    https://example.com/v1/oauth2/authorize?response_type=code&client_id=
    CLIENT_ID
    &redirect_uri=
    CALLBACK_URL
    &access_type=offline&scope=
    profile
  • 查询参数:需要附加到授权端点 URL 的附加查询参数"名称-值对",以及标准参数如:client_id、redirect_uri 和 response_type
  • 令牌端点 URL:从中检索访问令牌的 OAuth 提供商 URL。
  • 已验证请求方法:选择用于向此 OAuth 提供商提交访问令牌的方法。选择并定义传递访问令牌的方式,您可以在参数字段中使用自定义命名。 
    • 请求头: 访问令牌以请求头形式发送。使用以下名称-值语法传递 Bearer 令牌:
      "Authorization: Bearer ${access.token}"
    • URI 查询参数:您可以使用以下语法在 URI 查询参数中传递访问令牌:
      "access_token=${access.token}"
  • OAuth 刷新失败告警: 当访问令牌经过三次连续重试后仍无法刷新时,所选群组中的用户将收到通知。了解如何创建用户告警组

客户端凭据:

客户端凭据 OAuth 流程适用于应用程序希望访问和更新其自身服务账户的场景。例如,应用程序希望通过 API 更新已注册的描述或重定向 URI,或访问其服务账户中存储的其他数据。

对于此类 OAuth 实现,除了上述授权码流程中填写的所有必填字段外,您还需要在 OAuth 提供商表单中指定以下附加字段。

  • OAuth 流程:将此字段指定为客户端凭据
  • 刷新位置:从下拉菜单中选择要刷新令牌的位置,系统将根据所选位置收集配置数据。
  • 身份验证方法: 应用程序可以通过将客户端 ID 和客户端密钥传递给授权服务器来请求访问令牌。可以使用基本身份验证(凭据通过授权头传递)或在请求正文中发布的方式传递。点击单选按钮选择符合您偏好的方法。
  • 请求正文: 添加请求访问令牌时要发送的任何附加参数。 
  • OAuth 刷新失败告警: 当访问令牌经过三次连续重试后仍无法刷新时,所选群组中的用户将收到通知。了解如何创建用户告警组

资源所有者密码凭据:

当用户信任某个应用程序(即该应用程序由服务拥有,或属于用户的桌面操作系统),用户可以直接向应用程序提供其服务凭据(用户名和密码)以从服务获取访问令牌。
对于此类 OAuth 实现,除了上述授权码流程中填写的所有必填字段外,您还需要在 OAuth 提供商表单中指定以下附加字段。

  • OAuth 流程: 将此字段指定为资源所有者密码凭据
  • 刷新位置:从下拉菜单中选择要刷新令牌的位置,系统将根据所选位置收集配置数据。
  • 资源所有者凭据: 提供资源所有者的用户名和密码。 
  • 身份验证方法: 应用程序可以通过将客户端 ID 和客户端密钥传递给授权服务器来请求访问令牌。可以使用基本身份验证(凭据通过授权头传递)或在请求正文中发布的方式传递。点击单选按钮选择符合您偏好的方法。
  • 请求正文:添加请求访问令牌时要发送的任何附加参数。 
  • OAuth 刷新失败告警: 当访问令牌经过三次连续重试后仍无法刷新时,所选群组中的用户将收到通知。了解如何创建 用户告警组

6. 输入所有与 OAuth 提供商配置相关的详情后,点击检查配置按钮测试 OAuth 提供商。测试完成后,结果将显示相关的请求头响应头和 OAuth 提供商的响应

注意
  • 失败的请求和响应将以红色文字高亮显示,并附有"身份验证失败"的消息。
  • 您可以点击复制 复制图标 图标轻松复制响应内容。

7. 点击授权 按钮成功检索访问令牌刷新令牌(如果 OAuth 提供商提供)。

注意

Site24x7 获取访问令牌后,可以在令牌过期之前通过 API 访问 OAuth 账户,访问范围受到限制。刷新令牌将与原始访问令牌一起提供,允许您在原始访问令牌过期之前从 OAuth 服务自动生成新的访问令牌。

OAuth 令牌详情

创建 OAuth 提供商配置文件后,它将自动列在 OAuth 提供商列表下。您将看到提供商名称、所用 OAuth 流程、访问令牌、刷新令牌(如果提供商提供)和访问令牌过期时间

  • 提供商名称:OAuth 应用程序提供商的名称。 
  • OAuth 流程:突出显示您的服务用于安全访问的授权方法,可以是授权码、客户端凭据或资源所有者密码凭据,具体取决于您的配置文件设置。
  • 访问令牌: 访问令牌用于在访问 OAuth 提供商应用程序上的资源时进行授权和身份验证。
  • 刷新令牌: 刷新令牌通常与访问令牌一起发送,用于在旧令牌过期之前检索新的访问令牌。
  • 访问令牌过期时间:定义访问令牌的过期时间。
    • 部分访问令牌没有关联的刷新令牌,访问令牌过期后,所有关联的监视器将无法进行身份验证。
    • 当您拥有刷新令牌,但访问令牌经过三次连续重试后仍无法刷新时,将触发告警邮件以便快速排除故障。邮件将包含来自授权服务器的响应。

编辑 OAuth 提供商详情

您可以编辑 OAuth 提供商的配置详情,也可以删除提供商配置文件。

  • 导航至管理 > 配置文件 > OAuth 提供商
  • 点击要编辑/删除的配置文件。
  • 在打开的弹窗中,您可以看到编辑和删除选项。点击编辑修改提供商详情。

本文档对您有帮助吗?

您愿意帮助我们改进文档吗?请告诉我们哪些方面可以做得更好。


很抱歉本文档未能让您满意。我们希望了解可以从哪些方面改进您的体验。


感谢您抽出时间分享反馈。我们将利用您的反馈来改进在线帮助资源。

短链接已复制!