keycloak-aplcache

Merge pull request #953 from pedroigor/master [KEYCLOAK-883]

2/8/2015 10:01:59 PM

Details

diff --git a/services/src/main/java/org/keycloak/protocol/oidc/OpenIDConnectService.java b/services/src/main/java/org/keycloak/protocol/oidc/OpenIDConnectService.java
index d6f79dd..da7d190 100755
--- a/services/src/main/java/org/keycloak/protocol/oidc/OpenIDConnectService.java
+++ b/services/src/main/java/org/keycloak/protocol/oidc/OpenIDConnectService.java
@@ -867,16 +867,6 @@ public class OpenIDConnectService {
         Response response = pageInitializer.processInput();
         if (response != null) return response;
         ClientSessionModel clientSession = pageInitializer.clientSession;
-
-
-        response = authManager.checkNonFormAuthentication(session, clientSession, realm, uriInfo, request, clientConnection, headers, event);
-        if (response != null) return response;
-
-        if (prompt != null && prompt.equals("none")) {
-            OpenIDConnect oauth = new OpenIDConnect(session, realm, uriInfo);
-            return oauth.cancelLogin(clientSession);
-        }
-
         String accessCode = new ClientSessionCode(realm, clientSession).getCode();
 
         if (idpHint != null && !"".equals(idpHint)) {
@@ -892,6 +882,14 @@ public class OpenIDConnectService {
                     Urls.identityProviderAuthnRequest(this.uriInfo.getBaseUri(), identityProviderModel, realm, accessCode)).build();
         }
 
+        response = authManager.checkNonFormAuthentication(session, clientSession, realm, uriInfo, request, clientConnection, headers, event);
+        if (response != null) return response;
+
+        if (prompt != null && prompt.equals("none")) {
+            OpenIDConnect oauth = new OpenIDConnect(session, realm, uriInfo);
+            return oauth.cancelLogin(clientSession);
+        }
+
         List<RequiredCredentialModel> requiredCredentials = realm.getRequiredCredentials();
 
         if (requiredCredentials.isEmpty()) {