当前位置: 首页 > 知识库问答 >
问题:

如何使用Google OAuth 2.0 for Web服务器应用程序向Google ID_Token添加自定义声明

楚俊逸
2023-03-14

https://accounts.google.com/o/oauth2/v2/auth?scope=https%3a//www.googleapis.com/auth/drive.metadata.readonly&access_type=offline&include_granted_scopes=true&response_type=code&state=state_parameter_passthrough_value&redirect_uri=https%3a//oauth2.example.com/code&client_id=client_id。

让JWT使用,

POST/token http/1.1 host:oauth2.googleapis.com content-type:application/x-www-form-urlencoded

现在我解码的id_token看起来像是,

{
  "alg": "RS256",
  "kid": "b63ee0be093d9bc312d958c9966d21f0c8f6bbbb",
  "typ": "JWT"
}.{
  "iss": "https://accounts.google.com",
  "azp": "640523414127-4eaptj129qb79v33pm0il71r4f506ts9.apps.googleusercontent.com",
  "aud": "640523414127-4eaptj129qb79v33pm0il71r4f506ts9.apps.googleusercontent.com",
  "sub": "118185565008542236388",
  "email": "mail_ID@gmail.com",
  "email_verified": true,
  "at_hash": "K_sS85PI2ptkOIrUoWcM7Q",
  "iat": 1595931406,
  "exp": 1595935006
}.[Signature]

最后,解码的id_token应该是这样的,

{
  "alg": "RS256",
  "kid": "b63ee0be093d9bc312d958c9966d21f0c8f6bbbb",
  "typ": "JWT"
}.{
  "iss": "https://accounts.google.com",
  "azp": "640523414127-4eaptj129qb79v33pm0il71r4f506ts9.apps.googleusercontent.com",
  "aud": "640523414127-4eaptj129qb79v33pm0il71r4f506ts9.apps.googleusercontent.com",
  "sub": "118185565008542236388",
  "email": "mail_ID@gmail.com",
  "email_verified": true,
  "at_hash": "K_sS85PI2ptkOIrUoWcM7Q",
  "iat": 1595931406,
  "exp": 1595935006,
**"policy": "readWrite"**
}.[Signature]

共有1个答案

索锐藻
2023-03-14
admin.auth().setCustomUserClaims(uid, {admin: true})
 类似资料:
  • Google App Engine现在通过新的第二代标准环境支持Go 1.11。在将较旧的标准环境应用程序转换为第二代应用程序时,如何将来自应用程序引擎基础结构的跟踪信息与我使用OpenCensus添加到应用程序中的自定义跟踪相结合并不明显。 尽管我已经创建了一个堆栈驱动程序导出器并注册了跟踪,但我没有在附加到入站请求的堆栈驱动程序控制台中看到自定义跟踪信息。

  • Appium 的 iOS 版本的后端用的是Facebook's WebDriverAgent。该后端是基于苹果公司的 XCTest 框架,所以也有所有XCTest 框架已知的问题。其中有些问题我们正在设法解决,有一些在现阶段可能无法解决。本文中描述的方法已经能够使您完全掌握在设备上如何构建、管理和运行WDA。通过这种方式,您可以在CI环境中对您的自动化测试进行微调,并使其在长期运行的情况下更加稳定

  • 我一直在使用引导表(http://bootstrap-table.wenzhixin.net.cn/)在typescript项目中成功完成了一段时间。 不幸的是,由于一个表返回的数据量很大,我想切换到使用该表的服务器端分页。 在大多数情况下,这似乎相当简单,但我需要该表将自定义请求头传递给服务器,但看不到如何做到这一点。 当前的标头如下,但我需要获得引导表来添加包含授权令牌的授权标头。 http:

  • 我的团队正在使用Maven进行构建,我得到了一些Jars作为软件正在使用的工具。发送Jars的公司是非Maven商店,所以他们只是发送了原始的. jar文件。在我的本地代码中,我使用这种风格为这些Jars创建了一些Maven依赖项: 在所有的开发中,我们需要加载大约25个这样的定制jar文件。其他开发人员可能没有我这样的文件,这些MVN POM被签入源代码控制,以便在开发之外的其他环境中使用。 有

  • 我使用的是Spring Boot 2.0(利用Spring Security 5.0)。我正在尝试向WebSecurityConfigureAdapter子类中的AuthenticationManager添加自定义AuthenticationProvider。如果我重写configure(AuthenticationManagerBuilder)方法来提供我的新提供者,那么我不知道如何将Authe

  • 注意:用户界面已经在 Dreamweaver CC 和更高版本中做了简化。因此,您可能在 Dreamweaver CC 和更高版本中找不到本文中描述的一些选项。有关详细信息,请参阅此文章。 关于自定义服务器行为 Dreamweaver 附带有一组内置的服务器行为,从而让您可以轻松地向站点添加动态功能。您可以扩展 Dreamweaver 功能,方式是通过创建满足您的开发需求的服务器行为,或者通过从