add debugging logs in configurable login provider
This commit is contained in:
parent
0cd20605f0
commit
729e6af733
|
@ -2,6 +2,8 @@ package eu.eudat.logic.security.customproviders.ConfigurableProvider;
|
||||||
|
|
||||||
import eu.eudat.logic.security.customproviders.ConfigurableProvider.entities.oauth2.Oauth2ConfigurableProviderUserSettings;
|
import eu.eudat.logic.security.customproviders.ConfigurableProvider.entities.oauth2.Oauth2ConfigurableProviderUserSettings;
|
||||||
import eu.eudat.logic.security.validators.configurableProvider.helpers.ConfigurableProviderResponseToken;
|
import eu.eudat.logic.security.validators.configurableProvider.helpers.ConfigurableProviderResponseToken;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.http.HttpEntity;
|
import org.springframework.http.HttpEntity;
|
||||||
import org.springframework.http.HttpHeaders;
|
import org.springframework.http.HttpHeaders;
|
||||||
import org.springframework.http.HttpMethod;
|
import org.springframework.http.HttpMethod;
|
||||||
|
@ -11,10 +13,12 @@ import org.springframework.util.LinkedMultiValueMap;
|
||||||
import org.springframework.util.MultiValueMap;
|
import org.springframework.util.MultiValueMap;
|
||||||
import org.springframework.web.client.RestTemplate;
|
import org.springframework.web.client.RestTemplate;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@Component("configurableProviderCustomProvider")
|
@Component("configurableProviderCustomProvider")
|
||||||
public class ConfigurableProviderCustomProviderImpl implements ConfigurableProviderCustomProvider {
|
public class ConfigurableProviderCustomProviderImpl implements ConfigurableProviderCustomProvider {
|
||||||
|
private static final Logger logger = LoggerFactory.getLogger(ConfigurableProviderCustomProviderImpl.class);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ConfigurableProviderResponseToken getAccessToken(String code, String redirectUri, String clientId, String clientSecret, String accessTokenUrl,
|
public ConfigurableProviderResponseToken getAccessToken(String code, String redirectUri, String clientId, String clientSecret, String accessTokenUrl,
|
||||||
|
@ -32,7 +36,22 @@ public class ConfigurableProviderCustomProviderImpl implements ConfigurableProvi
|
||||||
map.add("client_secret", clientSecret);
|
map.add("client_secret", clientSecret);
|
||||||
HttpEntity<MultiValueMap<String, String>> request = new HttpEntity<>(map, headers);
|
HttpEntity<MultiValueMap<String, String>> request = new HttpEntity<>(map, headers);
|
||||||
|
|
||||||
|
logger.debug("----------------------------------------------");
|
||||||
|
logger.debug("Sending request to access token url: " + accessTokenUrl);
|
||||||
|
logger.debug("The request sent is: ");
|
||||||
|
map.forEach((key, value) -> logger.debug(key + ": " + value));
|
||||||
|
logger.debug("----------------------------------------------");
|
||||||
|
|
||||||
Map<String, Object> values = template.postForObject(accessTokenUrl, request, Map.class);
|
Map<String, Object> values = template.postForObject(accessTokenUrl, request, Map.class);
|
||||||
|
try {
|
||||||
|
logger.debug("----------------------------------------------");
|
||||||
|
logger.debug("Returned values from access token url request:");
|
||||||
|
values.forEach((key, value) -> logger.debug(key + ": " + value));
|
||||||
|
logger.debug("----------------------------------------------");
|
||||||
|
} catch (NullPointerException e){
|
||||||
|
logger.error(e.getMessage(), e);
|
||||||
|
values = new HashMap<>();
|
||||||
|
}
|
||||||
ConfigurableProviderResponseToken responseToken = new ConfigurableProviderResponseToken();
|
ConfigurableProviderResponseToken responseToken = new ConfigurableProviderResponseToken();
|
||||||
responseToken.setAccessToken((String) values.get(access_token));
|
responseToken.setAccessToken((String) values.get(access_token));
|
||||||
if (expires_in != null && !expires_in.isEmpty()) {
|
if (expires_in != null && !expires_in.isEmpty()) {
|
||||||
|
@ -48,7 +67,26 @@ public class ConfigurableProviderCustomProviderImpl implements ConfigurableProvi
|
||||||
HttpHeaders headers = this.createBearerAuthHeaders(accessToken);
|
HttpHeaders headers = this.createBearerAuthHeaders(accessToken);
|
||||||
HttpEntity<String> entity = new HttpEntity<>(headers);
|
HttpEntity<String> entity = new HttpEntity<>(headers);
|
||||||
|
|
||||||
|
logger.debug("----------------------------------------------");
|
||||||
|
logger.debug("Sending request to user info url: " + user.getUser_info_url());
|
||||||
|
logger.debug("Using access token: " + accessToken);
|
||||||
|
logger.debug("----------------------------------------------");
|
||||||
|
|
||||||
Map<String, Object> values = restTemplate.exchange(user.getUser_info_url(), HttpMethod.GET, entity, Map.class).getBody();
|
Map<String, Object> values = restTemplate.exchange(user.getUser_info_url(), HttpMethod.GET, entity, Map.class).getBody();
|
||||||
|
try {
|
||||||
|
logger.debug("----------------------------------------------");
|
||||||
|
logger.debug("Returned values from user info url request:");
|
||||||
|
values.forEach((key, value) -> logger.debug(key + ": " + value));
|
||||||
|
logger.debug("-------------------------------------------");
|
||||||
|
} catch (NullPointerException e){
|
||||||
|
logger.error(e.getMessage(), e);
|
||||||
|
values = new HashMap<>();
|
||||||
|
}
|
||||||
|
|
||||||
|
logger.debug("----------------------------------------------");
|
||||||
|
logger.debug("Searching in user info response for these fields: " + user.getId() + ", " + user.getName() + ", " + user.getEmail());
|
||||||
|
logger.debug("----------------------------------------------");
|
||||||
|
|
||||||
return new ConfigurableProviderUser().getConfigurableProviderUser(values, user);
|
return new ConfigurableProviderUser().getConfigurableProviderUser(values, user);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue