在分布式应用程序中刷新OAuth令牌的策略

时间:2015-06-03 04:52:03

标签: c# oauth asp.net-web-api oauth2client

我们有一个分布式的webapi应用程序,它使用提供程序发出的OAuth令牌与API通信,它持续一段特定的时间,

我们正在考虑将令牌存储在数据存储区中并在调用api之前检索它,并让后台窗口服务每1小时左右刷新一次令牌。

是否有关于如何在分布式应用程序中刷新令牌的经过验证的模式?

谢谢-Nen

1 个答案:

答案 0 :(得分:0)

我们开始实施非常相似的东西。我们正在查看Redis缓存来存储令牌。这样,任何数量的分布式应用程序都可以根据需要获取或更新缓存。 Redis可以扩展和分发。这消除了对任何同步服务的需要,并且它具有非常简单的通信接口。如果任何客户端读取过期的令牌,则负责将其从缓存(circuit breaker)中删除并通知auth服务。我们有一个auth服务负责添加到缓存。它可以刷新死亡令牌,或者如果我们不想自动刷新则忽略通知。我们还没有完全正常运行,但它很顺利。