帮助手册 管理 添加 OAuth 提供者

添加 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 Provider 表单的呈现方式会有所不同。在 OAuth Provider 表单中提供相关详细信息:

授权码:

    • 提供者名称:指定您的 OAuth 应用程序提供者的名称。
    • OAuth 流程:将此指定为授权代码
    • 授权端点 URL:OAuth 提供者的 API 授权端点。
    • 客户端 ID :您在将 Site24x7 注册为客户端时从 OAuth 提供程序收到的唯一字母数字字符串。
    • Client secret: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 刷新失败告警:当访问令牌连续重试 3 次后仍无法刷新时,将通知所选组中的用户。了解如何创建用户告警组

客户凭证:

客户端凭证 OAuth Flow 用于应用程序想要访问和更新自己的服务帐户的场景。它可以用于应用程序想要更新注册的描述或重定向 URI,或通过 API 访问其服务帐户中存储的其他数据的场景。

对于此类 OAuth 实施,除了在上述授权代码流程中填充的所有必填字段之外,您还必须在 OAuth 提供者表单中指定以下附加字段。

  • OAuth flow:将此字段指定为客户端凭证。
  • 身份验证方法: 应用程序可以通过将其客户端 ID 和客户端密码传递给授权服务器来请求访问令牌。这可以使用 基本身份验证(其中凭证在 Authorization 标头中传递)传递,也可以发布在请求正文中。单击单选按钮以使该方法与您的偏好相匹配。
  • 请求正文:添加在请求访问令牌时要发送的任何其他参数。 
  • OAuth 刷新失败告警:当访问令牌连续重试 3 次后仍无法刷新时,将通知所选组中的用户。了解如何创建用户告警组

 

资源所有者密码凭证:

当应用程序被用户信任时(即它归服务或用户的桌面操作系统所有),用户可以直接向应用程序提供他们的服务凭证(用户名和密码)以从服务获取访问令牌。对于此类 OAuth 实施,除了在上述授权代码流程
中填充的所有必填字段之外,您还必须在 OAuth 提供者表单中指定以下附加字段  。

  • OAuth flow:将此字段指定为 资源所有者密码凭证。
  • 资源所有者凭证: 提供资源所有者的用户名和密码。 
  • 身份验证方法: 应用程序可以通过将其客户端 ID 和客户端密码传递给授权服务器来请求访问令牌。这可以使用 基本身份验证(其中凭证在 Authorization Header 中传递)传递,也可以 发布在请求正文中。单击单选按钮以使该方法与您的偏好相匹配。
  • 请求正文:添加在请求访问令牌时要发送的任何其他参数。 

  • OAuth 刷新失败告警:当访问令牌连续重试 3 次后仍无法刷新时,将通知所选组中的用户。了解如何创建 用户告警组

6. 单击授权按钮以成功检索访问令牌刷新令牌(如果由 OAuth 提供者提供)。

一旦 Site24x7 拥有访问令牌,它就可以使用令牌通过 API 访问 OAuth 帐户,仅限于访问范围,直到令牌过期。将与原始访问令牌一起包含的刷新令牌允许您在原始访问令牌到期之前从 OAuth 服务自动生成新的访问令牌。

OAuth 令牌详细信息

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

  • 提供者名称:OAuth 应用程序提供者的名称。 
  • OAuth Flow:它突出了您的服务用于安全访问的授权方法。根据您配置的配置文件设置,它可能是授权代码、客户端凭证、资源所有者密码凭证。
  • 访问令牌:访问令牌用于授权和身份验证,同时获得对 OAuth 提供程序应用程序上资源的访问权限。
  • 刷新令牌: 刷新令牌通常与访问令牌一起发送。刷新令牌用于在旧令牌过期之前检索新的访问令牌。
  • 访问令牌过期时间:它定义了访问令牌的过期时间。
    • 一些访问令牌将没有与之链接的刷新令牌。一旦访问令牌过期,所有关联的监视器将无法进行身份验证。
    • 当您有刷新令牌,但连续重试 3 次后仍无法刷新访问令牌时,将触发告警电子邮件以进行快速故障排除。该电子邮件将包含来自授权服务器的响应。

编辑 OAuth 提供者详细信息

您可以编辑 OAuth Provider 的配置详细信息,甚至可以删除 Provider 配置文件。

  • 导航到管理 > 配置文件 > OAuth 提供者。
  • 单击您要编辑/删除的配置文件。
  • 打开的弹出窗口显示编辑和删除选项。单击编辑以修改提供者的详细信息。

帮助手册 管理 添加OAuth 提供者

O