From 3be8b5c3c139ab75db4ae9ac927800505194d987 Mon Sep 17 00:00:00 2001 From: Thomas Lenz Date: Wed, 29 May 2019 13:57:17 +0200 Subject: add new attribute builder fix some injection and dependency problems --- .../core/api/data/PVPAttributeDefinitions.java | 24 ++++++++++++++++ .../gv/egiz/eaaf/core/api/idp/IConfiguration.java | 32 ++++++++++++++-------- .../at/gv/egiz/eaaf/core/api/idp/IEidAuthData.java | 29 ++++++++++++++++++++ 3 files changed, 73 insertions(+), 12 deletions(-) create mode 100644 eaaf_core_api/src/main/java/at/gv/egiz/eaaf/core/api/idp/IEidAuthData.java (limited to 'eaaf_core_api/src/main/java') diff --git a/eaaf_core_api/src/main/java/at/gv/egiz/eaaf/core/api/data/PVPAttributeDefinitions.java b/eaaf_core_api/src/main/java/at/gv/egiz/eaaf/core/api/data/PVPAttributeDefinitions.java index 2a92e5f3..e4ebe433 100644 --- a/eaaf_core_api/src/main/java/at/gv/egiz/eaaf/core/api/data/PVPAttributeDefinitions.java +++ b/eaaf_core_api/src/main/java/at/gv/egiz/eaaf/core/api/data/PVPAttributeDefinitions.java @@ -133,6 +133,30 @@ public interface PVPAttributeDefinitions { public static final String EID_CITIZEN_EIDAS_QAA_LEVEL_OID = "1.2.40.0.10.2.1.1.261.108"; public static final String EID_CITIZEN_EIDAS_QAA_LEVEL_NAME = URN_OID_PREFIX + EID_CITIZEN_EIDAS_QAA_LEVEL_OID; public static final String EID_CITIZEN_EIDAS_QAA_LEVEL_FRIENDLY_NAME = "EID-CITIZEN-QAA-EIDAS-LEVEL"; + + public static final String EID_IDENTITY_STATUS_LEVEL_OID = "1.2.40.0.10.2.1.1.261.109"; + public static final String EID_IDENTITY_STATUS_LEVEL_NAME = URN_OID_PREFIX + EID_IDENTITY_STATUS_LEVEL_OID; + public static final String EID_IDENTITY_STATUS_LEVEL_FRIENDLY_NAME = "EID-IDENTITY-STATUS-LEVEL"; + public enum EID_IDENTITY_STATUS_LEVEL_VALUES { + IDENTITY("http://eid.gv.at/eID/status/identity"), + TESTIDENTITY("http://eid.gv.at/eID/status/testidentity"), + SYSTEM("http://eid.gv.at/eID/status/system"); + + private final String uri; + + private EID_IDENTITY_STATUS_LEVEL_VALUES(String uri) { + this.uri = uri; + } + + /** + * Get the URI based status identifier of an E-ID + * + * @return + */ + public String getURI() { + return this.uri; + } + }; public static final String EID_ISSUING_NATION_OID = "1.2.40.0.10.2.1.1.261.32"; public static final String EID_ISSUING_NATION_NAME = URN_OID_PREFIX + EID_ISSUING_NATION_OID; diff --git a/eaaf_core_api/src/main/java/at/gv/egiz/eaaf/core/api/idp/IConfiguration.java b/eaaf_core_api/src/main/java/at/gv/egiz/eaaf/core/api/idp/IConfiguration.java index eceec2a6..7d564b58 100644 --- a/eaaf_core_api/src/main/java/at/gv/egiz/eaaf/core/api/idp/IConfiguration.java +++ b/eaaf_core_api/src/main/java/at/gv/egiz/eaaf/core/api/idp/IConfiguration.java @@ -57,26 +57,34 @@ public interface IConfiguration { */ public String getBasicConfiguration(final String key, final String defaultValue); + /** - * Get a set of configuration values from file based configuration that starts with this prefix - *

- * Important: The configuration values must be of type String! + * Get a configuration value from file based configuration * - * @param prefix Prefix of the configuration key - * @return Map without prefix, but never null + * @param key configuration key + * @return configuration value as {@link Boolean.parseBoolean(value)} or null if key does not exist */ - public Map getBasicMOAIDConfigurationWithPrefix(final String prefix); - + public Boolean getBasicConfigurationBoolean(final String key); /** - * Get a boolean value from basic MOA-ID configuration file + * Get a configuration value from file based configuration * - * @param key Configuration key - * @param defaultValue Default result - * @return returns the value of the configuration key, or the default value if the key is not set + * @param key configuration key + * @param defaultValue Default value if no value with this key is found + * @return configuration value as {@link Boolean.parseBoolean(value)} or defaultValue if key does not exist */ - public boolean getBasicMOAIDConfigurationBoolean(String key, boolean defaultValue); + public boolean getBasicConfigurationBoolean(final String key, final boolean defaultValue); + /** + * Get a set of configuration values from file based configuration that starts with this prefix + *

+ * Important: The configuration values must be of type String! + * + * @param prefix Prefix of the configuration key + * @return Map without prefix, but never null + */ + public Map getBasicConfigurationWithPrefix(final String prefix); + /** * Get a configuration entry for a specific Service Provider * diff --git a/eaaf_core_api/src/main/java/at/gv/egiz/eaaf/core/api/idp/IEidAuthData.java b/eaaf_core_api/src/main/java/at/gv/egiz/eaaf/core/api/idp/IEidAuthData.java new file mode 100644 index 00000000..44ece8fe --- /dev/null +++ b/eaaf_core_api/src/main/java/at/gv/egiz/eaaf/core/api/idp/IEidAuthData.java @@ -0,0 +1,29 @@ +package at.gv.egiz.eaaf.core.api.idp; + +import at.gv.egiz.eaaf.core.api.data.PVPAttributeDefinitions; + +public interface IEidAuthData extends IAuthData { + + /** + * Get the serialized signing certificate that was used to sign the consent + * + * @return + */ + byte[] getSignerCertificate(); + + + /** + * Get the serialized E-ID token that can be used to validate the Identity-Link + * + * @return + */ + byte[] getEIDToken(); + + + /** + * Get the status of the E-ID + * + * @return {@link PVPAttributeDefinitions.EID_IDENTITY_STATUS_LEVEL_VALUES} + */ + PVPAttributeDefinitions.EID_IDENTITY_STATUS_LEVEL_VALUES getEIDStatus(); +} -- cgit v1.2.3