Authentication 我应该在哪里存储访问令牌和刷新令牌?

Authentication 我应该在哪里存储访问令牌和刷新令牌?,authentication,ssl,oauth-2.0,access-token,refresh-token,Authentication,Ssl,Oauth 2.0,Access Token,Refresh Token,我有一些关于令牌和加密的问题 首先,访问令牌: 无论各种攻击(您需要记住,以便采取措施防范),您是否建议在客户端上存储访问令牌?(localstorage/Cookie) 如果是,我将需要对其进行加密,并将加密的令牌存储在客户端上。但是,由于我使用SSL,真的需要这样做吗?您正在使用SSL来防止MIM攻击。但是既然您使用的是HTTPS,为什么还要加密访问令牌 我的第二个问题与加密有关。对于SSL,我知道我需要一个证书(或自签名证书以在本地测试它)。但是,对于加密令牌,我是否需要相同的SSL证书

我有一些关于令牌和加密的问题

首先,访问令牌:

无论各种攻击(您需要记住,以便采取措施防范),您是否建议在客户端上存储访问令牌?(localstorage/Cookie)

  • 如果是,我将需要对其进行加密,并将加密的令牌存储在客户端上。但是,由于我使用SSL,真的需要这样做吗?您正在使用SSL来防止MIM攻击。但是既然您使用的是HTTPS,为什么还要加密访问令牌

  • 我的第二个问题与加密有关。对于SSL,我知道我需要一个证书(或自签名证书以在本地测试它)。但是,对于加密令牌,我是否需要相同的SSL证书,还是可以使用RSACryproProvider生成一对公钥/私钥

对于刷新令牌:

  • 我认为最好的方法是将加密的刷新令牌保存在数据库中。它可能是在数据库中读取/写入刷新令牌的实际API。但是,刷新令牌必须与某些用户属性(即UserId)一起存储,因此您可以根据UserId、电子邮件等检索它。假设我使用UserId,我会将其与一些字符和日期一起加密,并将其存储在客户机上。你同意吗?而且,我正在考虑限制对该API的访问,以便它只能服务于来自特定服务器(web场)的请求。你对这种方法有什么看法
我非常感谢您的帮助,因为我正在努力深入理解一些概念。如果有什么我表达不正确的地方,请让我知道,重新表述我的问题

谢谢