-
- MOA-SP/SS
-
-
-
-
- Konfiguration
-
-
-
-
-
-
- |
-
-
- Konfiguration der SP/SS-Module
-
-
-SP/SS-Konfigurationsdatei
-
-Die Konfiguration von MOA SP/SS wird mittels einer XML-basierten Konfigurationsdatei, die dem Schema MOA-SPSS-Configuration-1.0.xsd entspricht, durchgeführt.
-
-Der Ort der Konfigurationsdatei wird im Abschnitt Deployment der Web-Applikation in Tomcat beschrieben.
-
-Die folgenden Abschnitte erläutern das Format der Konfigurationsdatei.
-MOA-SPSSConfiguration.xml zeigt ein Beispiel
-für eine umfassende Konfigurationsdatei.
-
-Enthält die Konfigurationsdatei relative Pfadangaben, werden diese relativ zum Verzeichnis, in dem die Konfigurationsdatei
-gespeichert ist, interpretiert.
-
-
-
-CanonicalizationAlgorithm
-Als Inhalt des Elements CanonicalizationAlgorithm kann der Kanonisierungs-Algorithmus, der für das Erstellen von XML Signaturen verwendet werden soll und in der Signatur als Inhalt von /dsig:Signature/dsig:SignedInfo/dsig:CanonicalizationMethod aufscheint, spezifiziert werden.
-
-Gültige Werte:
-http://www.w3.org/TR/2001/REC-xml-c14n-20010315
-http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments
-http://www.w3.org/2001/10/xml-exc-c14n#
-http://www.w3.org/2001/10/xml-exc-c14n#WithComments
-
-
-Default-Wert: http://www.w3.org/TR/2001/REC-xml-c14n-20010315
-
-
-
-
-
-DigestMethodAlgorithm
-Als Inhalt des Elements DigestMethodAlgorithm kann der Digest-Algorithmus spezifiziert werden, der in der Signatur als Inhalt von dsig:Reference/dsig:DigestMethod aufscheint.
-
-Gültige Werte: http://www.w3.org/2000/09/xmldsig#sha1
-
-Default-Wert: http://www.w3.org/2000/09/xmldsig#sha1
-
-
-
-
-
-GenericConfiguration
-Das Element GenericConfiguration ermöglicht das Setzen von Namen-Werte Paaren mittels der Attribute name und value. Die folgende Liste spezifiziert
-
-- gültige Werte für das name-Attribut,
-- eine Beschreibung
-- gültige Werte für das value-Attribut und
-- den Default-Wert für das value-Attribut.
-
-
-
-name: autoAddCertificate |
-
-Gibt an, ob Zertifikate, die in der Signtur enthalten sind bzw. bei der Zertifikatspfaderstellung verwendet werden,
-automatisch im Zertifikatsspeicher
-(siehe Parameter DirectoryCertStoreParameters.RootDir)
-gespeichert werden sollen (siehe auch Parameter
-useAuthorityInfoAccess).
-
-value:
-Gültige Werte: true/false
-Default-Wert: true
- |
-
-
-name: DirectoryCertStoreParameters.RootDir |
-
-Gibt den Pfadnamen zum Verzeichnis an, das als Zertifikatsspeicher verwendet wird.
-
-value:
-Gültige Werte: Name eines Verzeichnisses, das Verzeichnis muss noch nicht existieren
-Default-Wert: certstore
- |
-
-
-
-name: useAuthorityInfoAccess |
-
-Gibt an, ob die Zertifikatserweiterung AuthorityInformationAccess für die Zertifikatspfaderstellung verwendet
-werden soll. Wird der Wert auf true gesetzt, dann setzt MOA auch autoAddCertificate automatisch
-auf true und ignoriert den Wert aus der Konfigurationsdatei.
-
-value:
-Gültige Werte: true/false
-Default-Wert: true
- |
-
-
-
-name: checkRevocation |
-
-Gibt ab, ob bei der Zertifikatsüberprüfung auch der Zertifikatsstatus überprüft werden soll. Der Zertifikatsstatus
-wird mittels Certificate Revocation Lists (CRL) überprüft.
-
-value:
-Gültige Werte: true/false
-Default-Wert: true
- |
-
-
-
-name: maxRevocationAge |
-
-Wenn der Zertifikatsstatus überprüft werden soll (siehe Parameter checkRevocation),
-gibt dieser Parameter an, wann eine aktuelle Revozierungsinformation (CRL) geladen werden soll.
-
-value:
-Gültige Werte:
-
-- negativer Wert: bei jedem Zugriff auf Revozierungsinformation wird eine aktuelle Revozierungsinformation geladen
-- 0: eine neue Revozierungsinformation wird zu dem Zeitpunkt geladen, der im nextUpdate-Feld der CRL spezifiziert ist
-- positiver Wert: Zeitspanne in Millisekunden, die eine Revozierungsinformation ohne neuerliche Abfrage verwendet werden darf
-
-Default-Wert: 0
- |
-
-
-name: archiveRevocationInfo |
-
-Gibt an, ob Revozierungsinformation archiviert werden soll
-(siehe auch Parameter DataBaseArchiveParameter.JDBCUrl).
-
-
-value:
-Gültige Werte: true/false
-Default-Wert: false
- |
-
-
-
-
- name: DataBaseArchiveParameter.JDBCUrl |
-
-
- Gibt eine JDBC-URL zur Datenbank an, in der
- Revozierungsinformation archiviert werden soll. Wird dieser
- Parameter nicht gesetzt, dann wertet MOA den Parameter archiveRevocationInfo
- nicht aus der Konfigurationsdatei aus sondern setzt den
- Wert automatisch auf false.
- Der genaue Aufbau der JDBC-URL ist abhängig von der verwendeten
- Datenbank. Im Fall von PostgreSQL kann folgende URL verwendet
- werden: jdbc:postgresql://host/moadb?user=moauser&password=moapassword
- wobei host, moadb, moauser und moapassword
- an die tatsächlich verwendete Datenbank angepasst werden
- muss.
- Die Verwendung von "&" ist erforderlich,
- da "&" einen Fehler bei der Validierung der
- Konfigurationsdatei verursacht.
- Die Archivdaten werden nur MOA-SPSS-intern benötigt und
- das Format ist daher für den Betrieb des Servers nicht relevant.
-
- value:
- Gültige Werte: String |
-
-
-
-
- name: DataBaseArchiveParameter.JDBCDriverClass |
-
-
-
- Dieser Parameter kann verwendet werden, um MOA SPSS den
- Klassennamen des JDBC-Datenbanktreibers bekannt zu geben,
- der zur Ansprache der für die CRL-Archivierung zu
- verwendenden Datenbank benützt werden soll. Er muss
- den vollständig qualifizierten Klassennamen der JDBC-Treiberklasse
- enthalten.
-
- Der Parameter wird nur dann ausgewertet, wenn der generische
- Konfigurationsparameter archiveRevocationInfo
- auf den Wert true gesetzt ist.
- Hinweis: Wird im generischen Konfigurationsparameter
- DataBaseArchiveParameter.JDBCUrl entweder eine
- postgreSQL- oder eine mySQL-Datenbank referenziert, braucht
- dieser Paramter nicht angegeben zu werden; in diesen Standardfällen
- erfolgt eine automatische Zuordnung zur passenden JDBC-Treiberklasse.
-
- value:
- Gültige Werte: vollständig qualifizierter Java-Klassenname |
-
-
-
-
-
-
-HardwareKeyModule
-Mittels dieses Elements werden Hardware-Key-Module konfiguriert. HardwareKeyModule hat vier Attribute:
-
-
-Attribut-Name | Attribut-Typ | Beschreibung |
-
-id | token |
-eine vom Administrator gewählte Bezeichnung für das Key-Modul; diese id wird von KeyGroup/Key/KeyModuleID referenziert. |
-
-
-name | string |
-der Name des PKCS#11-Moduls; der Name enthält den Dateinamen der DLL (Windows) oder der Shared-Library
-(Unix), die das PKCS#11-Modul implementiert; der Wert enthält entweder einen Dateinamen mit absoluter Pfadangabe bzw.
-einen Dateinamen ohne Pfadangabe. Im letzteren Fall wird der Dateiname relativ zum Suchpfad des Betriebssystems
-interpretiert. |
-
-
-slotID | string |
-ein spezifischer Slot des PKCS#11 HW Moduls; das Attribut ist optional, wird keine slotID spezifiziert, dann selektiert MOA SP/SS einen Slot für die Signaturerstellung. |
-
-
-userPIN | string |
-der PIN für die Aktivierung des privaten Schlüssels |
-
-
-
-
-
-
-SoftwareKeyModule
-Mittels dieses Elements werden Software-Key-Module in Form von PKCS#12-Dateien konfiguriert. SoftwareKeyModule hat drei Attribute:
-
-
-Attribut-Name | Attribut-Typ | Beschreibung |
-
-id | token |
-eine vom Administrator gewählte Bezeichnung für das Key-Modul; diese id wird von KeyGroup/Key/KeyModuleID referenziert. |
-
-
-filename | string |
-der Dateiname der PKCS#12-Datei; das Attribut enthält entweder einen absoluten Pfadnamen oder einen
-Pfadnamen relativ zur MOA SP/SS Konfigurationsdatei. |
-
-
-password | string |
-das Passwort zur Aktivierung des privaten Schlüssels in der PKCS#12-Datei |
-
-
-
-
-
-
-KeyGroup
-Eine KeyGroup ist eine Zusammenfassung mehreren Keys in eine Gruppe. Der durch das Attribut id definierte Bezeichner
-dieser KeyGroup wird im CreateXMLSignatureRequest im Element KeyIdentifier verwendet. MOA-SS wählt einen Schlüssel
-aus der KeyGroup für die Signaturerstellung aus. Durch die Zusammenfassung mehrere Schlüssel in eine Gruppe
-kann die Verfügbarkeit und der Durchsatz der Signaturerstellung erhöht werden.
-Das Kind-Element Key identifiziert einen privaten Schlüssel.
-Ein Schlüssel wird durch das Element KeyModuleID (siehe z.B. SoftwareKeyModule/@id), Issuer
-und Seriennummer des zum Schlüssel gehörigen Zertifikats im Element KeyCertIssuerSerial bezeichnet.
-
-Die Konfiguration des Elements Key erfolgt in einem 2-stufigen Prozess:
-
-- Zuerst werden die verwendeten PKCS#12-Dateien und PKCS#11-Module als Elemente HardwareKeyModule und SoftwareKeyModule in der Konfigurationsdatei erfasst
-- Beim Starten des MOA SP/SS-Servers werden die verfügbaren Schlüssel im Log-File aufgelistet:
-
-INFO | 10 12:56:43,023 | main |
- Key ID=SWKeyModule1;
- CN=IAIK Test CA,OU=IAIK Test CA,
- OU=Insitute for Applied Information
- Processing and Communications,
- O=GRAZ UNIVERSITY OF TECHNOLOGY,C=AT;
- 1044289238331
-INFO | 10 12:56:43,023 | main |
- Key ID=SWKeyModule2;
- CN=IAIK Test CA,OU=IAIK Test CA,
- OU=Insitute for Applied Information
- Processing and Communications,
- O=GRAZ UNIVERSITY OF TECHNOLOGY,C=AT;
- 1044289238331
-INFO | 10 12:56:43,023 | main |
- Key ID=SWKeyModule3;
- CN=IAIK ECDSA Test,OU=JavaSecurity,O=IAIK,C=AT;
- 68172
-INFO | 10 12:56:43,023 | main |
- Key ID=SWKeyModule4;
- CN=IAIK DSA Test CA,OU=JavaSecurity,O=IAIK,C=AT;
- 761791
-
-- Für jeden verfügbaren Schlüssel werden die Inhalte der Elemente Key/KeyModuleID, Key/KeyCertIssuerSerial/X509IssuerName und Key/KeyCertIssuerSerial/X509SerialNumber dem Log-File entnommen und in die Konfigurationsdatei eingetragen
-- Nach einem neuerlichen Start von MOA SP/SS stehen die Key-Definitionen zur Verfügung
-
-
-Sind die zu den zu konfigurierenden Schlüsseln zugehörigen Zertifikate bekannt,
-kann alternativ die Konfiguration in einem Schritt erfolgen, indem
-die benötigten Informationen mit dem Skript certtool -info <certfilename> aus dem Zertifikat gelesen werden.
-<certfilename> bezeichnet den Dateinamen eines X.509 Zertifikates in DER-Kodierung.
-
-certtool ist im Verzeichnis $MOA_SPSS_INST/tools abgelegt.
-
-
-
-KeyGroupMapping
-Das Element KeyGroupMapping ordnet einem Client von MOA SS die ihm zur Verfügung stehenden KeyGroups zu, indem das
-den Client repräsentierende TLS Client-Zertifikat (Element X509IssuerSerial) mit einer oder mehreren KeyGroups
-assoziiert wird.
-Enthält das Element KeyGroupMapping kein Element X509IssuerSerial, dann können die in diesem Element definierten
-KeyGroups von jedem Client (auch ohne TLS Client Authentisierung) verwendet werden.
-
-
-
-
-ChainingModes
-Das Element ChainingModes definiert, ob bei der Zertifikatspfadüberprüfung das Kettenmodell ("chaining") oder das Modell nach PKIX RFC 3280 ("pkix") verwendet werden soll.
-
-Das Attribut systemDefaultMode spezifiziert das Modell, das im Standardfall verwendet werden soll.
-Mit dem Kind-Element TrustAnchor kann für jeden Trust Anchor ein abweichendes Modell spezifiziert werden.
-Ein Trust Anchor ist ein Zertifikat, das im TrustProfile spezifiziert ist (Erklärung siehe
-TrustProfile).
-Ein Trust Anchor wird durch den Typ dsig:X509IssuerSerialType spezifiziert.
-Das für diesen Trust Anchor gültige Modell wird durch das Attribut mode spezifiziert.
-
-Gültige Werte für die Attribute systemDefaultMode und mode sind "chaining" und "pkix".
-
-
-
-
-CRLArchive
-Im Attribut duration wird spezifiziert, wie lange (in Tagen) gecachte CRLs archiviert werden müssen.
-
-
-
-
-CRLDistributionPoint
-Das Element CRLDistributionPoint dient zum Spezifizieren von URLs, die auf CRLs von CAs (Zertifikatsaussteller) verweisen.
-Eine CA wird über das Element CAIssuerDN identifiziert, das den Issuer-DN der CA als String enthält. CRLDistributionPoint kann
-das Element DistributionPoint einmal oder mehrmals enthalten. Das Element DistributionPoint hat zwei Attribute:
-
-- der Wert des Attributs uri enthält den CRL Distribution Point; es werden die Protokolle HTTP, HTTPS und LDAP
-unterstützt.
-- der Wert des optionalen Attributs reasonCodes (vom Typ NMTOKENS) enthält eine Liste von Reason Codes
-(nach RFC 3280). Die über uri referenzierte CRL enthält nur CRL Einträge mit den spezifizierten Reason Codes.
-Wird der Wert dieses Attributs nicht gesetzt dann kann die CRL Einträge mit allen reason codes enthalten.
-Gültige Werte:
-unspecified, keyCompromise, cACompromise, affiliationChanged, superseded,
-cessationOfOperation, certificateHold, removeFromCRL, privilegeWithdrawn, aACompromise
-
-
-
-
-
-CreateSignatureEnvironmentProfile
-CreateTransformsInfoProfile
-VerifyTransformsInfoProfile
-SupplementProfile
-Jedes dieser Elemente enthält das Attribut id und das Attribut filename. Das Attribut id bezeichnet das Profil
-wie es im CreateXMLSignatureRequest bzw. VerifyXMLSignatureRequest tatsächlich referenziert wird.
- Das Attribut filename bezeichnet die Datei, die die
-entsprechenden Elemente gemäß MOA SP/SS Schemas [MOA SP/SS Schema] beinhaltet. Die Datei beinhaltet wohlgeformtes
-XML mit genau einem Element als Dokumentelement.
-
-Die folgende Tabelle bezeichnet jene Elemente, die in den Dateien als Dokumentelement verwendet werden müssen:
-
-
-Profilname | Wurzelelement |
-
-CreateSignatureEnvironmentProfile | CreateSignatureEnvironmentProfile |
-
-
-CreateTransformsInfoProfile | CreateTransformsInfoProfile |
-
-
-VerifyTransformsInfoProfile | VerifyTransformsInfoProfile |
-
-
-SupplementProfile | SupplementProfile |
-
-
-
-
-
-
-
-
-TrustProfile
-Ein TrustProfile enthält Zertifikate, die als vertrauenswürdig betrachtet werden. Vertrauenswürdige Zertifikate können
-selbst-signierte Wurzel-Zertifikate, Zertifikate von Zwischen CAs oder End-Entity Zertifikate sein. Für die
-erfolgreiche Überprüfung eines Zertifikats muss (unter anderem) ein Zertifikatspfad zu einem Zertifikat aufgebaut
-werden können, das in jenem Trustprofile enthalten ist, welches im Verify-Request bezeichnet ist.
-
-TrustProfile enthält zwei Attribute:
-
-- Das Attribut id spezifiziert die TrustProfileID wie sie im Message-Format von MOA-SP referenziert wird
-- Das Attribut uri spezifiziert eine URL, die ein Verzeichnis im lokalen Dateisystem referenziert
-(nur das Schema file wird unterstützt). Alle für diese TrustProfileID vertrauenswürdigen
-Zertifikate werden in diesem Verzeichnis gespeichert.
-
-
-
- |