OAuth2从数据库中删除令牌

我正在尝试为支持移动,桌面和networking应用的REST API实现OAuth2。

我已阅读第6章。刷新 Hardt,D.,Ed。,“OAuth 2.0授权框架”,RFC 6749,DOI 10.17487 / RFC6749,2012年10月 的访问令牌

根据RFC,访问令牌和刷新令牌保存到数据库,我正在使用MySQL。

我的问题是我应该在哪一点/ OAuth2的活动中删除所有过期的访问令牌和刷新令牌。

我应该为此运行cron作业吗?

虽然对我来说似乎很难,但我必须阅读

validation服务器上是否启用了MySQL事件计划程序 。 如果没有,启用它。

假设表被称为“标记”,它有一个名为“expires_at”的列,该列上有一个索引,然后用这样的查询创build一个预定事件 :

CREATE EVENT purge_expired_tokens ON SCHEDULE EVERY 15 MINUTE DO DELETE FROM token WHERE expires_at < NOW(); 

从您最初定义事件的时间起,每15分钟,服务器将在后台运行该查询,并清除任何过期的会话。

是的,你应该定期运行一个程序,删除过期的访问令牌,刷新令牌和授权码。