Как предоставить доступ клиенту, который отправляет сообщения в webhook при использовании Oauth2? - PullRequest
0 голосов
/ 26 октября 2018

Я хочу предоставить доступ клиенту, который отправляет запросы на мой webhook.

Вот как настроен мой Oauth2:

@Configuration
@EnableAuthorizationServer
public class AuthorizationServerConfig extends AuthorizationServerConfigurerAdapter {

    public static final String CLIENT_ID = "myFirstClient";
    @Autowired
    private TokenStore tokenStore;

    @Autowired
    private UserApprovalHandler userApprovalHandler;

    @Autowired
    @Qualifier("authenticationManagerBean")
    private AuthenticationManager authenticationManager;

    @Override
    public void configure(ClientDetailsServiceConfigurer clients) throws Exception {

        clients.inMemory()
                .withClient(CLIENT_ID)
                .authorizedGrantTypes("client_credentials", "refresh_token", "implicit")
                .authorities("ROLE_CLIENT", "ROLE_TRUSTED_CLIENT")
                .scopes("read", "write", "trust")
                .secret("secret")
                .accessTokenValiditySeconds(300).//Access token is only valid for 5 minutes.
                refreshTokenValiditySeconds(600);//Refresh token is only valid for 10 minutes.
    }

    @Override
    public void configure(AuthorizationServerEndpointsConfigurer endpoints) throws Exception {
        endpoints.tokenStore(tokenStore).userApprovalHandler(userApprovalHandler)
                .authenticationManager(authenticationManager);
    }

}

Когда я получаю запросы от определенного домена, мне не нужен токен доступа от них.

Это конечная точка, когда клиент отправляет запросы:

@PostMapping(value = "/verify/webhooks/checks/completed")
    public ResponseEntity checkCompleted(@RequestBody String payload) {

}

Ответ 401, так как у клиента нет токена доступа, потому что это сторонний API.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...