humanmade/delegated-oauth

将OAuth 2授权委托给另一个WordPress网站

安装次数: 111,638

依赖项: 0

建议者: 0

安全: 0

星级: 10

关注者: 25

分支: 1

开放问题: 5

类型:wordpress-plugin

1.0.5 2020-12-01 11:31 UTC

This package is auto-updated.

Last update: 2024-09-14 18:20:48 UTC


README

将认证和用户管理委托给另一个WordPress网站。支持通过登录表单使用原生WordPress登录和OAuth 2 REST API请求。必须在上游委托网站上启用OAuth 2 REST API插件。

当登录请求被委托给上游WordPress网站时,用户在本地的缓存将被插入WordPress数据库,镜像所有数据、角色和能力。每次请求都会与上游WordPress网站同步登录,以确保数据是最新的,能力没有被移除。这可能会在所有认证请求上增加一些性能延迟。

配置Cookie认证

为了使Cookie认证正确工作,您必须在上游WordPress网站上创建一个OAuth 2应用程序。使用home_url( '/hm-delegated-auth-callback' )作为回调URL,并使用PHP常量HM_DELEGATED_AUTH_CLIENT_ID配置此插件。

注意,如果您使用的是多站点,则必须使用主站点的首页URL,以确保整个网络的回调URL相同。委托认证然后将根据需要内部重定向站点。

缓存访问令牌认证

在每次HTTP请求中检查上游WordPress网站以验证OAuth 2访问令牌可能会导致显著的负载。委托认证支持在短时间内本地缓存访问令牌验证,这样不是每个请求都会引起上游HTTP请求。要启用此功能,请定义HM_DELEGATED_AUTH_ACCESS_TOKEN_CACHE_TTL常量,其值为秒的整数。例如,要缓存访问令牌验证60秒

define( 'HM_DELEGATED_AUTH_ACCESS_TOKEN_CACHE_TTL', 60 );