Bab*_*bug 5 security oauth spring-security linkedin spring-boot
Login with Linkedin在Spring boot 2.1.6.RELEASE使用 Spring OAuth2的项目中需要帮助。Java 版本是 11
Google 和 Github 非常简单,并且在同一个项目中工作。我在 Spring-Social 中尝试了几个示例代码,但由于不同的 Spring 引导版本而失败。
下面的 application.properties 不起作用(也尝试过client-authentication-method=post),并且在从linkedin 检索到授权码后被重定向回来(授权码是有效的,我可以使用它从 Postman 获取访问令牌)。
spring.security.oauth2.client.registration.linkedin.provider=linkedin
spring.security.oauth2.client.registration.linkedin.client-name=Linkedin
spring.security.oauth2.client.registration.linkedin.client-id=******
spring.security.oauth2.client.registration.linkedin.client-secret=******
spring.security.oauth2.client.registration.linkedin.redirect-uri=*****
spring.security.oauth2.client.registration.linkedin.authorization-grant-type=authorization_code
spring.security.oauth2.client.registration.linkedin.client-authentication-method=form
spring.security.oauth2.client.registration.linkedin.scope=r_emailaddress,r_liteprofile
spring.security.oauth2.client.provider.linkedin.authorization-uri=https://www.linkedin.com/oauth/v2/authorization
spring.security.oauth2.client.provider.linkedin.token-uri=https://www.linkedin.com/oauth/v2/accessToken
spring.security.oauth2.client.provider.linkedin.user-info-uri=https://api.linkedin.com/v2/me
spring.security.oauth2.client.provider.linkedin.user-info-authentication-method=post
Run Code Online (Sandbox Code Playgroud)
SecurityConfig 类(也试过没有antMatchers):
@Configuration
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests().antMatchers("*linkedin*").permitAll()
.anyRequest().authenticated()
.and()
.csrf().disable()
.oauth2Login();
}
Run Code Online (Sandbox Code Playgroud)
没有错误,在code查询参数与 一起返回到 Spring 后state,它被重定向回 Spring 登录。
谢谢
我的工作配置:
spring:
security:
oauth2:
client:
registration:
linkedin:
client-id: ????
client-secret: ????
scope: r_liteprofile, r_emailaddress
authorization-grant-type: authorization_code
redirect-uri: "{baseUrl}/login/oauth2/code/{registrationId}"
client-name: LinkedIn
client-authentication-method: post
provider:
linkedin:
authorization-uri: https://www.linkedin.com/oauth/v2/authorization
token-uri: https://www.linkedin.com/uas/oauth2/accessToken
user-info-uri: https://api.linkedin.com/v2/me
jwk-set-uri:
user-name-attribute: id
Run Code Online (Sandbox Code Playgroud)
最新春季:
org.springframework.security:spring-security-oauth2-client:5.2.2.RELEASE
| 归档时间: |
|
| 查看次数: |
1332 次 |
| 最近记录: |