aboutsummaryrefslogtreecommitdiff
path: root/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/auth/modules/eidas/AustrianAuthWitheID4UAuthenticationModulImpl.java
diff options
context:
space:
mode:
authorThomas Lenz <thomas.lenz@egiz.gv.at>2018-10-04 11:16:24 +0200
committerThomas Lenz <thomas.lenz@egiz.gv.at>2018-10-04 11:16:24 +0200
commitabae1d0a880178568e742c09779bd2a47394f1e4 (patch)
tree43dc4b454e3b60a5aa27bd5376d23299ae31384d /id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/auth/modules/eidas/AustrianAuthWitheID4UAuthenticationModulImpl.java
parentfd786b4402841508acef77e75bacd369efbbcf96 (diff)
downloadmoa-id-spss-abae1d0a880178568e742c09779bd2a47394f1e4.tar.gz
moa-id-spss-abae1d0a880178568e742c09779bd2a47394f1e4.tar.bz2
moa-id-spss-abae1d0a880178568e742c09779bd2a47394f1e4.zip
add some more basic untested code for eID4U.
- add auth.process selection - add eID4U attribute extraction
Diffstat (limited to 'id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/auth/modules/eidas/AustrianAuthWitheID4UAuthenticationModulImpl.java')
-rw-r--r--id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/auth/modules/eidas/AustrianAuthWitheID4UAuthenticationModulImpl.java29
1 files changed, 25 insertions, 4 deletions
diff --git a/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/auth/modules/eidas/AustrianAuthWitheID4UAuthenticationModulImpl.java b/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/auth/modules/eidas/AustrianAuthWitheID4UAuthenticationModulImpl.java
index 3640d4d19..d1ad4b665 100644
--- a/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/auth/modules/eidas/AustrianAuthWitheID4UAuthenticationModulImpl.java
+++ b/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/auth/modules/eidas/AustrianAuthWitheID4UAuthenticationModulImpl.java
@@ -22,8 +22,18 @@
*/
package at.gv.egovernment.moa.id.auth.modules.eidas;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+
+
+import at.gv.egiz.eaaf.core.api.IRequest;
+import at.gv.egiz.eaaf.core.api.IRequestStorage;
+import at.gv.egiz.eaaf.core.api.data.EAAFConstants;
import at.gv.egiz.eaaf.core.api.idp.process.ExecutionContext;
import at.gv.egovernment.moa.id.auth.modules.internal.DefaultCitizenCardAuthModuleImpl;
+import at.gv.egovernment.moa.id.protocols.eidas.EIDASData;
+import at.gv.egovernment.moa.logging.Logger;
import at.gv.egovernment.moa.util.MiscUtil;
/**
@@ -33,7 +43,10 @@ import at.gv.egovernment.moa.util.MiscUtil;
public class AustrianAuthWitheID4UAuthenticationModulImpl extends DefaultCitizenCardAuthModuleImpl {
private int priority = 1;
-
+
+ @Autowired private IRequestStorage requestStore;
+
+
@Override
public int getPriority() {
return priority;
@@ -53,14 +66,22 @@ public class AustrianAuthWitheID4UAuthenticationModulImpl extends DefaultCitizen
@Override
public String selectProcess(ExecutionContext context) {
String selectedProcessID = super.selectProcess(context);
-
if (MiscUtil.isNotEmpty(selectedProcessID)) {
- //TODO: check if it is an eID4U auth. use-case
+ String pendingReqId = (String)context.get(EAAFConstants.PROCESS_ENGINE_PENDINGREQUESTID);
+ if (StringUtils.isEmpty(pendingReqId))
+ Logger.warn("Process execution context contains NO 'pendingReqId'. Looks very suspect!");
+ else {
+ IRequest pendingReq = requestStore.getPendingRequest(pendingReqId);
+ if (pendingReq != null && pendingReq instanceof EIDASData) {
+ return "eID4UAttributCollectionAuthentication";
+
+ }
+ }
}
- return null;
+ return selectedProcessID;
}
/* (non-Javadoc)