humanmade / delegated-oauth
将OAuth 2授权委托给另一个WordPress网站
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 );