diff --git a/src/main/java/org/olat/login/oauth/spi/ADFSApi.java b/src/main/java/org/olat/login/oauth/spi/ADFSApi.java index 6bcf60de12e66ba8ef885ab2314aefba995b5f55..fb58c3545eeaff6ba9aec5dcbdf7c61b093f8d40 100644 --- a/src/main/java/org/olat/login/oauth/spi/ADFSApi.java +++ b/src/main/java/org/olat/login/oauth/spi/ADFSApi.java @@ -24,6 +24,7 @@ import java.util.concurrent.ExecutionException; import org.olat.core.CoreSpringFactory; import org.olat.core.helpers.Settings; +import org.olat.core.util.StringHelper; import org.olat.login.oauth.OAuthLoginModule; import com.github.scribejava.core.builder.api.DefaultApi20; @@ -117,7 +118,9 @@ public class ADFSApi extends DefaultApi20 { throws InterruptedException, ExecutionException, IOException { OAuthRequest request = new OAuthRequest(Verb.POST, api.getAccessTokenEndpoint()); request.addBodyParameter(OAuthConstants.CLIENT_ID, getApiKey()); - request.addBodyParameter(OAuthConstants.CLIENT_SECRET, getApiSecret()); + if(StringHelper.containsNonWhitespace(getApiSecret())) { + request.addBodyParameter(OAuthConstants.CLIENT_SECRET, getApiSecret()); + } request.addBodyParameter(OAuthConstants.CODE, code); request.addBodyParameter(OAuthConstants.REDIRECT_URI, getCallback()); request.addBodyParameter(GRANT_TYPE, GRANT_TYPE_AUTHORIZATION_CODE);