diff options
| author | rudolf <rudolf@d688527b-c9ab-4aba-bd8d-4036d912da1d> | 2003-12-18 19:19:09 +0000 | 
|---|---|---|
| committer | rudolf <rudolf@d688527b-c9ab-4aba-bd8d-4036d912da1d> | 2003-12-18 19:19:09 +0000 | 
| commit | 98bbfa11070a62956d7e2663a82f19fd048d1d5e (patch) | |
| tree | d1cfb3bd6fdbb73715900de364fca2e5842e1682 | |
| parent | c25c7601e6b1acdd95a167a08883452dbbb75690 (diff) | |
| download | moa-id-spss-98bbfa11070a62956d7e2663a82f19fd048d1d5e.tar.gz moa-id-spss-98bbfa11070a62956d7e2663a82f19fd048d1d5e.tar.bz2 moa-id-spss-98bbfa11070a62956d7e2663a82f19fd048d1d5e.zip | |
MOAIdentities wird von XMLLoginParameterResolver verwendet
git-svn-id: https://joinup.ec.europa.eu/svn/moa-idspss/trunk@77 d688527b-c9ab-4aba-bd8d-4036d912da1d
| -rw-r--r-- | common/res/resources/schemas/MOA-ID-Configuration-1.1.xsd | 110 | ||||
| -rw-r--r-- | common/res/resources/schemas/MOAIdentities.xsd | 46 | ||||
| -rw-r--r-- | common/src/at/gv/egovernment/moa/util/FileUtils.java | 27 | 
3 files changed, 136 insertions, 47 deletions
| diff --git a/common/res/resources/schemas/MOA-ID-Configuration-1.1.xsd b/common/res/resources/schemas/MOA-ID-Configuration-1.1.xsd index 52d0add45..59bd6562f 100644 --- a/common/res/resources/schemas/MOA-ID-Configuration-1.1.xsd +++ b/common/res/resources/schemas/MOA-ID-Configuration-1.1.xsd @@ -1,8 +1,14 @@  <?xml version="1.0" encoding="UTF-8"?>
 -<!-- edited with XMLSPY v5 rel. 4 U (http://www.xmlspy.com) by Rudolf Schamberger (Stabsstelle IKT-Strategie) (Bundesrechenzentrum GmbH) -->
 -<xsd:schema targetNamespace="http://www.buergerkarte.at/namespaces/moaconfig#" xmlns:sl10="http://www.buergerkarte.at/namespaces/securitylayer/20020225#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.buergerkarte.at/namespaces/moaconfig#" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.1.0">
 -	<xsd:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd"/>
 -	<xsd:import namespace="http://www.buergerkarte.at/namespaces/securitylayer/20020225#" schemaLocation="http://www.buergerkarte.at/konzept/securitylayer/spezifikation/20020831/core/Core.20020225.xsd"/>
 +<!-- edited with XMLSPY v5 rel. 4 U (http://www.xmlspy.com) by Rudolf Schamberger (Stabsstelle IKT-Strategie)  -->
 +<xsd:schema targetNamespace="http://www.buergerkarte.at/namespaces/moaconfig#" 
 +	xmlns:sl10="http://www.buergerkarte.at/namespaces/securitylayer/20020225#" 
 +	xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
 +	xmlns="http://www.buergerkarte.at/namespaces/moaconfig#" elementFormDefault="qualified" 
 +	attributeFormDefault="unqualified" version="1.1.1">
 +	<xsd:import namespace="http://www.w3.org/2000/09/xmldsig#" 
 +		schemaLocation="http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd"/>
 +	<xsd:import namespace="http://www.buergerkarte.at/namespaces/securitylayer/20020225#" 
 +		schemaLocation="http://www.buergerkarte.at/konzept/securitylayer/spezifikation/20020831/core/Core.20020225.xsd"/>
  	<xsd:element name="Configuration">
  		<xsd:complexType>
  			<xsd:sequence>
 @@ -74,24 +80,30 @@  			<xsd:sequence>
  				<xsd:element name="AuthComponent" type="AuthComponentType" minOccurs="0">
  					<xsd:annotation>
 -						<xsd:documentation>enthält Parameter der Authentisierungs-Komponente</xsd:documentation>
 +						<xsd:documentation>enthält Parameter der 
 +							Authentisierungs-Komponente</xsd:documentation>
  					</xsd:annotation>
  				</xsd:element>
  				<xsd:element name="ProxyComponent" minOccurs="0">
  					<xsd:annotation>
 -						<xsd:documentation>enthält Konfigurationsparameter der Proxy-Komponente</xsd:documentation>
 +						<xsd:documentation>enthält Konfigurationsparameter der 
 +							Proxy-Komponente</xsd:documentation>
  					</xsd:annotation>
  					<xsd:complexType>
  						<xsd:sequence>
  							<xsd:element name="AuthComponent">
  								<xsd:annotation>
 -									<xsd:documentation>enthält Parameter für die Kommunikation zw. Proxykomponente und Authenttisierungskomponente</xsd:documentation>
 +									<xsd:documentation>enthält Parameter für die Kommunikation zw. 
 +										Proxykomponente und Authenttisierungskomponente</xsd:documentation>
  								</xsd:annotation>
  								<xsd:complexType>
  									<xsd:sequence>
 -										<xsd:element name="ConnectionParameter" type="ConnectionParameterClientAuthType" minOccurs="0">
 +										<xsd:element name="ConnectionParameter" 
 +											type="ConnectionParameterClientAuthType" minOccurs="0">
  											<xsd:annotation>
 -												<xsd:documentation>enthält Parameter für die SOAP-Verbindung von der Proxy-Komponente zur Auth-Komponente (vgl. AuthComponent/MOA-SP/ConnectionParameter)</xsd:documentation>
 +												<xsd:documentation>enthält Parameter für die SOAP-Verbindung von der 
 +													Proxy-Komponente zur Auth-Komponente (vgl. 
 +													AuthComponent/MOA-SP/ConnectionParameter)</xsd:documentation>
  											</xsd:annotation>
  										</xsd:element>
  									</xsd:sequence>
 @@ -114,13 +126,15 @@  				</xsd:element>
  				<xsd:element name="ChainingModes" minOccurs="0">
  					<xsd:annotation>
 -						<xsd:documentation>spezifiziert den Algorithmus ("pkix" oder "chaining") für die Zertifikatspfadvalidierung</xsd:documentation>
 +						<xsd:documentation>spezifiziert den Algorithmus ("pkix" oder "chaining") für die 
 +							Zertifikatspfadvalidierung</xsd:documentation>
  					</xsd:annotation>
  					<xsd:complexType>
  						<xsd:sequence minOccurs="0" maxOccurs="unbounded">
  							<xsd:element name="TrustAnchor">
  								<xsd:annotation>
 -									<xsd:documentation>ein vom SystemDefaultMode abweichender ChiningMode kann für jeden TrustAnchor gesetzt werden</xsd:documentation>
 +									<xsd:documentation>ein vom SystemDefaultMode abweichender ChiningMode kann 
 +										für jeden TrustAnchor gesetzt werden</xsd:documentation>
  								</xsd:annotation>
  								<xsd:complexType>
  									<xsd:complexContent>
 @@ -131,12 +145,14 @@  								</xsd:complexType>
  							</xsd:element>
  						</xsd:sequence>
 -						<xsd:attribute name="systemDefaultMode" type="ChainingModeType" use="optional" default="pkix"/>
 +						<xsd:attribute name="systemDefaultMode" type="ChainingModeType" use="optional" 
 +							default="pkix"/>
  					</xsd:complexType>
  				</xsd:element>
  				<xsd:element name="TrustedCACertificates" type="xsd:anyURI" minOccurs="0">
  					<xsd:annotation>
 -						<xsd:documentation>verweist auf ein Verzeichnis, das vertrauenswürdige CA (Zwischen-CA, Wurzel-CA) Zertifikate enthält.</xsd:documentation>
 +						<xsd:documentation>verweist auf ein Verzeichnis, das vertrauenswürdige CA 
 +							(Zwischen-CA, Wurzel-CA) Zertifikate enthält.</xsd:documentation>
  					</xsd:annotation>
  				</xsd:element>
  				<xsd:element name="GenericConfiguration" minOccurs="0" maxOccurs="unbounded">
 @@ -155,18 +171,23 @@  					<xsd:sequence>
  						<xsd:element name="ConnectionParameter" type="ConnectionParameterServerAuthType"/>
  					</xsd:sequence>
 -					<xsd:attribute name="BKUSelectionAlternative" type="BKUSelectionType" use="optional" default="HTMLComplete"/>
 +					<xsd:attribute name="BKUSelectionAlternative" type="BKUSelectionType" use="optional" 
 +						default="HTMLComplete"/>
  				</xsd:complexType>
  			</xsd:element>
  			<xsd:element name="SecurityLayer">
  				<xsd:annotation>
 -					<xsd:documentation>enthält Parameter für die Kommunikation mit dem Security-Layer</xsd:documentation>
 +					<xsd:documentation>enthält Parameter für die Kommunikation mit dem 
 +						Security-Layer</xsd:documentation>
  				</xsd:annotation>
  				<xsd:complexType>
  					<xsd:sequence>
  						<xsd:element name="TransformsInfo" maxOccurs="unbounded">
  							<xsd:annotation>
 -								<xsd:documentation>das Attribut filename verweist auf eine Datei mit globalem Element TransformsInfo vom Typ sl10:TransformsInfo; diese TransformsInfo werden in den  CreateXMLSignatureRequest für die Signatur des AUTH-Blocks inkludiert</xsd:documentation>
 +								<xsd:documentation>das Attribut filename verweist auf eine Datei mit globalem 
 +									Element TransformsInfo vom Typ sl10:TransformsInfo; diese TransformsInfo 
 +									werden in den CreateXMLSignatureRequest für die Signatur des AUTH-Blocks 
 +									inkludiert</xsd:documentation>
  							</xsd:annotation>
  							<xsd:complexType>
  								<xsd:attribute name="filename" type="xsd:anyURI" use="required"/>
 @@ -177,18 +198,26 @@  			</xsd:element>
  			<xsd:element name="MOA-SP">
  				<xsd:annotation>
 -					<xsd:documentation>enthält Konfiguratiosnparameter für die Kommunikation mit dem MOA SP Modul</xsd:documentation>
 +					<xsd:documentation>enthält Konfiguratiosnparameter für die Kommunikation mit dem MOA 
 +						SP Modul</xsd:documentation>
  				</xsd:annotation>
  				<xsd:complexType>
  					<xsd:sequence>
 -						<xsd:element name="ConnectionParameter" type="ConnectionParameterClientAuthType" minOccurs="0">
 +						<xsd:element name="ConnectionParameter" type="ConnectionParameterClientAuthType" 
 +							minOccurs="0">
  							<xsd:annotation>
 -								<xsd:documentation>enthält Parameter für die SOAP-Verbindung von der AUTH-Komponente zu MOA-SP; das Attribut URL enthält den Endpunkt des Server; wird das Schema "https" verwendet müssen die Kind-Elemente angegeben werden; wird das Schema "http" verwendet dürfen keine Kind-Elemente angegeben werden; wird das Element nicht verwendet dann wird MOA-SP über das API aufgerufen</xsd:documentation>
 +								<xsd:documentation>enthält Parameter für die SOAP-Verbindung von der 
 +									AUTH-Komponente zu MOA-SP; das Attribut URL enthält den Endpunkt des Server; 
 +									wird das Schema "https" verwendet müssen die Kind-Elemente angegeben werden; 
 +									wird das Schema "http" verwendet dürfen keine Kind-Elemente angegeben 
 +									werden; wird das Element nicht verwendet dann wird MOA-SP über das API 
 +									aufgerufen</xsd:documentation>
  							</xsd:annotation>
  						</xsd:element>
  						<xsd:element name="VerifyIdentityLink">
  							<xsd:annotation>
 -								<xsd:documentation>enthält Parameter für die Überprüfung der Personenbindung</xsd:documentation>
 +								<xsd:documentation>enthält Parameter für die Überprüfung der 
 +									Personenbindung</xsd:documentation>
  							</xsd:annotation>
  							<xsd:complexType>
  								<xsd:sequence>
 @@ -198,12 +227,14 @@  						</xsd:element>
  						<xsd:element name="VerifyAuthBlock">
  							<xsd:annotation>
 -								<xsd:documentation>enthält Parameter für die Überprüfung des AUTH-Blocks</xsd:documentation>
 +								<xsd:documentation>enthält Parameter für die Überprüfung des 
 +									AUTH-Blocks</xsd:documentation>
  							</xsd:annotation>
  							<xsd:complexType>
  								<xsd:sequence>
  									<xsd:element ref="TrustProfileID"/>
 -									<xsd:element name="VerifyTransformsInfoProfileID" type="xsd:string" maxOccurs="unbounded"/>
 +									<xsd:element name="VerifyTransformsInfoProfileID" type="xsd:string" 
 +										maxOccurs="unbounded"/>
  								</xsd:sequence>
  							</xsd:complexType>
  						</xsd:element>
 @@ -212,13 +243,15 @@  			</xsd:element>
  			<xsd:element name="IdentityLinkSigners">
  				<xsd:annotation>
 -					<xsd:documentation>enthält Informationen über akzeptierte Signers des IdentityLinks</xsd:documentation>
 +					<xsd:documentation>enthält Informationen über akzeptierte Signers des 
 +						IdentityLinks</xsd:documentation>
  				</xsd:annotation>
  				<xsd:complexType>
  					<xsd:sequence>
  						<xsd:element name="X509SubjectName" type="xsd:string" maxOccurs="unbounded">
  							<xsd:annotation>
 -								<xsd:documentation>akzeptierte Signer des IdentityLinks werden per X509SubjectName (Kodierung nach RFC 2253) identifiziert</xsd:documentation>
 +								<xsd:documentation>akzeptierte Signer des IdentityLinks werden per 
 +									X509SubjectName (Kodierung nach RFC 2253) identifiziert</xsd:documentation>
  							</xsd:annotation>
  						</xsd:element>
  					</xsd:sequence>
 @@ -231,31 +264,38 @@  		<xsd:sequence>
  			<xsd:element name="AuthComponent" minOccurs="0">
  				<xsd:annotation>
 -					<xsd:documentation>enthält Parameter über die OA, die die Authentisierungs-Komponente betreffen</xsd:documentation>
 +					<xsd:documentation>enthält Parameter über die OA, die die 
 +						Authentisierungs-Komponente betreffen</xsd:documentation>
  				</xsd:annotation>
  				<xsd:complexType>
 -					<xsd:attribute name="provideZMRZahl" type="xsd:boolean" use="optional" default="false"/>
 -					<xsd:attribute name="provideAUTHBlock" type="xsd:boolean" use="optional" default="false"/>
 -					<xsd:attribute name="provideIdentityLink" type="xsd:boolean" use="optional" default="false"/>
 +					<xsd:attribute name="provideZMRZahl" type="xsd:boolean" use="optional" 
 +						default="false"/>
 +					<xsd:attribute name="provideAUTHBlock" type="xsd:boolean" use="optional" 
 +						default="false"/>
 +					<xsd:attribute name="provideIdentityLink" type="xsd:boolean" use="optional" 
 +						default="false"/>
  				</xsd:complexType>
  			</xsd:element>
  			<xsd:element name="ProxyComponent" minOccurs="0">
  				<xsd:annotation>
 -					<xsd:documentation>enthält Parameter über die OA, die die Proxy-Komponente betreffen</xsd:documentation>
 +					<xsd:documentation>enthält Parameter über die OA, die die Proxy-Komponente 
 +						betreffen</xsd:documentation>
  				</xsd:annotation>
  				<xsd:complexType>
  					<xsd:sequence>
  						<xsd:element name="ConnectionParameter" type="ConnectionParameterClientAuthType">
  							<xsd:annotation>
 -								<xsd:documentation>enthält Parameter über die OA, die die Proxy-Komponente betreffen</xsd:documentation>
 +								<xsd:documentation>enthält Parameter über die OA, die die Proxy-Komponente 
 +									betreffen</xsd:documentation>
  							</xsd:annotation>
  						</xsd:element>
  					</xsd:sequence>
  					<xsd:attribute name="configFileURL" type="xsd:anyURI" use="optional"/>
  					<xsd:attribute name="sessionTimeOut" type="xsd:int" use="optional"/>
  					<xsd:attribute name="loginParameterResolverImpl" type="xsd:string" use="optional"/>
 +					<xsd:attribute name="loginParameterResolverConfiguration" type="xsd:string" 
 +						use="optional"/>
  					<xsd:attribute name="connectionBuilderImpl" type="xsd:string" use="optional"/>
 -					<xsd:attribute name="loginParameterResolverConfiguration" type="xsd:string" use="optional"/>
  				</xsd:complexType>
  			</xsd:element>
  		</xsd:sequence>
 @@ -264,7 +304,8 @@  		<xsd:sequence>
  			<xsd:element name="AcceptedServerCertificates" type="xsd:anyURI" minOccurs="0">
  				<xsd:annotation>
 -					<xsd:documentation>URL zu einem Verzeichnis, das akzeptierte Server-Zertifikate der TLS-Verbindung enthält (keine  CA-Zertifikate)</xsd:documentation>
 +					<xsd:documentation>URL zu einem Verzeichnis, das akzeptierte Server-Zertifikate der 
 +						TLS-Verbindung enthält (keine CA-Zertifikate)</xsd:documentation>
  				</xsd:annotation>
  			</xsd:element>
  		</xsd:sequence>
 @@ -276,7 +317,8 @@  				<xsd:sequence>
  					<xsd:element name="ClientKeyStore" minOccurs="0">
  						<xsd:annotation>
 -							<xsd:documentation>URL zu einem KeyStore, der den privaten Schlüssel, der für die TLS-Client-Authentisierung verwendetwird, enthält</xsd:documentation>
 +							<xsd:documentation>URL zu einem KeyStore, der den privaten Schlüssel, der für 
 +								die TLS-Client-Authentisierung verwendetwird, enthält</xsd:documentation>
  						</xsd:annotation>
  						<xsd:complexType>
  							<xsd:simpleContent>
 @@ -303,4 +345,4 @@  			<xsd:enumeration value="HTMLSelect"/>
  		</xsd:restriction>
  	</xsd:simpleType>
 -</xsd:schema>
 +</xsd:schema>
\ No newline at end of file diff --git a/common/res/resources/schemas/MOAIdentities.xsd b/common/res/resources/schemas/MOAIdentities.xsd new file mode 100644 index 000000000..f2aa8f8e0 --- /dev/null +++ b/common/res/resources/schemas/MOAIdentities.xsd @@ -0,0 +1,46 @@ +<?xml version="1.0" encoding="UTF-8"?>
 +<xs:schema targetNamespace="http://reference.e-government.gv.at/namespace/moa/20020822#/xmllpr20030814" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://reference.e-government.gv.at/namespace/moa/20020822#/xmllpr20030814" elementFormDefault="qualified" attributeFormDefault="unqualified">
 +	<xs:element name="MOAIdentities" >
 +		<xs:annotation>
 +			<xs:documentation>MOAIdentities provides a mapping from identities to parameters used in the XMLLoginParameterResolver of MOA-ID</xs:documentation>
 +		</xs:annotation>
 +	</xs:element>
 +	
 +	<xs:element name="MappingType">
 +	<xs:complexType>
 +		<xs:sequence maxOccurs="unbounded">
 +			<xs:element name="Identity">
 +				<xs:complexType>
 +					<xs:choice>
 +						<xs:element name="NamedIdentity" type="tns:NamedIdentityType"/>
 +						<xs:element name="bPKIdentity" type="tns:bPKIdentitiyType"/>
 +					</xs:choice>
 +				</xs:complexType>
 +			</xs:element>
 +			<xs:element name="Parameters" type="tns:ParametersType"/>
 +		</xs:sequence>
 +	</xs:complexType>
 +	</xs:element>
 +	
 +	<xs:complexType name="bPKIdentitiyType">
 +		<xs:simpleContent>
 +			<xs:extension base="xs:boolean">
 +				<xs:attribute name="bPK" type="xs:string" use="required"/>
 +			</xs:extension>
 +		</xs:simpleContent>
 +	</xs:complexType>
 +	<xs:complexType name="NamedIdentityType">
 +		<xs:simpleContent>
 +			<xs:extension base="xs:boolean">
 +				<xs:attribute name="SurName" type="xs:string" use="required"/>
 +				<xs:attribute name="GivenName" type="xs:string" use="required"/>
 +				<xs:attribute name="BirthDate" type="xs:string" use="optional"/>
 +			</xs:extension>
 +		</xs:simpleContent>
 +	</xs:complexType>
 +	<xs:complexType name="ParametersType">
 +		<xs:attribute name="UN" type="xs:string" use="optional"/>
 +		<xs:attribute name="PW" type="xs:string" use="optional"/>
 +	</xs:complexType>
 +
 +</xs:schema>
 diff --git a/common/src/at/gv/egovernment/moa/util/FileUtils.java b/common/src/at/gv/egovernment/moa/util/FileUtils.java index bb21f4ca0..ae8d83834 100644 --- a/common/src/at/gv/egovernment/moa/util/FileUtils.java +++ b/common/src/at/gv/egovernment/moa/util/FileUtils.java @@ -1,11 +1,10 @@  package at.gv.egovernment.moa.util;  import java.io.BufferedInputStream; +import java.io.File;  import java.io.FileInputStream;  import java.io.IOException;  import java.io.InputStream; -import java.net.URI; -import java.net.URISyntaxException;  import java.net.URL;  /** @@ -95,17 +94,19 @@ public class FileUtils {  	 */  	public static String makeAbsoluteURL(String url, String root) {  		//if url is relative to rootConfigFileDirName make it absolute 					 -		try { -			if(null == url) return  null; -			URI uri = new URI(url); -			if (!uri.isAbsolute()) { // make it absolute to the config file -				uri = new URI(root + url); -			} -			return uri.toString(); -		} catch (URISyntaxException e) { -			//if url string could not be converted to absolute URL return source url -			return url; -		} +		 +    File keyFile; +    String newURL = url; + +		if(null == url) return  null; + +    // check if absolute - if not make it absolute +    keyFile = new File(url); +    if (!keyFile.isAbsolute()) { +      keyFile = new File(root, url); +      newURL = keyFile.getPath(); +    } +    return newURL;  	}    } | 
