我正在使用 IDP 平台(这里是 AWS Cognito,但可能是 Auth0、OKTA 或 Keycloak),我想知道为什么我不鼓励使用它ID Token作为授权令牌。
更具体地说,我不会使用将用户授权委托给第三方应用程序的资源服务器。我的 IDP 将允许我在不同的应用程序上 SSO 所有用户。这里没有授予的范围,只有每个服务将用于授予或拒绝对资源(如电子邮件、用户 ID 或角色)的访问的身份验证声明。
我知道我可以为我的应用程序提供id token,然后为我的用户创建一些会话。id token鉴于可以在每个应用程序的后端检查其签名,为什么我不应该将其本身用作无状态会话令牌?
如果我应该使用access token-id token我可以用角色替换范围吗?或者我应该如何理解非委托上下文中的范围(“用户自己使用应用程序,而不给予许可”与“用户将所有范围给予 SPA 前端,它本身就是一个应用程序”)
顺便说一句,我正在通过前端的代码 PKCE 流恢复令牌。
该问题已在其他地方问过,但没有回答。谷歌浏览器认为我的输入
<input name="firstName" id="firstName" type="text" placeholder="John" font-size="16" class="sc-fznKkj XyZMK">
是一张信用卡,如自动完成字段检查器(实验标志 thingy)和提供已保存信用卡的自动完成所示。
它也在 lastName 字段和另一个数字类型字段以另一种形式执行此操作。
我不明白的是,它只是在我们的开发环境中按预期工作,并且只在暂存中变得疯狂(两者几乎都是相同的部署过程,相同的 s3 + cloudfront 托管,相同构建的相同代码)。
有什么线索吗?
它变得更奇怪:将name字段更改为first-name而不是firstName修复它。我不需要更改两个输入名称,只有第一个更改。但是我应该可以随意命名我的领域,不是吗?