为网站保存寿命短的全球唯一令牌?
Save globally unique token which has a short life for website?
我有一个 API 需要一个令牌给 运行 和另一个 API 哪个 returns 一个属于我的令牌首先给 运行 API。
现在我必须将该令牌保存在某个地方,但我遇到的问题是,这是一个单一的令牌,所以我不需要在数据库中为它创建一个 table (还有数十万个对数据库的请求,我不想在每个查询中都获取令牌)。我不想将它保存在 AppSettings.json
中,因为对该文件的任何更改都会使我的网站重新启动。而且我不认为将它保存在服务器的文件(例如文本文件)中是最佳做法。
那么解决这个问题的方法是什么?
P.S.: 显然这个token是有有效期的。
即使您的令牌在很短的生命周期内过期,我仍然建议使用包含令牌及其到期日期的数据库 table(取决于您真正的意思是多短 - 衡量其生命周期的合理单位是什么在?)
尽管如此,请不要在您的请求中直接引用 table。
定期读取令牌的值并将该值缓存在内存中的单例或其他配置对象中。
您的详细信息可能会有所不同,具体取决于:
- 令牌多久更改一次(寿命短意味着多频繁?)
- 是否可以提前刷新
- 如果您可以同时拥有多个活动令牌
- 您的令牌的安全要求
我有一个 API 需要一个令牌给 运行 和另一个 API 哪个 returns 一个属于我的令牌首先给 运行 API。
现在我必须将该令牌保存在某个地方,但我遇到的问题是,这是一个单一的令牌,所以我不需要在数据库中为它创建一个 table (还有数十万个对数据库的请求,我不想在每个查询中都获取令牌)。我不想将它保存在 AppSettings.json
中,因为对该文件的任何更改都会使我的网站重新启动。而且我不认为将它保存在服务器的文件(例如文本文件)中是最佳做法。
那么解决这个问题的方法是什么?
P.S.: 显然这个token是有有效期的。
即使您的令牌在很短的生命周期内过期,我仍然建议使用包含令牌及其到期日期的数据库 table(取决于您真正的意思是多短 - 衡量其生命周期的合理单位是什么在?)
尽管如此,请不要在您的请求中直接引用 table。
定期读取令牌的值并将该值缓存在内存中的单例或其他配置对象中。
您的详细信息可能会有所不同,具体取决于:
- 令牌多久更改一次(寿命短意味着多频繁?)
- 是否可以提前刷新
- 如果您可以同时拥有多个活动令牌
- 您的令牌的安全要求