java集成openid connect for SPA应用程序的最佳方法 3 月 Questions & Answers 247 我需要集成OpenId connect for SPA应用程序,URL中没有令牌id,我们可以这样做吗
# 1 楼答案 我假设您对URL中的ID令牌有一些安全顾虑 在这种情况下,我可以看到两种降低风险的方法: 确保OIDC提供程序使用URL片段而不是通过查询字符串重定向到您的应用程序。这确保了参数不会被发送到可能会在日志中结束的服务器,并且应该已经是隐式流的提供者的默认响应模式。如果需要,您可以使用response_mode=fragment强制执行它 您可以注册一个“公共”客户端,但仍然使用授权代码流从令牌端点获取ID令牌。在这种情况下,您不向令牌端点提供client_secret(因为客户端是公共的)。您也可以考虑在这个流中使用PKCE。
# 1 楼答案
我假设您对URL中的ID令牌有一些安全顾虑
在这种情况下,我可以看到两种降低风险的方法:
确保OIDC提供程序使用URL片段而不是通过查询字符串重定向到您的应用程序。这确保了参数不会被发送到可能会在日志中结束的服务器,并且应该已经是隐式流的提供者的默认响应模式。如果需要,您可以使用
response_mode=fragment
强制执行它您可以注册一个“公共”客户端,但仍然使用授权代码流从令牌端点获取ID令牌。在这种情况下,您不向令牌端点提供
client_secret
(因为客户端是公共的)。您也可以考虑在这个流中使用PKCE。