如何设置OAuth 2?

Frappe 内置了基于 oauthlib 的 OAuth 2.0 提供程序。第三方应用现在可以基于 Frappe 的角色和用户权限系统来访问用户资源。要设置一个应用进行访问,请遵循以下步骤。

OAuth 2 定义了四种角色

资源所有者

一个能够授予对受保护资源访问权限的实体。当资源所有者是个人时,通常称为最终用户。

资源服务器

托管受保护资源的服务器,能够使用访问令牌接受和响应受保护资源的请求。

客户端

代表资源所有者并经过其授权来发起受保护资源请求的应用程序。“客户端”一词并不暗示任何特定的实现特征(例如,
应用程序是在服务器、桌面还是其他设备上执行)。

授权服务器

在成功验证资源所有者并获得授权后,向客户端颁发访问令牌的服务器。

设置 OAuth 2 提供程序

系统管理员可以在 OAuth Provider Settings 中设置确认消息的行为为 Force 或 Auto。
如果选择“强制”,系统将始终要求用户确认。如果选择“自动”,则仅当用户没有活动令牌时,系统才会要求确认。

前往

设置 > 集成 > OAuth Provider Settings

添加主服务器

这是托管所有用户的主服务器。例如:https://frappe.io。要将其设置为主服务器,请前往 设置 > 集成 > 社交登录密钥 并添加新的 Frappe Social Login Key。在 Base URL 字段中输入 https://frappe.io。此 URL 会在所有连接到该服务器进行身份验证的其他 Frappe 服务器中重复使用。实际上,这就是主要的身份提供程序 (IDP)。

在此服务器下,根据需要添加任意数量的 OAuth Client。

添加客户端应用

作为系统管理员,请前往

设置 > 集成 > OAuth Client

要添加客户端,请填写以下详细信息

  1. 应用名称:输入应用名称,例如 CAVS
  2. 跳过授权:如果选中此项,则在身份验证期间不会出现任何确认消息。跳过授权意味着该客户端被视为受信任的客户端。
  3. 范围:向用户显示的范围列表以及确认消息。范围之间用空格分隔。
  4. 重定向 URI:重定向 URI 列表,用空格分隔。
  5. 默认重定向 URI:从重定向 URI 列表中选择的默认重定向 URI。
  6. 授权类型:选择 Authorization Code 或 Implicit。
  7. 响应类型:如果授权类型是 Authorization Code,则选择 Code;或者选择 Token。

使用 OAuth 2

请参阅 API 文档以了解如何在您的应用程序中使用 OAuth 2。