- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用的是 IDP 平台(这里是 AWS Cognito,但可以是 Auth0、OKTA 或 Keycloak),我想知道为什么我不鼓励使用 ID Token
作为授权 token 。
更具体地说,我不会使用具有从用户到第三方应用程序的授权委托(delegate)的资源服务器。我的 IDP 只会让我在我的不同应用程序上对所有用户进行 SSO。这里没有授予的范围,只有每个服务将用来授予或拒绝访问资源(如电子邮件、用户 ID 或角色)的身份验证声明。
我知道我可以向我的申请提供 id token
然后为我的用户创建一些 session 。为什么我不应该使用 id token
本身作为无状态 session token ,因为可以在每个应用程序的后端检查其签名?
如果我应该使用 access token
过id token
- 我可以用角色替换作用域吗?或者我应该如何理解非委托(delegate)上下文中的范围(“用户自己使用应用程序,而不是授予权限”与“用户将所有范围授予 SPA 前端,它本身就是一个应用程序”)
顺便说一下,我是通过前端的代码PKCE流程来恢复 token 的。
最佳答案
ID token 仅包含有关用户以及用户如何进行身份验证的详细信息。所以它非常适合与用户创建更持久的 cookie session 。和 ID-token 的默认生命周期也很短,比如几分钟。您通常会在建立 session 后丢弃 id-token。您永远不应该将 ID token 传递给其他服务。
访问 token 旨在让您访问 token 适用的 API。
当用户登录时,您要求访问某些范围和用户选择(同意)的范围,然后包含在访问 token 中(作为范围和受众声明)。
从理论上讲,您可以将 ID token 传递给 API,而不是它应该如何工作。
见 this和 this更多细节:
关于authentication - 为什么我不应该在 IDP 上下文中使用 IdToken 作为不记名 token ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63901860/
我正在尝试按照此处引用的所有步骤执行 Spring Security SAML 示例应用程序:http://docs.spring.io/autorepo/docs/spring-security-s
我的意思是,我可以在不将服务提供商注册到 IDp 的情况下向 IDp 发送 SAML 请求吗?我的雇主希望与服务提供商和身份提供商一起使用 JAVA 开发一个示例应用程序,因此服务提供商将向身份提供商
我们正在使用 React 构建 SPA。为了让用户登录,我们使用 Azure AD B2C 作为 Azure 租户中的一些用户。但我们希望扩大用户群并为另一个 Idp 管理的另一组用户提供访问权限。因
第 3 方 IdP(不是 Microsoft 产品)已存在并管理多个域中的数百或数千个用户。该 IdP 必须对这些用户保持权威。我不希望 Azure AD (AAD) 因获取所有这些用户的所有信息的副
我们在我的应用程序中构建 SSO 以使用 SAML 2.0 进行登录。在这里,我想构建 IDP 发起的用于注销的 SLO。 问题 1.我们需要在IDP中进行哪些配置来启动SLO? 如何使用 SAML
我正在研究 SSO 技术,尤其是 SAML 2.0,并且我看到了 IdP、IdP Lite、SP 和 SP Lite 的操作模式。我能找到的关于这些“精简”模式的唯一引用是在 SAML 2.0 spe
我想使用 Keycloak 设置 Google 联盟,但仅限于我公司的授权用户。 设置 Google 联盟允许任何 Google 帐户登录。 我查看了 Keycloak 上的身份验证流程,但一直找不到
谁能告诉我如何为 IDP 发起的 SSO 连接传递 RelayState。我们有 SSO 工作,但想要深层链接到服务提供商的应用程序中的页面。他们已经指示我们在 RelayState 上通过,但我不知
我正在使用 ITfoxtec Identity SAML2以 Keycloak 作为 IdP 的库。当请求 IdP 元数据信息时,ITfoxtec Identity SAML2 库似乎无法识别 标签,
我们计划构建自己的 SAML IDP。我有几个问题: 构建一个有意义吗? 如果是,方法是什么?我没有看到任何用于 SAML 的 Java 库。无法使用 spring-security-saml,因为它
具有“POST”绑定(bind)的 SAML 2.0:服务提供商是否可以通过任何方式要求 IdP 针对特定请求重新进行用户身份验证?我的意思是,第一次 Web 用户输入登录名/密码时,它会在浏览器内存
我在本地主机上安装了 Shibboleth 服务提供程序。我想连接到 shibboleth idp。 Error Message: No peer endpoint available to whic
我正在使用具有单点注销配置文件的 SAML2.0。当 SP 发起注销时,请求发起者 SP 会向 Ping(身份提供者)发送 LogoutRequest,Ping 向 SP 发送 LogoutRespo
我一直在尝试用java实现WEB SSO服务提供者。我正在使用 Shibboleth 身份提供商。一切工作正常,直到身份验证步骤,我成功地为用户创建 session /设置 cookie。但是,当我尝
我使用 WSO2 作为 IDP,我的 SP 只是一个使用 spring 框架部署在 tomcat 中的简单 Web 应用程序。 我想从 SP(网络应用程序)获取用户名密码,然后当我点击登录按钮时,我想
我正在尝试解密 IDP 在工件解析中发送的加密断言。但是我得到一个错误: 17:01:55.734 [http-8443-2] ERROR o.o.x.e.Decrypter - Error decr
我们有一个应用程序在云中运行良好,谷歌和 Github 作为 IDP。 尝试使用模拟器在本地工作时。调用 createSessionCookie失败:FirebaseAuthError: There
我正在使用 SP 端的 Kentor Authservices 和 IDP 端的 Shibboleth clone 解决与无限重定向相关的问题。我的问题是这可能是什么原因造成的,我如何拦截并记录 Ke
我有一个关于 SAML2 的基本问题。典型流程是用户从 protected SP 请求资源。 SP 检查用户是否有安全上下文(比如 cookie ?),如果没有找到安全上下文,它会构造 AuthReq
我已在 Azure AD 中创建了应用程序,按照以下步骤操作: 1 - 登录 Azure AD,单击“应用程序”选项卡,“添加”按钮。 2 - 选择“添加我的组织正在开发的应用程序”。 3 - 选择“
我是一名优秀的程序员,十分优秀!