aboutsummaryrefslogtreecommitdiff
path: root/connector/src/main/java/at/gv/egiz/eidas/specific/connector/verification/AuthnRequestValidator.java
diff options
context:
space:
mode:
Diffstat (limited to 'connector/src/main/java/at/gv/egiz/eidas/specific/connector/verification/AuthnRequestValidator.java')
-rw-r--r--connector/src/main/java/at/gv/egiz/eidas/specific/connector/verification/AuthnRequestValidator.java34
1 files changed, 15 insertions, 19 deletions
diff --git a/connector/src/main/java/at/gv/egiz/eidas/specific/connector/verification/AuthnRequestValidator.java b/connector/src/main/java/at/gv/egiz/eidas/specific/connector/verification/AuthnRequestValidator.java
index 1b912ed4..0217eec4 100644
--- a/connector/src/main/java/at/gv/egiz/eidas/specific/connector/verification/AuthnRequestValidator.java
+++ b/connector/src/main/java/at/gv/egiz/eidas/specific/connector/verification/AuthnRequestValidator.java
@@ -60,11 +60,11 @@ public class AuthnRequestValidator implements IAuthnRequestValidator {
String spEntityId = extractScopeRequsterId(authnReq);
if (StringUtils.isEmpty(spEntityId)) {
log.info("NO service-provider entityID in Authn. request. Stop authn. process ... ");
- throw new AuthnRequestValidatorException("TODO", null,
- "NO service-provider entityID in Authn. request", pendingReq);
+ throw new AuthnRequestValidatorException("pvp2.22",
+ new Object[] {"NO relaying-party entityID in Authn. request"}, pendingReq);
} else
- pendingReq.setGenericDataToSession(MSeIDASNodeConstants.DATA_REQUESTERID, spEntityId);
+ pendingReq.setRawDataToTransaction(MSeIDASNodeConstants.DATA_REQUESTERID, spEntityId);
//post-process ProviderName
@@ -72,17 +72,15 @@ public class AuthnRequestValidator implements IAuthnRequestValidator {
if (StringUtils.isEmpty(providerName))
log.info("Authn. request contains NO SP friendlyName");
else
- pendingReq.setGenericDataToSession(MSeIDASNodeConstants.DATA_PROVIDERNAME, spEntityId);
+ pendingReq.setRawDataToTransaction(MSeIDASNodeConstants.DATA_PROVIDERNAME, spEntityId);
- //TODO: set to SPConfiguration
//post-process requested LoA
List<String> reqLoA = extractLoA(authnReq);
- pendingReq.setGenericDataToSession(MSeIDASNodeConstants.DATA_REQUESTED_LOA_LIST, reqLoA);
-
- //TODO: set to SPConfiguration
+ pendingReq.getServiceProviderConfiguration(ServiceProviderConfiguration.class).setRequiredLoA(reqLoA);
+
//post-process requested LoA comparison-level
String reqLoAComperison = extractComparisonLevel(authnReq);
- pendingReq.setGenericDataToSession(MSeIDASNodeConstants.DATA_REQUESTED_LOA_COMPERISON, reqLoAComperison);
+ pendingReq.getServiceProviderConfiguration(ServiceProviderConfiguration.class).setLoAMachtingMode(reqLoAComperison);
//validate and process requested attributes
boolean sectorDetected = false;
@@ -124,15 +122,13 @@ public class AuthnRequestValidator implements IAuthnRequestValidator {
if (!sectorDetected) {
log.info("Authn.Req validation FAILED. Reason: Contains NO or NO VALID target-sector information.");
- throw new AuthnRequestValidatorException("TODO", null,
- "Authn.Req validation FAILED. Reason: Contains NO or NO VALID target-sector information.");
+ throw new AuthnRequestValidatorException("pvp2.22", new Object[] {"NO or NO VALID target-sector information"});
}
} catch (EAAFStorageException e) {
log.info("Can NOT store Authn. Req. data into pendingRequest." , e);
- throw new AuthnRequestValidatorException("TODO", null,
- "Can NOT store Authn. Req. data into pendingRequest.", e);
+ throw new AuthnRequestValidatorException("internal.02", null, e);
}
@@ -159,9 +155,9 @@ public class AuthnRequestValidator implements IAuthnRequestValidator {
} else if (authContext.getAuthnContextClassRefs().size() > 1) {
log.info("Authn. Req. contains MORE THAN ONE requested LoA, but "
+ AuthnContextComparisonTypeEnumeration.MINIMUM + " allows only one" );
- throw new AuthnRequestValidatorException("TODO", null,
- "Authn. Req. contains MORE THAN ONE requested LoA, but "
- + AuthnContextComparisonTypeEnumeration.MINIMUM + " allows only one");
+ throw new AuthnRequestValidatorException("pvp2.22",
+ new Object[] {"Authn. Req. contains MORE THAN ONE requested LoA, but "
+ + AuthnContextComparisonTypeEnumeration.MINIMUM + " allows only one"});
} else
result.add(authContext.getAuthnContextClassRefs().get(0).getAuthnContextClassRef());
@@ -173,9 +169,9 @@ public class AuthnRequestValidator implements IAuthnRequestValidator {
} else {
log.info("Currently only '" + AuthnContextComparisonTypeEnumeration.MINIMUM + "' and '"
+ AuthnContextComparisonTypeEnumeration.EXACT + "' are supported");
- throw new AuthnRequestValidatorException("TODO", null,
- "Currently only '" + AuthnContextComparisonTypeEnumeration.MINIMUM + "' and '"
- + AuthnContextComparisonTypeEnumeration.EXACT + "' are supported");
+ throw new AuthnRequestValidatorException("pvp2.22",
+ new Object[] {"Currently only '" + AuthnContextComparisonTypeEnumeration.MINIMUM + "' and '"
+ + AuthnContextComparisonTypeEnumeration.EXACT + "' are supported"});
}