首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用OAuth 2.0访问谷歌的API

使用OAuth 2.0访问谷歌的API 谷歌的API使用的OAuth 2.0协议进行身份验证授权。谷歌支持常见的OAuth 2.0场景,如那些Web服务器,安装,客户端应用程序。...方案 Web服务器应用程序 该谷歌的OAuth 2.0端点支持的Web服务器应用程序使用的语言和框架,如PHP,JavaPythonRuby,ASP.NET。...谷歌处理用户身份验证,会话选择用户同意。其结果是一个授权码,其应用可以换取的访问令牌刷新令牌。 应用程序应该保存令牌以供将来使用刷新使用令牌来访问谷歌的API访问。...谷歌处理用户身份验证,会话选择用户同意。其结果是一个授权码,其应用可以换取的访问令牌刷新令牌。 应用程序应该保存令牌以供将来使用刷新使用令牌来访问谷歌的API访问。...用户批准的访问后,从谷歌服务器的响应中包含的访问令牌刷新令牌。应用程序应该保存令牌以供将来使用刷新使用令牌来访问谷歌的API访问。一旦访问令牌过期后,应用程序使用令牌来获得一个新的刷新

4.4K10
您找到你想要的搜索结果了吗?
是的
没有找到

分享一篇详尽的关于如何在 JavaScript 中实现刷新令牌的指南

通常,当用户登录,服务器会生成一对令牌:访问令牌刷新令牌。访问令牌的生命周期很短,用于对用户进行身份验证并授予他们对受保护资源的访问权限。...JWT(JSON Web 令牌)是一种紧凑、URL 安全的方式,用于表示要在两方之间传输的声明。 在 OAuth 2.0 中,JWT 可以用作访问令牌/或刷新令牌。...访问令牌用于访问受保护的资源,例如 API,而刷新令牌用于在当前访问令牌过期获取新的访问令牌。 当 JWT 用作访问令牌,它通常使用用户的声明令牌的过期时间进行编码。...因此,如果我们根据其他身份协议或框架(例如 SAML)讨论授权策略,我们将不会有访问令牌刷新令牌的概念。...代码示例:客户端使刷新令牌失效 在客户端,可以通过从客户端存储中删除令牌并确保客户端不会再次使用令牌来使刷新令牌失效。

22430

浏览器中存储访问令牌的最佳实践

本地存储 本地存储是通过Web存储API中的全局localStorage对象以JavaScript访问的。本地存储中的数据在浏览器选项卡和会话之间可用,也就是说它不会过期或在浏览器关闭被删除。...例如,您可以定义一个单独的方法来使用令牌调用API。它不会向主应用程序(主线程)透露令牌。下面的摘录显示了如何在JavaScript中使用内存处理令牌的示例。...在使用JavaScript闭包或服务工作者处理令牌API请求,XSS攻击可能会针对OAuth流程,如回调流或静默流来获取令牌。...为此,cookie需要有适当的设置,比如SameSite=Strict、指向API端点域的域属性路径。 最后,在使用刷新令牌,请确保将它们存储在自己的cookie中。...没有必要在每个API请求中都发送它们,所以请确保不是这种情况。刷新令牌必须只在刷新过期的访问令牌添加。这意味着包含刷新令牌的cookie与包含访问令牌的cookie有稍微不同的设置。

14510

OAuth 详解 什么是 OAuth?

基本身份验证仍然用作服务器端应用程序 API 身份验证的原始形式:用户发送 API 密钥 ID 密码,而不是在每次请求向服务器发送用户名密码。...OAuth API 我们构建 API 的方式也发生了很大变化。2005 年,人们投资于 WS-* 以构建 Web 服务。现在,大多数开发人员已转向 REST 无状态 API。...您正在做的是使用刷新令牌获取新的访问令牌,并且访问令牌通过网络访问所有 API 资源。每次刷新访问令牌,您都会获得一个新的加密签名令牌。密钥轮换内置于系统中。 OAuth 规范没有定义令牌是什么。...然后将授权传递给令牌端点。令牌端点处理授权并说“很好,这是您的刷新令牌访问令牌”。 ? 您可以使用访问令牌来访问 API。一旦它过期,您将必须使用刷新令牌返回到令牌端点以获取新的访问令牌。...此过程将授权代码授予交换访问令牌(可选)刷新令牌。客户端使用访问令牌访问受保护的资源。

