diff options
author | Thomas Lenz <tlenz@iaik.tugraz.at> | 2014-05-07 17:16:42 +0200 |
---|---|---|
committer | Thomas Lenz <tlenz@iaik.tugraz.at> | 2014-05-07 17:16:42 +0200 |
commit | 9ade292185a7cd7ebfd0aad27a48324433737bfe (patch) | |
tree | 963187af67fdaa7248f4e816d56e6ffa9c0b52d2 /id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls | |
parent | 26822fcf41e37e0fedca87489b60304496c9d0f0 (diff) | |
download | moa-id-spss-9ade292185a7cd7ebfd0aad27a48324433737bfe.tar.gz moa-id-spss-9ade292185a7cd7ebfd0aad27a48324433737bfe.tar.bz2 moa-id-spss-9ade292185a7cd7ebfd0aad27a48324433737bfe.zip |
add inbound/outbound interfederation SSO checks
Diffstat (limited to 'id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls')
-rw-r--r-- | id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/AuthenticationManager.java | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/AuthenticationManager.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/AuthenticationManager.java index 8a7a876a7..ee7d452c5 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/AuthenticationManager.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/AuthenticationManager.java @@ -212,9 +212,17 @@ public class AuthenticationManager extends AuthServlet { boolean requiredLocalAuthentication = true; Logger.debug("Build PVP 2.1 authentication request"); - + //get IDP metadata try { + OAAuthParameter idp = AuthConfigurationProvider.getInstance().getOnlineApplicationParameter(target.getRequestedIDP()); + if (!idp.isInderfederationIDP() || !idp.isInboundSSOInterfederationAllowed()) { + Logger.info("Requested interfederation IDP " + target.getRequestedIDP() + " is not valid for interfederation."); + Logger.info("Switch to local authentication on this IDP ... "); + perfomLocalAuthentication(request, response, target); + + } + EntityDescriptor idpEntity = MOAMetadataProvider.getInstance(). getEntityDescriptor(target.getRequestedIDP()); |