aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrudolf <rudolf@d688527b-c9ab-4aba-bd8d-4036d912da1d>2003-12-18 19:19:09 +0000
committerrudolf <rudolf@d688527b-c9ab-4aba-bd8d-4036d912da1d>2003-12-18 19:19:09 +0000
commit98bbfa11070a62956d7e2663a82f19fd048d1d5e (patch)
treed1cfb3bd6fdbb73715900de364fca2e5842e1682
parentc25c7601e6b1acdd95a167a08883452dbbb75690 (diff)
downloadmoa-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.xsd110
-rw-r--r--common/res/resources/schemas/MOAIdentities.xsd46
-rw-r--r--common/src/at/gv/egovernment/moa/util/FileUtils.java27
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;
}
}