/******************************************************************************* * 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. ******************************************************************************/ /* * Copyright 2003 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.protocols.saml1; import java.text.ParseException; import java.util.List; import at.gv.egiz.eaaf.core.impl.utils.Random; import at.gv.egovernment.moa.id.commons.api.data.ExtendedSAMLAttribute; import at.gv.egovernment.moa.id.data.MOAAuthenticationData; import at.gv.egovernment.moa.id.util.LoALevelMapper; import at.gv.egovernment.moa.logging.Logger; import at.gv.egovernment.moa.util.DateTimeUtils; /** * Encapsulates authentication data contained in a <saml:Assertion>. * * @author Paul Ivancsics * @version $Id$ */ public class SAML1AuthenticationData extends MOAAuthenticationData { /** * */ private static final long serialVersionUID = -1042697056735596866L; /** * major version number of the SAML assertion */ private int majorVersion; /** * minor version number of the SAML assertion */ private int minorVersion; /** * identifier for this assertion */ private String assertionID; /** * @return the majorVersion */ private String samlAssertion = null; private List extendedSAMLAttributesOA; public SAML1AuthenticationData(LoALevelMapper loaMapper) { super(loaMapper); this.setMajorVersion(1); this.setMinorVersion(0); this.setAssertionID(Random.nextRandom()); } //this method is only required for MOA-ID Proxy 2.0 Release. //TODO: remove it, if MOA-ID Proxy is not supported anymore. public String getWBPK() { return getBPK(); } public int getMajorVersion() { return majorVersion; } /** * @param majorVersion the majorVersion to set */ public void setMajorVersion(int majorVersion) { this.majorVersion = majorVersion; } /** * @return the minorVersion */ public int getMinorVersion() { return minorVersion; } /** * @param minorVersion the minorVersion to set */ public void setMinorVersion(int minorVersion) { this.minorVersion = minorVersion; } /** * @return the assertionID */ public String getAssertionID() { return assertionID; } /** * @param assertionID the assertionID to set */ public void setAssertionID(String assertionID) { this.assertionID = assertionID; } public void setIssueInstant(String date) { try { setAuthenticationIssueInstant(DateTimeUtils.parseDateTime(date)); } catch (ParseException e) { Logger.error("Parse IssueInstant element FAILED.", e); } } /** * @return the samlAssertion */ public String getSamlAssertion() { return samlAssertion; } /** * @param samlAssertion the samlAssertion to set */ public void setSamlAssertion(String samlAssertion) { this.samlAssertion = samlAssertion; } /** * @return the extendedSAMLAttributesOA */ public List getExtendedSAMLAttributesOA() { return extendedSAMLAttributesOA; } /** * @param extendedSAMLAttributesOA the extendedSAMLAttributesOA to set */ public void setExtendedSAMLAttributesOA( List extendedSAMLAttributesOA) { this.extendedSAMLAttributesOA = extendedSAMLAttributesOA; } }