radmin提示授权码过期_什么是 OAuth 2.0 授权码模式?

原文章 作者:Aaron Parecki

译者:MoCha => 摩卡先生

前言

授权码模式大概是我们所最常见的OAuth 2.0 授权模式。当用户授权给app时,授权码模式就会在网页应用和原生apps中使用到。

本文章是本系列文章中的第一部分,我们将探讨常用的OAuth 2.0 授权模式。如果你想在我们深入之前了解更多有关OAuth 2.0的知识,请查看What the Heck is OAuth?,这篇文章同样能够在Okta开发者博客上找到。

What is an OAuth 2.0 Grant Type? 什么是 OAuth 2.0 授权模式?

在OAuth 2.0 标准中,“授权模式”指的是一种为应用程序获取access token的方式。

OAuth 2.0 定义了好几种授权模式,其中包括“授权码模式”。OAuth 2.0 的扩展同样可以定义一些新的授权模式。

每一种授权模式在对应的一些特殊用例中都有着最佳实践,例如:web app,原生 app,一些无法启动web浏览器的设备,或者是服务器端到服务器端的应用程序。

The Authorization Code Flow 授权码模式的流程

授权码授权模式被用于web应用以及手机app中。与大多数授权模式不同,授权码模式会在一开始就请求应用去启动浏览器来进行一系列操作。更深入点说,授权码模式的流程有以下步骤:

  • 应用程序打开浏览器,将用户连接到OAuth的服务端中
  • 用户会看到授权提示以及是否同意应用的请求
  • 用户被重定向回到应用程序中,同时在请求栏中携带着授权码字符串
  • 应用程序为了获取access token而进行交换授权码的操作

Get the User’s Permission 获取用户权限

OAuth 旨在让用户能够授予应用程序特定的受限访问权限。应用程序首先会确定需要请求的权限,之后会将用户传送至对应的浏览器中以获得他们的许可。为了开启授权流程,应用程序会构造类似以下格式的URL,并且通过浏览器进行访问。

https://authorization-server.com/auth ?response_type=code &client_id=29352915982374239857 &redirect_uri=https%3A%2F%2Fexample-app.com%2Fcallback &scope=create+delete &state=xcoiv98y2kd22vusuye3kch

下面是有关请求参数的说明:

  • response_type=code告诉授权服务器,应用正在初始化授权流程
  • client_id 应用程序的公共标识,将在开发者首次注册应用时获得
  • redirect_uri 告诉授权服务器当用户同意应用的请求后应该将用户返回到何处
  • scope 一个或多个以空格分隔的字符串,用于指示应用程序请求的权限。在使用具体的OAuth API时,我们将指定所支持作用域。
  • state 应用程序将生成一个随机字符串并包含在请求中,我们应该对用户授权应用程序后是否返回相同的值进行检查。这是为了防止 CSRF attacks.

当用户访问此URL时,授权服务器会提示用户,询问他们是否要授权此应用程序的请求。

d2a845309c4fc4e434f98c2420dd3cb2.png

Redirect Back to the Application 重定向回到应用程序

如果用户同意授权,那么授权服务器将重定向回到指定的redirect_uri ,并且携带着code以及state

例如,用户将重定向回到以下URL:

https://example-app.com/redirect ?code=g0ZGZmNjVmOWIjNTk2NTk4ZTYyZGI3 &state=xcoiv98y2kd22vusuye3kch

state的值将会和应用程序刚初始请求时设置的一样。但应用程序应当检查重定向中的state是否与最初设置的state一致

code是通过授权服务器生成的授权码,授权码相对来说存活时间是短暂的,在依赖OAuth服务的情况下,一般存活在1~10分钟。

Exchange the Authorization Code for an Access Token 为了获取Access Token 进行的授权码交换

我们即将要结束授权的流程啦。现在应用程序有了授权码,我们可以用它来获取Access Token。

应用程序将会通过以下步骤发起POST请求到服务令牌终端:

  • grant_type=authorization_code 告诉令牌终端,应用程序正在使用授权码模式。
  • code 重定向回来后,应用程序所携带的授权码。
  • redirect_uri 与请求授权码时设置的重定向URL一样。有些API不需要该请求参数,所以在使用之前应当仔细查阅想要使用API的文档。
  • client_id 应用程序的客户端ID。
  • client_secret 应用程序的客户端secret。确保获取到access token是来自该应用程序的,而不是那些有可能拦截授权码的潜藏攻击者。

令牌终端将验证请求中的所有参数,确保授权码不会过期以及客户端ID和客户端secret是匹配的。如果一切的检查顺利,没有问题,那么将会生成一个access token响应回去!

HTTP/1.1 200 OKContent-Type: application/jsonCache-Control: no-storePragma: no-cache{ "access_token":"MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Radmin Viewer3.5是一款远程控制软件,用于远程访问和控制其他计算机。授权是用于激活软件的一串字符。 Radmin Viewer3.5的授权可以通过购买正版软件或者使用授权生成器获得。购买正版软件是最可靠的方式,因为它会为您提供一个唯一的授权,有效期内可以无限制地使用该软件。 使用授权生成器产生的授权是非法的行为,这违反了软件的使用许可协议,并且可能会导致法律责任。 因此,我建议您购买正版的Radmin Viewer3.5软件,以获得合法有效的授权。这样不仅可以遵守软件的使用规则,还可以获得完整的技术支持和软件的更新。 ### 回答2: Radmin Viewer3.5是一款远程控制软件,可以帮助用户远程访问和控制其他计算机。授权是软件使用的许可证,可以让用户在安装和使用软件时合法使用。 Radmin Viewer3.5的授权是由开发者提供的,用户需要将其输入到软件的授权激活界面中。只有在正确输入有效的授权后,用户才能完全使用软件的所有功能。 购买Radmin Viewer3.5的用户通常会获得一个授权,可以在安装过程中或者在软件界面的相应位置进行激活。用户可以在购买时获得正版授权,也可以通过其他正式渠道购买授权,以确保软件的合法性和可靠性。 用户在使用过程中应妥善保管授权,避免泄露给他人,以免被他人非法使用软件。如果遗失了授权,用户可以联系Radmin Viewer3.5的售后服务人员,提供相关购买信息并进行申诉,以重新获得授权。 总之,Radmin Viewer3.5的授权在软件的安装和使用过程中起到了重要的作用,用户需要合法获取并妥善保管授权,以确保能够正常使用软件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值