4.4K20

开发中需要知道的相关知识点:什么是 OAuth?

基本身份验证仍然用作服务器端应用程序 API 身份验证的原始形式:用户发送 API 密钥 ID 密码,而不是在每次请求向服务器发送用户名密码。...OAuth API 我们构建 API 的方式也发生了很大变化。2005 年,人们投资于 WS-* 以构建 Web 服务。现在,大多数开发人员已转向 REST 无状态 API。...您正在做的是使用刷新令牌获取新的访问令牌,并且访问令牌通过网络访问所有 API 资源。每次刷新访问令牌,您都会获得一个新的加密签名令牌。密钥轮换内置于系统中。 OAuth 规范没有定义令牌是什么。...然后将授权传递给令牌端点。令牌端点处理授权并说“很好,这是您的刷新令牌访问令牌”。 您可以使用访问令牌来访问 API。一旦它过期,您将必须使用刷新令牌返回到令牌端点以获取新的访问令牌。...此过程将授权代码授予交换访问令牌(可选)刷新令牌。客户端使用访问令牌访问受保护的资源。

21440

AspNet.Core之使用CancellationToken来提高应用负载

背景 已经有很多文章记录了Web程序中采用异步编程的优势.Net异步编程的用法, 异步编程虽然不能解决查询数据库的瓶颈, 但是利用线程切换,能最大限度的弹性利用工作线程, 提高了web服务的响应能力。...头脑风暴 想象你请求某网站页面,该页面正闪着菊花试图努力绽放(正在加载),最终你忍不了: ① F5刷新 ② 转向其他页面 ③ 点击浏览器“停止”按钮 对于Web服务器,用户快速刷新5次,服务器将被迫接受...5倍的工作量,这是因为即使用刷新了浏览器(或点击停止按钮), 虽然取消了原始浏览器请求,但是Web服务器并不Care,仍然按部就班处理进入HTTP pipeline的请求(MVC/WebAPI 中默认行为...在.NET中,这是使用CancellationToken完成的: 取消令牌的实例传递到异步任务 异步任务监视令牌,以查看请求是否已经被取消。 如果请求取消,则应停止执行正在执行的操作。....> 以上是传统的网页请求场景,在取消请求,浏览器帮助我们发起了Cancellation信号。

2.2K10

OAuth 2.0初学者指南

在执行诸如交换访问令牌的授权码刷新访问令牌等操作,这些凭证对于保护请求的真实性至关重要。 例如,Facebook要求您在Facebook Developers门户网站上注册您的客户端。...i)授权代码授权:此授权类型针对机密客户端(Web应用程序服务器)进行了优化。授权代码流不会将访问令牌公开给资源所有者的浏览器。相反,使用通过浏览器传递的中间“授权代码”来完成授权。...在对受保护的API进行调用之前,必须将此代码交换为访问令牌。 ii)隐性拨款:此拨款类型适用于公共客户。隐式授权流程不适用刷新令牌。...客户端交换其客户端凭据以获取访问令牌。 7.令牌已过期,获取新的访问令牌: 如果访问令牌由于令牌已过期或已被撤销而不再有效,则使用OAuth 2.0访问令牌进行API调用可能会遇到错误。...客户端可以使用刷新令牌(在授权代码交换访问令牌获得)获取新的访问令牌。 8.结论: 这是尝试提供OAuth 2.0过程的概述,并提供获取访问令牌的方法。我希望它有所帮助。 享受整合应用的乐趣!

2.4K30

从0开始构建一个Oauth2Server服务 发起认证请求

