繁体   English   中英

使用访问令牌获取访问令牌?

[英]get access token with access token?

据我目前对访问令牌的了解,在代码流中,客户端可以使用授权代码或刷新令牌获取访问令牌。

但是.. 它可以在令牌过期之前使用它持有的访问令牌获得新的访问令牌吗?

我阅读了 RFC6749 (1.1 ~ 1.4、4.1、4.2、5 部分只是为了时间)但我找不到这样的

“访问令牌必须仅由显式资源所有者的授权或刷新令牌颁发”

所以我一直在想..

如何使用访问令牌颁发访问令牌。

这有什么问题吗?

我几乎是 OAuth 的菜鸟,只通过 inte.net 学习它,所以我可能完全误解了一些东西 D:

请赐教..谢谢!

您不能使用访问令牌来获取新的访问令牌。 访问令牌是独立的不记名令牌,它授予您访问某些数据的权限。 (由范围表示)出于安全原因,访问令牌的生命周期有限。 一旦过期,您将无法再使用它。

考虑是否有恶意的人获得了您的访问令牌。 然后他们可以使用它来访问数据,但只能访问有限的时间。 一旦访问令牌过期,他们将无法再访问该数据。

刷新访问

身份验证过程的第一步为您提供一个授权代码,这是一个非常短暂的一次性代码,可能只有五分钟,并且只能使用一次。 当您交换它时,如果您请求离线访问,您将获得一个访问令牌和一个刷新令牌。

刷新令牌可用于获取新的访问令牌。 您可以在以后使用它来获得访问权限,而无需再次请求用户的访问权限。 要获得新的访问令牌,您首先需要拥有用于创建访问令牌的客户端和 i 以及客户端密码,并且在某些情况下,您需要能够访问重定向 uri 所在的服务器。 这样,如果同一个恶意人员访问了他们的刷新令牌,他们就无法使用它来获取新的访问令牌,除非他们拥有您的客户端 ID、客户端密码和服务器访问权限。

你可能会发现这个有趣的 Understanding oauth2 with curl

TLDR

能够撤销访问权限。 刷新令牌用于此。

这是我的理解。 访问令牌不由颁发它们的身份验证服务器保留。 它们的尺寸非常大,在一般情况下可能有很多,每个 scope 一个或一组范围。 刷新令牌是不透明的短字符串,由身份验证服务器保留。 如果发现用户的系统受到威胁,它们可以被 auth 服务器无效以撤销身份验证。 例如,如果攻击者获得访问/刷新令牌并从不同的 IP 使用它们。 在这种情况下,身份验证服务器将针对保留的刷新令牌设置一个标志,并且在没有重新验证的情况下不会刷新访问令牌。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM