getNewAuthCode() : AuthCodeEntityInterface
此方法应返回 的 \League\OAuth2\Server\Entities\AuthCodeEntityInterface 实现。您可以使用以下特征来帮助您从该接口实现所需的方法:
- League\OAuth2\Server\Entities\Traits\EntityTrait
- League\OAuth2\Server\Entities\Traits\TokenEntityTrait
- League\OAuth2\Server\Entities\Traits\AuthCodeTrait
persistNewAuthCode() : void
创建新的身份验证代码时,将调用此方法。您不必在这里做任何事情,但您可能希望进行审核。
传入的身份验证代码实体具有许多可以调用的方法,这些方法包含值得保存到数据库的数据:
getIdentifier() : string
为身份验证代码随机生成的唯一标识符(长度为 80+ 个字符)。
getExpiryDateTime() : \DateTimeImmutable
身份验证代码的到期日期和时间。
getUserIdentifier() : string|null
由身份验证代码表示的用户标识符。
getScopes() : ScopeEntityInterface[]
作用域实体数组。
getClient()->getIdentifier() : string
请求身份验证代码的客户端的标识符。
身份验证代码包含到期日期,因此如果在过期时使用,将自动拒绝。您可以安全地从数据库中清除过期的身份验证代码。
revokeAuthCode() : void
将授权代码交换为访问令牌时,将调用此方法。您还可以在自己的业务逻辑中使用它。
isAuthCodeRevoked() : boolean
在授权服务器将授权代码交换为访问令牌之前调用此方法。如果身份验证代码在过期之前已被手动吊销,则返回 true 。如果身份验证代码仍然有效,则返回 false 。