虽然这是一个非常好的优化,但它不会阻止您仍然需要处理如果访问令牌在预期时间之前过期 API 调用失败的情况。...要使用刷新令牌,请使用 向服务的令牌端点发出 POST 请求grant_type=refresh_token,并在需要包括刷新令牌客户端凭据。...最安全的选择是授权服务器在每次使用刷新令牌发出一个新的刷新令牌。这是最新的安全最佳当前实践中的建议,它使授权服务器能够检测刷新令牌是否被盗。...当刷新令牌在每次使用后发生变化时,如果授权服务器检测到刷新令牌使用了两次,则意味着它可能已被复制并被Attack者使用,授权服务器可以撤销所有访问令牌相关的刷新令牌立即使用它。...如果刷新令牌因任何原因过期,那么应用程序可以采取的唯一操作是要求用户重新登录,从头开始新的 OAuth 流程,这将向应用程序颁发新的访问令牌刷新令牌

13430

从0开始构建一个Oauth2Server服务 Access Token 访问令牌

不同的选项会带来各种权衡,因此您应该选择最适合您的应用程序需求的选项(或选项组合) 短期访问令牌长期刷新令牌 授予令牌的一种常见方法是结合使用访问令牌刷新令牌,以实现最大的安全性灵活性。...通常,使用此方法的服务会颁发持续数小时到数周不等的访问令牌。当服务发出访问令牌,它还会生成一个永不过期的刷新令牌,并在响应中返回该令牌。(请注意,不能使用隐式授权颁发刷新令牌。)...当访问令牌过期,应用程序可以使用刷新令牌获取新的访问令牌。它可以在幕后完成此操作,无需用户参与,因此对用户来说这是一个无缝的过程。...总之,在以下情况下使用短期访问令牌长期刷新令牌: 你想使用自编码访问令牌 你想限制泄漏访问令牌的风险 您将提供可以对开发人员透明地处理刷新逻辑的 SDK 短期访问令牌,无刷新令牌 如果您想确保用户知道正在访问其帐户的应用程序...这样他们就可以立即开始使用令牌发出 API 请求,而不必担心设置 OAuth 流程以开始测试您的 API

22760

如何正确集成社交登录

当开发人员初次接触 OAuth ,他们通常期望使用从社交 Provider 收到的令牌之一。 收到的令牌通常是 ID 令牌、访问令牌可选的刷新令牌。...OpenID Connect 标准规定,ID 令牌始终处于 JSON Web Token(JWT) 格式。然而,访问令牌刷新令牌通常不是 JWT 。...认证后,可以使用账户链接来确保 API 接收到的访问令牌中的一致身份。如何颁发令牌提供了对令牌格式、声明生命周期的控制。...应用程序或 API 中不需要进行代码更改。 结论 社交 Provider 为管理许多类型应用的登录提供了用户友好的方式。每个用户使用他们不会忘记的熟悉凭证登录,这可以将用户无缝地引导到您的数字服务。...在设计这样的解决方案,最好的方法是从 API 需要正确保护数据访问的角度进行思考。避免将社交 Provider 的 ID 令牌用作 API 凭据。 更重要的是,避免使用外部访问令牌来保护自己的数据。

8610

