【问题标题】:Doorkeeper oauth_access_tokens too large门卫 oauth_access_tokens 太大
【发布时间】:2015-05-18 07:19:30
【问题描述】:

我们将 Doorkeeper gem 用于 OAuth2。但是,我们的 oauth_access_tokens 表变得太大了。

  • 是否应该自动删除旧的访问令牌?如果是,为什么不删除它们,这可能是一种设置吗?

  • 如果它们没有被自动删除,那么定期清除旧令牌的好策略是什么?

【问题讨论】:

    标签: doorkeeper


    【解决方案1】:

    适合在 2019 谷歌搜索答案的朋友。

    将此行添加到您的Rakefile:

    Doorkeeper::Rake.load_tasks
    

    它会在你的环境中添加一些任务:

    rake doorkeeper:db:cleanup                 # Removes stale data from doorkeeper related database tables
    rake doorkeeper:db:cleanup:expired_grants  # Removes expired (TTL passed) access grants
    rake doorkeeper:db:cleanup:expired_tokens  # Removes expired (TTL passed) access tokens
    rake doorkeeper:db:cleanup:revoked_grants  # Removes stale access grants
    rake doorkeeper:db:cleanup:revoked_tokens  # Removes stale access tokens
    

    文档可以找到here

    【讨论】:

      【解决方案2】:

      是否应该自动删除旧的访问令牌?如果是这样,为什么它们没有被删除,这可能是一个设置吗?

      据我了解,不会自动删除

      如果它们没有被自动删除,那么定期清除旧令牌的好策略是什么?

      在我的例子中,我们使用 cron 作业来定期检查数据库。 我们把已经撤销的token和还没有撤销的token都删除了,但是已经有好几个月了(反正这只是一个例子)。 您还可以将令牌的生命周期更改为更长,从而减少生成的令牌数量,但您知道,出于安全原因,不建议这样做。

      希望对你有帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-10-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-10-04
        • 1970-01-01
        • 2012-11-23
        • 2012-07-19
        相关资源
        最近更新 更多