通过 OIDC 集成¶
如果您的应用支持使用 OpenID Connect 提供方登录,您可以将 Authany 用作该提供方。
在管理台中设置 Authany¶
- 在左侧菜单栏中进入 Applications。
- 点击顶部工具栏中的 ⊕Add Application。
- 输入名称并选择应用类型 OIDC Client Application,点击「Save」。
- 您会看到一个指向本指南的链接,可以帮助您完成设置,然后点击「Next」。
- 在 URIs 部分,将 Authorized Redirect URIs 填写为您应用的重定向 URI。
- 获取 OpenID Connect 配置:
- 您可以从 Basic Info 部分获取 Client ID 和 Client Secret。
- 您可以从 Endpoints 部分获取 OIDC Endpoints。
- 将 OpenID Connect 配置提供给您的应用。
🎉 完成!现在您应该可以使用 Authany 登录您的应用了。
WordPress 示例¶
在本节中,我们将演示如何将 Authany 用作 WordPress 登录的 OIDC 提供方。
- 按照上一节(在管理台中设置 Authany)设置一个 OIDC Client Application。
- 我们将使用插件 OpenID Connect Generic Client,您也可以使用任何其他兼容 OIDC 的插件。在您的 WordPress 站点中下载并启用它。
- 进入 Setting > OpenID Connect Client。
- 填写表单
- Client ID:从 Basic Info 部分获取 Client ID。
- Client Secret Key:从 Basic Info 部分获取 Client Secret。
- OpenID Scope:插件可访问的作用域列表,以空格分隔。
- 示例:
openid offline_access https://authany.com/scopes/full-userinfo。 - 需要
https://authany.com/scopes/full-userinfo才能获取用户的资料(如邮箱)。否则插件只能获取用户 ID。
- 示例:
- Login Endpoint URL:从 Endpoints 部分获取 Authorization Endpoint。
- 示例:
https://{AUTHGEAR_APP_DOMAIN}/oauth2/authorize。
- 示例:
- Userinfo Endpoint URL:从 Endpoints 部分获取 Userinfo Endpoint。
- 示例:
https://{AUTHGEAR_APP_DOMAIN}/oauth2/userinfo。
- 示例:
- Token Validation Endpoint URL:从 Endpoints 部分获取 Token Endpoint。
- 示例:
https://{AUTHGEAR_APP_DOMAIN}/oauth2/token。
- 示例:
- End Session Endpoint URL:留空。
- Identity Key:指定在用户声明中的哪个字段查找用户的身份数据。
- 建议使用
sub,它是 Authany 中的用户 ID。
- 建议使用
- 根据您项目的登录方式设置对应的用户声明字段:
- 如果您的项目使用邮箱登录
- Nickname Key:设置为
email。 - Email Formatting:设置为
{email}。
- Nickname Key:设置为
- 如果您的项目使用手机号登录
- Nickname Key:设置为
phone_number。 - Email Formatting:清空。
- Nickname Key:设置为
- 如果您的项目使用用户名登录
- Nickname Key:设置为
preferred_username。 - Email Formatting:清空。
- Nickname Key:设置为
- 如果您的项目使用邮箱登录
- 在插件设置页面底部,您可以获取 Redirect URI。进入 Authany 管理台,将该 URI 添加到 Authorized Redirect URIs 中。