[安全 】JWT初学者入门指南

(范围声明) 令牌过期您的API应在验证令牌使用此功能。...它被广泛用于许多移动Web应用程序。OAuth 2.0没有指定令牌格式,但JWT正在迅速成为业界的事实标准。 在OAuth范例中,有两种令牌类型:访问刷新令牌。...刷新令牌具有设置的到期时间,允许无限制地使用,直到达到该到期点。AccessRefresh Tokens都具有内置安全性(签名)以防止篡改,并且仅在特定持续时间内有效。...Stormpath目前支持三种OAuth的授权类型: 密码授予类型:提供基于用户名密码获取访问令牌的功能 刷新授权类型:提供基于特殊刷新令牌生成另一个访问令牌的功能 客户端凭据授权类型:提供为访问令牌交换...以下是我们团队的一些进一步资源: 单页应用程序的令牌认证 使用Spring BootStormpath进行OAuth令牌管理 Java应用程序的令牌认证 使用JSON Web令牌构建安全的用户界面 OAuth

4K30

UAA 概念

ID and refresh tokens:身份刷新令牌 具有两个标识区域等效于建立两个独立的 UAA 部署,但使用的资源较少。...外部 IDP 这些提供程序的属性都是只读的。对外部用户帐户的任何更改都应直接在外部 IDP 上执行。每次用户通过外部 IDP 进行身份验证,都会刷新这些只读属性。...此通用唯一标识符是在用户创建随机生成的,并且不会更改。它保证在 UAA 部署中的所有标识区域中都是唯一的。user.id 是一个 128 位数字,格式为 UUID。...如果客户端可以脱机验证令牌,则客户端也可以这样做。刷新令牌有效性是从创建令牌令牌到期的秒数。 7. 选择范围权限 在构造访问令牌,客户端范围用于填充范围声明,其中客户端代表用户进行操作。...token_salt 令牌,甚至是无状态的 JWT,都可以撤销。将令牌传递到 /introspect 端点,已撤消的令牌不会通过 UAA 令牌验证。如果客户的机密已更改,UAA 将撤销令牌

6K22

OAuth 2.0 的探险之旅

•confidential 对于一个普通的web站点来说,虽然用户可以访问到前端页面, 但是数据都来自服务器的后端api服务, 前端只是获取授权码code, 通过 code 换取access_token...访问令牌不同的是, 授权服务器颁发访问令牌是必须的, 而颁发刷新令牌则是可选的, 并且访问令牌还会资源服务器交互, 而刷新令牌授权服务器交互。...(B) 授权服务器对客户端进行身份验证并验证授权许可,如果有效,则颁发访问令牌刷新令牌。 (C) 客户端请求受保护资源并提供访问令牌。...(G) 客户端发起获取刷新令牌的请求, 同时要带上当前的刷新令牌。 (H) 授权服务器对客户端进行认证并验证刷新令牌,如果有效,则发出新的访问令牌一个可选的新的刷新令牌。..., 授权服务器验证通过后, 返回访问令牌可选的刷新令牌, 这种模式的特点是, 用户客户端是高度信任的。

1.6K10

从0开始构建一个Oauth2Server服务 单页应用

下图说明了一个示例,其中用户与浏览器交互,浏览器直接向服务发出 API 请求。首先从客户端下载 Javascript HTML 源代码后,浏览器会直接向服务发出 API 请求。...在这种情况下,应用程序的服务器永远不会向服务发出 API 请求,因为一切都直接在浏览器中处理。 授权 授权代码是一个临时代码,客户端将用它来交换访问令牌。...也几乎不需要刷新令牌,因为 JavaScript 应用程序只会在用户积极使用浏览器时运行,因此它们可以在需要重定向到授权服务器以获取新的访问令牌。...具体来说,刷新令牌必须仅对一次使用有效,并且授权服务器必须在每次发布新的访问令牌以响应刷新令牌授予发布一个新的刷新令牌。...这为授权服务器提供了一种检测刷新令牌是否已被攻Attack复制使用的方法,因为在应用程序的正常运行中,刷新令牌只会被使用一次。

18230

2 个给使用 Fedora 工作站的音乐爱好者的新应用

使用 Last.fm 或 Libre.fm,请参阅其上游文档。 要将播放信息提交到 ListenBrainz 服务器,你需要有一个 ListenBrainz API 令牌。...如果有了令牌,请运行此命令以使用 ListenBrainz API 令牌进行身份验证: $ mpris-scrobbler-signon token listenbrainz Token for listenbrainz.org...以下是如何在命令行中安装、使用它,以及为 i3 窗口管理器创建键绑定的方法。 安装使用 playerctl playerctl 在 Fedora 28 或更高版本中可用。...客户端播放或暂停当前播放的内容: playerctl -p spotify play-pause 在 i3wm 中创建 playerctl 键绑定 你是否使用窗口管理器,比如 i3 窗口管理器?...也可以通过使用 MusicBrainz Picard 对音乐库进行排序组织,为你的混乱的音乐库带来秩序。

92920

Django(75)django-rest-framework-simplejwt「建议收藏」

并且借鉴了DRF中的另一个JSON web token库django-rest-framework-jwt 安装 1.使用以下pip命令安装 pip install djangorestframework-simplejwt...'rest_framework_simplejwt', ... ] 验证 最后我们使用接口工具验证simple jwt是否能正常工作,访问http://127.0.0.1:8000/api/token.../ 可以看到返回了accessrefresh两个token access:默认5分钟的有效期 refresh:当access过期了,就需要传入refresh字段,重新刷新token,访问http...'AUDIENCE': None, # 设置为None,此字段将从token中排除,并且不会进行验证 'ISSUER': None, # 设置为None,此字段将从token中排除...,并且不会进行验证 'JWK_URL': None, # 设置为None,此字段将从token中排除,并且在验证期间不使用 'LEEWAY': 0, # 用来给到期时间留一些余地

