java - 为 SPA 应用程序集成 openid 连接的最佳方式
问题描述
我需要为 SPA 应用程序集成 OpenId 连接,而 URL 中没有令牌 ID,我们可以这样做吗?
解决方案
我假设您对在 URL 中使用 ID 令牌有一些安全问题...
在这种情况下,我可以看到两种降低风险的方法:
确保 OIDC 提供程序使用 URL 片段而不是通过查询字符串重定向到您的应用程序。这可确保参数不会发送到它们可能最终出现在日志中的服务器,并且应该已经是提供者对隐式流的默认响应模式。如果需要,您可以使用
response_mode=fragment
它来强制执行它。您可以注册一个“公共”客户端,但仍使用授权代码流从令牌端点获取 ID 令牌。在这种情况下,您不会
client_secret
向令牌端点提供 a(因为客户端是公共的)。您也可以考虑在此流程中使用PKCE。
推荐阅读
- java - 在另一个 Line 组件上绘制自定义 Line 组件,我做错了什么?
- c# - 使用 Vector2.MoveTowards 缓入和缓出
- android - 在其他地方点击时,TextView 的选择弹出菜单没有关闭
- r - R Shiny:设置反应滤波器的默认值
- javascript - 如何仅从带有“RANKED_SOLO_5x5”而不是“RANKED_FLEX_SR”的json部分获取信息(“tier”、“rank”、“leaguePoints”)
- reactjs - 更新与反应查询中的单个突变相关的多个查询的缓存数据?
- vba - 访问子窗体 SourceObject 设置为使用 SQL 更新的查询 - 列顺序和宽度?
- android - Jetpack Compose TextField 捕获键盘 Enter-input
- javascript - 降低条件语句复杂度的方法
- javascript - 我如何使用 Vue.js 制作库(Feat. store,router)