Skip to content

Commit 055fa68

Browse files
committed
don't create new user for OBP-OIDC
1 parent 6e5ae18 commit 055fa68

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

‎obp-api/src/main/scala/code/api/OAuth2.scala‎

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,7 @@ object OAuth2Login extends RestHelper with MdcLoggable {
107107
} else if (Azure.isIssuer(value)) {
108108
Azure.applyIdTokenRulesFuture(value, cc)
109109
} else if (OBPOIDC.isIssuer(value)) {
110+
logger.debug("getUserFuture says: this is OBPOIDC")
110111
OBPOIDC.applyIdTokenRulesFuture(value, cc)
111112
} else if (Keycloak.isIssuer(value)) {
112113
Keycloak.applyRulesFuture(value, cc)
@@ -345,10 +346,16 @@ object OAuth2Login extends RestHelper with MdcLoggable {
345346
def resolveProvider(idToken: String) = {
346347
HydraUtil.integrateWithHydra && isIssuer(jwtToken = idToken, identityProvider = hydraPublicUrl) match {
347348
case true if HydraUtil.hydraUsesObpUserCredentials => // Case that source of the truth of Hydra user management is the OBP-API mapper DB
348-
// In case that ORY Hydra login url is "hostname/user_mgt/login" we MUST override hydraPublicUrl as provider
349+
logger.debug("resolveProvider says: we are in Hydra ")
350+
// In case that ORY Hydra login url is "hostname/user_mgt/login" we MUST override hydraPublicUrl as provider
349351
// in order to avoid creation of a new user
350352
Constant.localIdentityProvider
353+
// if its OBPOIDC issuer
354+
case false if OBPOIDC.isIssuer(idToken) =>
355+
logger.debug("resolveProvider says: we are in OBPOIDC ")
356+
Constant.localIdentityProvider
351357
case _ => // All other cases implies a new user creation
358+
logger.debug("resolveProvider says: Other cases ")
352359
// TODO raise exception in case of else case
353360
JwtUtil.getIssuer(idToken).getOrElse("")
354361
}

0 commit comments

Comments
 (0)