Facebook 身份验证模块
Facebook 身份验证模块是一个预配置的 OAuth2.0 身份验证模块,允许用户使用其 Facebook 凭据登录 Hub 及任何已连接的服务。
启用 Facebook 身份验证
要允许已有 Facebook 帐号的用户登录 Hub,请启用身份验证模块。
此操作流程分为三个步骤:
在 Hub 中生成重定向 URI。 创建身份验证模块时,Hub 会生成用于授权服务的重定向 URI。 此 URI 标识每次登录请求的来源。
在 Facebook 中生成客户端 ID 和密钥。 每个来自 Hub 的登录请求都包含一个唯一标识符。 您存储在身份验证模块中的 ID 和密钥会告知 Facebook 授权服务各登录请求已获授权。
在 Hub 中启用身份验证模块。 当您已生成 Hub 用于与 Facebook 授权服务进行身份验证的信息后,将这些值复制到 Hub 并启用该模块。
在 Hub 中生成重定向 URI
首先,创建 Facebook 身份验证模块。 执行此操作时,Hub 会生成用于授权服务的重定向 URI。
更改 Hub 实例的基本 URL 时,请务必在授权服务中更新重定向 URI。 例如,更改代理设置后。
生成客户端 ID 和密钥
下一步是在 Facebook 中注册 Hub 的授权重定向 URI。
访问 Facebook for Developers 服务。
点击 Add a New App (添加新应用)。
在 Add a Product (添加产品) 部分,为 Facebook Login (Facebook 登录) 点击 Set Up (设置) 按钮。
在 Products (产品) 菜单中,选择 Settings (设置)。
将 Hub 的重定向 URI 粘贴到 Valid OAuth redirect URIs (有效的 OAuth 重定向 URI) 输入字段中,然后点击 Save Changes (保存更改) 按钮。
在 Settings (设置) 菜单中,选择 Basic (基本)。
使用存储为 App ID (应用 ID) 和 App Secret (应用口令) 的值在 Hub 中启用身份验证模块。

