Oauth 身份验证过程中的随机数函数是什么?

Ran*_*ili 4 authentication oauth-2.0 azure-active-directory

我正在开发一个软件,其中登录过程是使用 Microsoft Azure AD 和 Oauth2 完成的。在此过程中,随机数是可选的,成功登录后,我会收到一个有效期为一小时的令牌。

我无法理解随机数在这个过程中的作用,并且我没有使用它。我的身份验证是否因此而不太安全?在此过程中添加随机数有什么好处?

Kav*_*uwa 6

Nonce 绑定客户端和令牌,防止令牌重放攻击。

nonce - 用于将客户端会话与 ID 令牌相关联并减轻重放攻击的字符串值

考虑您的令牌端点并从授权服务器接收令牌响应。作为客户端,您如何验证 ID 令牌不被恶意方重放?这就是随机数的作用。

您可以在授权请求中添加此参数。在令牌响应中,您将获得 ID 令牌。当您验证令牌时,您会验证令牌内的随机数(JWT 声明)。

更多来自这个答案

此外,根据流类型,随机数可以是强制参数。隐式流和混合流强制随机数值