<?xml version="1.0" encoding="UTF-8"?> <!-- Schema für die zentrale Konfigurationsdatei von MOA SP/SS. Gültig für die Versionen 1.0, 1.1 und 1.2. (c) Stabsstelle IKT-Strategie des Bundes im Bundeskanzleramt, österreich --> <xs:schema targetNamespace="http://reference.e-government.gv.at/namespace/moaconfig/20021122#" xmlns:config="http://reference.e-government.gv.at/namespace/moaconfig/20021122#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> <xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd"/> <xs:element name="MOAConfiguration"> <xs:complexType> <xs:sequence> <xs:element name="CanonicalizationAlgorithm" minOccurs="0"> <xs:complexType> <xs:attribute name="name" type="xs:anyURI" use="required"/> </xs:complexType> </xs:element> <xs:element name="DigestMethodAlgorithm" minOccurs="0"> <xs:complexType> <xs:attribute name="name" type="xs:anyURI" use="required"/> </xs:complexType> </xs:element> <xs:element name="SignatureAlgorithm" minOccurs="0"> <xs:complexType> <xs:attribute name="name" type="xs:anyURI" use="required"/> </xs:complexType> </xs:element> <xs:element name="GenericConfiguration" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:attribute name="name" type="xs:string" use="required"/> <xs:attribute name="value" type="xs:string" use="required"/> </xs:complexType> </xs:element> <xs:element name="HardwareCryptoModule" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>dient zum Konfigurieren von HW Crypto-Module via PKCS#11 (s. iaik.server.modules.crypto.HarwwareCryptoModuleConfiguration)</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="name" type="xs:string" use="required"/> <xs:attribute name="slotID" type="xs:string" use="optional"/> <xs:attribute name="userPIN" type="xs:string" use="required"/> </xs:complexType> </xs:element> <xs:element name="HardwareKeyModule" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>dient zum Konfigurieren von HW Key-Module via PKCS#11 (s. iaik.server. modules.crypto.HardwareKeyModuleConfiguration</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="id" type="xs:token" use="required"/> <xs:attribute name="name" type="xs:string" use="required"/> <xs:attribute name="slotID" type="xs:string" use="optional"/> <xs:attribute name="userPIN" type="xs:string" use="required"/> </xs:complexType> </xs:element> <xs:element name="SoftwareKeyModule" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>dient zum Konfigurieren von SW Key-Module via PKCS#12 Dateien (s. iaik. server.modules.crypto.SoftwareKeyModuleConfiguration</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="id" type="xs:token" use="required"/> <xs:attribute name="filename" type="xs:string" use="required"/> <xs:attribute name="password" type="xs:string" use="optional"/> </xs:complexType> </xs:element> <xs:element name="KeyGroup" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>definiert eine Gruppe von Keys</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence maxOccurs="unbounded"> <xs:element name="Key"> <xs:annotation> <xs:documentation>Ein Schlüssel wird bezeichnet durch ein Tripel bestehend aus der ID des KeyModules (siehe z.B. SoftwareKeyModule/@id), sowie Issuer und Seriennummer des zum Schlüssel gehörigen Zertifikats</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="KeyModuleID" type="xs:token"/> <xs:element name="KeyCertIssuerSerial" type="dsig:X509IssuerSerialType"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="id" type="xs:token" use="required"/> </xs:complexType> </xs:element> <xs:element name="KeyGroupMapping" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>ordnet oben definierte KeyGroups Online-Applikationen zu, die diese KeyGroups verwenden dürfen</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="X509IssuerSerial" type="dsig:X509IssuerSerialType" minOccurs="0"> <xs:annotation> <xs:documentation>wenn das Element nicht auftritt, dann können die zugeordneten KeyGroups von allen Online-Applikationen verwendet werden</xs:documentation> </xs:annotation> </xs:element> <xs:element name="KeyGroup" maxOccurs="unbounded"> <xs:complexType> <xs:attribute name="id" type="xs:token" use="required"/> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="ChainingModes" minOccurs="0"> <xs:annotation> <xs:documentation>spezifiziert den Algorithmus ("pkix" oder "chaining") für die Zertifikatspfadvalidierung</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence minOccurs="0" maxOccurs="unbounded"> <xs:element name="TrustAnchor"> <xs:annotation> <xs:documentation>ein vom SystemDefaultMode abweichender ChiningMode kann für jeden TrustAnchor gesetzt werden</xs:documentation> </xs:annotation> <xs:complexType> <xs:complexContent> <xs:extension base="dsig:X509IssuerSerialType"> <xs:attribute name="mode" type="config:ChainingModeType" use="required"/> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="systemDefaultMode" type="config:ChainingModeType" use="optional" default="pkix"/> </xs:complexType> </xs:element> <xs:element name="CRLArchive" minOccurs="0"> <xs:annotation> <xs:documentation>spezifiziert die Dauer, die Revozierungsinformation archiviert werden muss in Tagen</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="duration" type="xs:nonNegativeInteger" use="required"/> </xs:complexType> </xs:element> <xs:element name="CRLDistributionPoint" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>spezifiziert CRL Distribution Points</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="CAIssuerDN" type="xs:string"> <xs:annotation> <xs:documentation>spezifiziert die CA, für die der u.a. DP verwendet werden soll</xs:documentation> </xs:annotation> </xs:element> <xs:element name="DistributionPoint" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>das Attribut reasonCodes enthält eine Liste von möglichen reasonCodes lt. RFC 3280: unspecified, keyCompromise, cACompromise, affiliationChanged, superseded, cessationOfOperation, certificateHold, removeFromCRL, privilegeWithdrawn, aACompromise </xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="reasonCodes" type="xs:NMTOKENS" use="optional"/> <xs:attribute name="uri" type="xs:anyURI" use="required"/> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="CreateTransformsInfoProfile" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>ordnet eine Datei, die ein CreateTransformsInfoProfile-Element enthält, einer id zu</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="id" type="xs:token" use="required"/> <xs:attribute name="filename" type="xs:string" use="required"/> </xs:complexType> </xs:element> <xs:element name="CreateSignatureEnvironmentProfile" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>ordnet eine Datei, die ein CreateSignatureEnvironmentProfile-Element enthält, einer id zu</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="id" type="xs:token" use="required"/> <xs:attribute name="filename" type="xs:string" use="required"/> </xs:complexType> </xs:element> <xs:element name="VerifyTransformsInfoProfile" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>ordnet eine Datei, die ein VerifyTransformsInfoProfile-Element enthält, einer id zu</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="id" type="xs:token" use="required"/> <xs:attribute name="filename" type="xs:string" use="required"/> </xs:complexType> </xs:element> <xs:element name="SupplementProfile" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>ordnet eine Datei, die ein SupplementProfile-Element enthält, einer id zu</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="id" type="xs:token" use="required"/> <xs:attribute name="filename" type="xs:string" use="required"/> </xs:complexType> </xs:element> <xs:element name="TrustProfile" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>ordnet ein Verzeichnis, das vertrauenswürdige Zertifikate enthält einer id zu</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="id" type="xs:token" use="required"/> <xs:attribute name="uri" type="xs:anyURI" use="required"/> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:simpleType name="ChainingModeType"> <xs:restriction base="xs:string"> <xs:enumeration value="chaining"/> <xs:enumeration value="pkix"/> </xs:restriction> </xs:simpleType> </xs:schema>