在 Hub 中启用身份验证模块
若要完成设置,请将授权服务中的客户端 ID 和密钥存储在 Facebook 身份验证模块中。
从 Facebook 复制 App ID (应用 ID) ,并粘贴到 Hub 的 Client ID (客户端 ID) 输入字段中。
点击 Show (显示) 按钮获取 App Secret (应用口令) ,然后从 Facebook 复制该值并粘贴到 Hub 的 Client secret (客户端密钥) 输入字段中。
配置身份验证模块的可选设置。 如需详细信息,请参阅 其他设置。
点击 Save (保存) 按钮以应用设置。
点击 Enable module (启用模块) 按钮。
Facebook 身份验证模块已启用。
存储在 Button image (按钮图像) 设置中的图标会添加到登录对话框窗口。 用户可以点击该图标,使用其 Facebook 凭据登录 Hub。
测试连接
要验证 Facebook 身份验证模块是否正确设置,请测试连接。
点击页眉中的 Test login (测试登录) 按钮。 这会在新的浏览器标签页中验证登录流程。
如果身份验证模块设置正确,将显示成功信息。
如果连接出现问题,身份验证服务会显示错误信息。 请使用错误页面上提供的信息排查问题。
设置
设置页面的第一个部分显示身份验证模块的常规设置。 在此,您还可以找到用于在授权服务中注册 Hub 的重定向 URI 以及用于存储在授权服务中生成的 Client ID (客户端 ID) 和 Client Secret (客户端密钥) 的输入字段。
设置 | 描述 |
|---|---|
类型 | 显示已启用第三方身份验证的授权服务类型。 |
名称 | 存储身份验证模块的名称。 可使用此设置,将此模块与 Auth Modules (身份验证模块) 列表中的其他身份验证模块区分开。 |
按钮图像 | 显示用户点击按钮使用已连接授权服务账号登录 Hub 时使用的按钮图像。 您可以上传 JPG、GIF 或 PNG 文件。 图像会自动调整为 48 x 48 像素。 |
重定向 URI | 显示已授权的重定向 URI,该 URI 用于在授权服务中注册 Hub 的连接。 |
客户端 ID | 存储授权服务用于验证登录请求的标识符。 在配置 Web 应用的授权设置并输入已授权的重定向 URI 时,您可在授权服务中生成该值。 |
客户端密钥 | 存储用于验证客户端 ID 的密钥或密码。 该值与客户端 ID 一同在授权服务中生成。 |
授权延期 | 保存用于在扩展授权请求中识别身份验证模块的值。 如填写该值,Hub 将处理将授权服务发放的访问令牌交换为授予 Hub 权限的令牌的请求。 要成功交换访问令牌,身份验证模块必须在第三方身份验证服务授权并且在 Hub 中已启用。 要了解如何使用 Hub REST API 交换访问令牌,请参见 扩展授权。 |
授权服务端点
本页中的本节设置存储 Facebook 使用的 OAuth 2.0 端点。
对于预配置的 OAuth 2.0 模块,所选授权服务使用的值会自动设定。
设置 | 描述 |
|---|---|
验证 | 存储 Hub 用于通过用户代理重定向从资源所有者获取授权的端点。 |
令牌 | 存储 Hub 用于将授权授权凭证换取访问令牌的端点。 |
用户数据 | 存储用于查找已验证用户个人资料数据的端点。 |
电子邮箱 | 存储用于查找已验证用户电子邮件地址的端点。仅在电子邮件地址未存储在用户个人资料中时使用。 仅在电子邮件地址未存储在用户个人资料中时使用。 |
头像 | 存储用于查找作为已验证用户头像的二进制文件的端点。仅当头像未直接存储在用户个人资料中时使用。 仅当头像未直接存储在用户个人资料中时使用。 |
字段映射
当 Facebook 服务将用户个人资料作为响应对象返回时,指定字段路径中的值会被复制到 Hub 的用户个人资料。 使用以下设置定义查找已验证用户个人资料数据的端点,并将授权服务中存储的字段映射到 Hub 用户帐户。
对于 Facebook 模块,值会自动设定。
指定嵌套对象字段路径时,输入由斜杠字符 (
/) 分隔的段序列。如需引用可能存储在多个位置的值,请使用 "Elvis 运算符" (
?:) 作为多个路径的分隔符。 选择此选项后,Hub 会使用在指定字段中遇到的第一个非空值。
字段 | 描述 |
|---|---|
用户 ID | 映射到存储复制到 Hub User ID (用户 ID) 属性的值的字段。 |
用户名 | 映射到存储复制到 Hub 个人资料 Username (用户名) 字段的值的字段。 此选项适用于 Hub 版本 2023.1.15453 及更高版本。 |
全名 | 映射到存储复制到 Hub 个人资料 Full name (全名) 字段的值的字段。 |
电子邮箱 | 映射到存储复制到 Hub 个人资料 Email (电子邮箱) 字段的值的字段。 |
电子邮件验证状态 | 映射到存储复制到 Hub 已验证电子邮件属性的值的字段。 |
头像 | 映射到存储用于作为 Hub 个人资料 Avatar (头像) 的图片的字段。 |
图像 URL 模式 | 为由 ID 引用的头像生成图像 URL。 使用 <picture-id> 占位符引用存储头像的字段。 |
分组 | 映射到已连接授权服务中存储组成员分配的属性。 指定此值后,您可以将授权服务中的组成员关系与 Hub 中的对应组进行映射和同步。 有关详细信息,请参阅 群组映射。 |
其他设置
以下选项位于页面底部。 这些设置可让您定义请求范围并选择与服务的身份验证方式。
本部分的其他选项可让您管理 Hub 帐号创建与组成员身份,并减少空闲连接消耗的处理资源。
选项 | 描述 |
|---|---|
作用域 | 设置访问请求的作用域。 请输入以空格分隔的作用域列表。 |
身份验证 | 确定如何将凭据传递给授权服务。 |
用户创建 | 启用为使用已连接授权服务账号登录的未注册用户创建 Hub 帐号。 Hub 通过电子邮件地址判断用户是否已有帐号。 Hub 通过电子邮件地址判断用户是否已有帐号。 |
自动验证电子邮件 | 当身份验证服务未返回该属性值时,确定 Hub 如何设置电子邮件地址的验证状态。 |
自动加入组 | 当用户使用已连接授权服务账号登录时,将其加入组。 您可以选择一个或多个组。 新用户自动加入某个组后,将继承该组分配的所有权限。 建议您至少将用户添加到一个组中。 否则,新用户只会被授予当前分配给 All Users (所有用户) 组的权限。 |
连接超时 | 设置连接授权服务的等待时间。 默认设置为 5000 毫秒(5 秒)。 |
读取超时 | 设置读取并检索授权服务中用户个人资料数据的等待时间。 默认设置为 5000 毫秒(5 秒)。 |
审核 | 跳转至 Hub 中的 Audit Events (审核事件) 页面。 在该页面,您可以查看应用到此身份验证模块的变更列表。 |
群组映射
操作
页眉中可用的操作如下:
操作 | 描述 |
|---|---|
设为默认 | 将该身份验证模块设为您安装环境的默认模块。任何时候只能有一个身份验证模块设为默认。如果另一个模块当前已设为默认,则其默认状态将被取消。 任何时候只能有一个身份验证模块设为默认。 如果另一个模块当前已设为默认,则其默认状态将被取消。 仅当当前身份验证模块未设为默认时才显示该选项。 |
清除默认 | 取消将该身份验证模块设为您安装环境的默认模块。 如果没有可用的身份验证模块被设为默认,未登录用户总是会被导向 Hub 登录页面。 仅当当前身份验证模块已被设为默认时才显示该选项。 |
禁用模块 | 禁用身份验证模块。 仅当身份验证模块当前已启用时才显示该选项。 |
启用模块 | 启用身份验证模块。 仅当身份验证模块当前已禁用时才显示该选项。 |
测试登录 | 允许您测试与身份验证服务的连接。 |
删除模块 | 从 Hub 中移除身份验证模块。 仅当您已配置了允许用户登录 Hub 安装程序的其他身份验证模块时,才可使用。 |

