diff options
author | Thomas Lenz <thomas.lenz@egiz.gv.at> | 2018-10-04 11:16:24 +0200 |
---|---|---|
committer | Thomas Lenz <thomas.lenz@egiz.gv.at> | 2018-10-04 11:16:24 +0200 |
commit | abae1d0a880178568e742c09779bd2a47394f1e4 (patch) | |
tree | 43dc4b454e3b60a5aa27bd5376d23299ae31384d /id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/auth/modules/eidas/AustrianAuthWitheID4UAuthenticationModulImpl.java | |
parent | fd786b4402841508acef77e75bacd369efbbcf96 (diff) | |
download | moa-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.java | 29 |
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) |