1.6K40

8种至关重要OAuth API授权流与能力

由于这是针对公共客户端的,因此将不会发出刷新令牌。这意味着只有让用户参与才能接收新的访问令牌。 白小白: 实际上隐式流在很多文档中也称为简化流,相对于认证码授权流,少了第一个获取CODE的过程。...此流中不发出刷新令牌,因为客户端无论如何都可以使用其凭据检索新的访问令牌。 白小白: 所谓客户端所需要的凭据,就微信公众平台的场景来说,就是APPIDSECRET。...使用ROPC必须小心谨慎。一个例子可以是企业级桌面应用程序,这类应用不经常更新,但仍需要访问API平台。...所谓遗留系统的应用场景,比较典型的是你升级后端API服务的验证架构,在不改动旧版客户端的情况下,使用用户名密码来获得令牌是最方便的,此时就需要使用ROPC方式。 ?...2、如果某一个当前有效的刷新令牌被撤销了,则所有访问刷新令牌都会撤销,也就是这一次代理都被撤销 3、如果通过某一个刷新令牌X获得了新的访问令牌新的刷新令牌

1.6K10

Spotify是如何调整CDN服务来实现闪电般的快速流媒体体验

Spotify使用的AkamaiAWS的CDN解决方案,并将其用于音频流等关键业务内容分发。它们的表现十分良好,并且在经过优化之后实现了低延迟高带宽。...将APIVCL整合在一起 我们的开发人员使用Fastly的可定制边缘计算语言VCL (Varnish配置语言)来执行智能缓存,将应用程序逻辑推送到网络边缘,并根据位置、语言和设备类型来定制用户的体验。...基于Spotify的精神,我们需要定制CDN功能来处理错误重定向以及令牌识别等任务。...请求CDN审核的自助服务工具 我们开发了一个SquadCDN来提供内部部署前的审查服务,在这里就使用到了Fastly的APIVCL。...一路走来的教训 当CDN团队为Spotify研发开拓新的领域,他们总结了许多帮助他们到达目标的技巧最佳实践,比如: 内部测试是关键。

1.2K10

你确定懂OAuth 2.0的三方软件受保护资源服务?

大家也很熟悉,我要使用xx来对我公众号里的文章排版,我首先访问的 一定是xx软件,而不是授权服务&受保护资源服务。 但xx需要我的授权,只有授权服务才能允许我的操作。...就需要刷新令牌刷新令牌需注意何时决定使用刷新令牌。 在xx排版软件收到访问令牌同时,也会收到访问令牌的过期时间 expires_in。...即比如xx访问我的公众号文章,突然收到一个访问令牌失效的响应,此时xx立即使用 refresh_token 请求一个访问令牌,以便继续代表我使用我的这些文章数据。...刷新令牌是一次性的,使用后就失效,但它的有效期会比访问令牌长。 若刷新令牌也过期呢? 需将刷新令牌访问令牌都放弃,几乎回到系统初始状态,只能让用户重授权。...在互联网上的系统之间的通信,基本都是以 Web API 为载体的形式进行。授权服务最终保护的就是这些 API。在构建受保护资源服务,除检查令牌的合法性,更关键是权限范围。校验权限的占比大。

1.2K10

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券