创建认证 URL 用户注册表
“认证 URL”用户注册表提供一种简单机制,用于通过引用定制身份提供者来认证用户。
关于本任务
本主题描述了如何将新“认证 URL”用户注册表创建为组织中的资源。 在创建用户注册表后,必须将用户注册表添加到沙箱目录。
需要以下某个角色才能配置用户注册表:
- 管理员
- 组织所有者
- 定制角色Settings: Manage许可权
注:
API Connect 向身份验证 URL 端点发出 HTTP
GET 调用,发送用户凭据。 以下示例显示对具有定义为
https://myauthurl.example.com/user/authenticate 的端点的认证 URL 身份提供者的调用:GET /user/authenticate HTTP/1.1
Host: myauthurl.example.com
Authorization: Basic c3Bvb246Zm9yaw=如果认证 URL 端点返回 HTTP 状态码 200,那么表示用户成功认证。 200 之外的
HTTP 状态码指示登录尝试失败。 API Connect 转发任何以 开头的 X- HTTP 头信息( 除外),并将 Cookie 发送给身份验证 X-Client-CertificateURL 身份提供者,以帮助做出身份验证决定;例如GET /user/authenticate HTTP/1.1
Host: myauthurl.example.com
Authorization: Basic c3Bvb246Zm9yaw=
X-Forwarded-For: 8.8.9.9
X-Custom-Header-From-Customer: special
Cookie: MyCookie=VGhpc0lzV2lja2VkQW1hemluZw==
当用户看到用于完成 API Connect 用户注册的表单时,哪些字段是预填充的取决于身份验证 URL 身份提供商的响应中返回了哪些字段。 如果返回以下任何字段,那么它们将在注册表单中预先填充:
usernameemailfirst_namelast_name
username 字段,那么注册表单显示用户提供的用户名。 预填充功能要求来自认证 URL 身份提供者的响应满足以下条件:Content-Type必须为application/json。- 响应主体格式必须是 JSON。
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Cache-Control: no-store
Pragma: no-cache
{
"username":"myuser",
"email":"myuser@example.com",
"first_name":"My",
"last_name":"User"
}过程
结果
可以在 API 的“安全性定义”中使用该用户注册表进行基本认证。 有关更多信息,请参阅定义基本身份验证安全方案。