0
我有一个基于spring安全oauth2的应用程序,配置了一个JDBC客户端存储。根据OAuth2规范,客户机密只能在客户机 - 服务器连接值得信任时才使用,当然不能从Web应用程序 - 客户机机密可以从中提取。春季安全 - 访问令牌没有client_secret在参数
所以问题是 - 我们如何配置,让/oauth/token
请求与授予类型为“密码”产生一个访问令牌,在POST参数中没有client_secret
键?
这是我的授权服务器配置。我会说很基本。
<sec:http pattern="/token" create-session="stateless" use-expressions="true" authentication-manager-ref="authenticationManager">
<sec:headers>
<sec:frame-options policy="DENY" />
<sec:hsts />
</sec:headers>
<sec:csrf disabled="true" />
<sec:anonymous enabled="false" />
<sec:http-basic entry-point-ref="clientAuthenticationEntryPoint" />
<sec:custom-filter ref="clientCredentialsTokenEndpointFilter" before="BASIC_AUTH_FILTER" />
<sec:access-denied-handler ref="oauthAccessDeniedHandler" />
</sec:http>
我猜你是混淆2条腿的流量(隐性补助流)意味着基于浏览器的客户端不涉及客户端密钥,但不是密码流。 – dvsakgec