diff options
Diffstat (limited to 'id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/api/data/IAuthenticationSession.java')
-rw-r--r-- | id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/api/data/IAuthenticationSession.java | 296 |
1 files changed, 296 insertions, 0 deletions
diff --git a/id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/api/data/IAuthenticationSession.java b/id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/api/data/IAuthenticationSession.java new file mode 100644 index 000000000..8bffceaed --- /dev/null +++ b/id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/api/data/IAuthenticationSession.java @@ -0,0 +1,296 @@ +/* + * Copyright 2014 Federal Chancellery Austria + * MOA-ID has been developed in a cooperation between BRZ, the Federal + * Chancellery Austria - ICT staff unit, and Graz University of Technology. + * + * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by + * the European Commission - subsequent versions of the EUPL (the "Licence"); + * You may not use this work except in compliance with the Licence. + * You may obtain a copy of the Licence at: + * http://www.osor.eu/eupl/ + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the Licence is distributed on an "AS IS" basis, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the Licence for the specific language governing permissions and + * limitations under the Licence. + * + * This product combines work with different licenses. See the "NOTICE" text + * file for details on the various modules and licenses. + * The "NOTICE" text file is part of the distribution. Any derivative works + * that you distribute must include a readable copy of the "NOTICE" text file. + */ +package at.gv.egovernment.moa.id.commons.api.data; + +import java.util.Date; +import java.util.List; +import java.util.Map; + +import at.gv.egovernment.moa.id.commons.api.exceptions.SessionDataStorageException; +import iaik.x509.X509Certificate; + +/** + * @author tlenz + * + */ +public interface IAuthenticationSession { + + boolean isAuthenticated(); + + void setAuthenticated(boolean authenticated); + + X509Certificate getSignerCertificate(); + + byte[] getEncodedSignerCertificate(); + + void setSignerCertificate(X509Certificate signerCertificate); + + /** + * Returns the identityLink. + * + * @return IdentityLink + */ + IIdentityLink getIdentityLink(); + + /** + * Returns the sessionID. + * + * @return String + */ + String getSessionID(); + + /** + * Sets the identityLink. + * + * @param identityLink + * The identityLink to set + */ + void setIdentityLink(IIdentityLink identityLink); + + /** + * Sets the sessionID. + * + * @param sessionId + * The sessionID to set + */ + void setSessionID(String sessionId); + + /** + * Returns the BKU URL. + * + * @return String + */ + String getBkuURL(); + + /** + * Sets the bkuURL + * + * @param bkuURL + * The BKU URL to set + */ + void setBkuURL(String bkuURL); + + /** + * Returns the authBlock. + * + * @return String + */ + String getAuthBlock(); + + /** + * Sets the authBlock. + * + * @param authBlock + * The authBlock to set + */ + void setAuthBlock(String authBlock); + + /** + * Returns the SAML Attributes to be appended to the AUTHBlock. Maybe <code>null</code>. + * + * @return The SAML Attributes to be appended to the AUTHBlock. Maybe <code>null</code>. + */ + List<ExtendedSAMLAttribute> getExtendedSAMLAttributesAUTH(); + + /** + * Sets the SAML Attributes to be appended to the AUTHBlock. + * + * @param extendedSAMLAttributesAUTH + * The SAML Attributes to be appended to the AUTHBlock. + */ + void setExtendedSAMLAttributesAUTH(List<ExtendedSAMLAttribute> extendedSAMLAttributesAUTH); + + /** + * Returns the SAML Attributes to be appended to the SAML assertion delivered to the online + * application. Maybe <code>null</code>. + * + * @return The SAML Attributes to be appended to the SAML assertion delivered to the online + * application + */ + List<ExtendedSAMLAttribute> getExtendedSAMLAttributesOA(); + + /** + * Sets the SAML Attributes to be appended to the SAML assertion delivered to the online + * application. + * + * @param extendedSAMLAttributesOA + * The SAML Attributes to be appended to the SAML assertion delivered to the online + * application. + */ + void setExtendedSAMLAttributesOA(List<ExtendedSAMLAttribute> extendedSAMLAttributesOA); + + /** + * Returns the boolean value for either a target or a wbPK is provided as SAML Attribute in the + * SAML Assertion or not. + * + * @return true either a target or a wbPK is provided as SAML Attribute in the SAML Assertion or + * false if not. + */ + boolean getSAMLAttributeGebeORwbpk(); + + /** + * Sets the boolean value for either a target or a wbPK is provided as SAML Attribute in the + * SAML Assertion or not. + * + * @param samlAttributeGebeORwbpk + * The boolean for value either a target or wbPK is provided as SAML Attribute in the + * SAML Assertion or not. + */ + void setSAMLAttributeGebeORwbpk(boolean samlAttributeGebeORwbpk); + + /** + * Returns the issuing time of the AUTH-Block SAML assertion. + * + * @return The issuing time of the AUTH-Block SAML assertion. + */ + String getIssueInstant(); + + /** + * Sets the issuing time of the AUTH-Block SAML assertion. + * + * @param issueInstant + * The issueInstant to set. + */ + void setIssueInstant(String issueInstant); + + /** + * + * @param useMandate + * indicates if mandate is used or not + */ + void setUseMandate(String useMandate); + + void setUseMandates(boolean useMandates); + + /** + * @return + */ + boolean isMandateUsed(); + + /** + * + * @param misSessionID + * indicates the MIS session ID + */ + void setMISSessionID(String misSessionID); + + /** + * Returns the MIS session ID + * + * @return + */ + String getMISSessionID(); + + /** + * @return the mandateReferenceValue + */ + String getMandateReferenceValue(); + + /** + * @param mandateReferenceValue + * the mandateReferenceValue to set + */ + void setMandateReferenceValue(String mandateReferenceValue); + + boolean isForeigner(); + + void setForeigner(boolean isForeigner); + + IVerifiyXMLSignatureResponse getXMLVerifySignatureResponse(); + + void setXMLVerifySignatureResponse(IVerifiyXMLSignatureResponse xMLVerifySignatureResponse); + + IMISMandate getMISMandate(); + + void setMISMandate(IMISMandate mandate); + + /** + * @return the isOW + */ + boolean isOW(); + + /** + * @param isOW + * the isOW to set + */ + void setOW(boolean isOW); + + /** + * @return the authBlockTokken + */ + String getAuthBlockTokken(); + + /** + * @param authBlockTokken + * the authBlockTokken to set + */ + void setAuthBlockTokken(String authBlockTokken); + + /** + * eIDAS QAA level + * + * @return the qAALevel + */ + String getQAALevel(); + + /** + * set QAA level in eIDAS form + * + * @param qAALevel the qAALevel to set + */ + void setQAALevel(String qAALevel); + + /** + * @return the sessionCreated + */ + Date getSessionCreated(); + + Map<String, Object> getGenericSessionDataStorage(); + + /** + * Returns a generic session-data object with is stored with a specific identifier + * + * @param key The specific identifier of the session-data object + * @return The session-data object or null if no data is found with this key + */ + Object getGenericDataFromSession(String key); + + /** + * Returns a generic session-data object with is stored with a specific identifier + * + * @param key The specific identifier of the session-data object + * @param clazz The class type which is stored with this key + * @return The session-data object or null if no data is found with this key + */ + <T> T getGenericDataFromSession(String key, Class<T> clazz); + + /** + * Store a generic data-object to session with a specific identifier + * + * @param key Identifier for this data-object + * @param object Generic data-object which should be stored. This data-object had to be implement the 'java.io.Serializable' interface + * @throws SessionDataStorageException Error message if the data-object can not stored to generic session-data storage + */ + void setGenericDataToSession(String key, Object object) throws SessionDataStorageException; + +}
\ No newline at end of file |