# PDF-AS Amtssignaturen Beispiel Konfigurationsdatei # # Diese Konfigurationsdatei gilt als Referenzbeispiel einer # Konfigurationsdatei für die PDF-AS Applikation. ############################################################## # Beim Signieren: Überprüfung ob Dokument PDF-Version 1.4 (oder weniger) hat strict_mode=false # Beim Signieren: # Wenn das Dokument nicht verarbeitet werden kann wird versucht es # zuerst zu korrigieren und dann das korrigierte Dokument zu signieren. correct_document_if_necessary=true # Beim Verifizieren: # Wenn das Dokument nicht verarbeitet werden kann wird versucht es # zuerst zu korrigieren und dann das korrigierte Dokument zu verifizieren. # Dies kann nur für textuelle Signaturen erfolgreich sein. correct_document_on_verify_if_necessary=true # Wenn ein Dokument korrigiert werden soll: # Gibt an mit welchem Corrector ein zu korrigierendes Dokument korrigiert wird: # internal - das Dokument wird mit dem "internen" iText Corrector korrigiert # external - das Dokument wird durch einen externen Kommandozeilenaufruf korrigiert. # Hinweis: ein externes Programm aufzurufen birgt gewisse Risiken in sich # und sollte daher möglichst nicht verwendet werden. corrector=internal # Kommandozeile für den externen Connector. # Die Variablen ##input_document## bzw. ##output_document## werden von PDF-AS # durch die absoluten Pfad- und Dateinamen des zu korrigierenden bzw. des # korrigierten Dokuments ersetzt. # Als Pfad-Separator sollte '/' verwendet werden. external_corrector_commandline=C:/correct.exe "##input_document##" "##output_document##" # Timeout (ms) für die Ausführung des externen Correctors. # Das Kommando wird abgebrochen, wenn das Timeout erreicht wird bevor # das Kommando abgearbeitet wurde. # Achtung: Es besteht allerdings keine Garantie, dass der Korrekturvorgang auch tatsächlich # durch ein Timeout abgebrochen wird. Dies ist im Wesentlichen abhängig von der Beschaffenheit # des Korrekturprogramms sowie vom verwendeten Betriebssystem. external_corrector_timeout=15000 # Überprüfe Korrektheit des Dokuments # bei binary_only=true: Fehler falls textuelle Signatur # bei assume_only_signature_blocks=false: Fehler falls inkremetelle Updates nach Signatur # In beiden Fällen wird check_old_textual_sigs berücksichtigt. check_document=true # Falls der letzte inkrementelle Updateblock keine Signatur enthält würde sofern # check_document=true gesetzt ist eine Exception geworfen werden und die Prüfung # abgebrochen werden. Mit diesem Schalter ist es möglich, diese Exception zu # unterdrücken, um die Auswertung extern vornehmen zu können (standard: false) # supress_exception_when_last_iublock_is_no_signature=false # Aktiviert, oder deaktiviert grundsätzlich das - potenziell zeit- und ressourcen-aufwaendige # Suchen nach Platzhalter-Bildern in PDF-Dokumenten # Festlegung fuer einzelnes Profil # sig_obj.PROFILE.enable_placeholder_search=[true|false] # Die Suche ist standardmässig aus Sicherheitsgruenden deaktiviert (Defaultwert hier = false) # Es muss bewusst sein, dass über einen Platzhalter benutzerseitig bestimmte Profile zur Signatur # ausgewaehlt werden koennen! enable_placeholder_search=false # VerificationFilterParameters binary_only=false assume_only_signature_blocks=false check_old_textual_sigs=true # MOA Detached Signieren aus Konsole möglich - zurzeit möglich nur mit BKU moa.sign.console.detached.enabled=false ############################################# # Signaturdienste # lokale BKU bku.available_for_web=true bku.available_for_commandline=true bku.sign.url=http://127.0.0.1:3495/http-security-layer-request #bku.sign.url=https://127.0.0.1:3496/https-security-layer-request bku.sign.KeyboxIdentifier=SecureSignatureKeypair # BKU Verifikation bku.verify.url=http://127.0.0.1:3495/http-security-layer-request #bku.verify.url=https://127.0.0.1:3496/https-security-layer-request # Online BKU (MOCCA) moc.available_for_web=true moc.available_for_commandline=false # MOCCA Signatur moc.sign.url=http://127.0.0.1:8080/bkuonline/http-security-layer-request moc.sign.KeyboxIdentifier=SecureSignatureKeypair # Handy Signatur mobile.sign.url=https://www.handy-signatur.at/mobile/https-security-layer-request/default.aspx mobile.sign.KeyboxIdentifier=SecureSignatureKeypair # Handy Signatur (Test) mobiletest.sign.url=https://test1.a-trust.at/https-security-layer-request/default.aspx mobiletest.sign.KeyboxIdentifier=SecureSignatureKeypair # MOA moa.available_for_web=true moa.available_for_commandline=true # MOA Signatur moa.sign.url=http://java-dev.datentechnik-innovation.com:8080/moa-spss/services/SignatureCreation moa.sign.KeyIdentifier=KG_Test-Signatur_RSA # MOA Verifikation moa.verify.url=http://java-dev.datentechnik-innovation.com:8080/moa-spss/services/SignatureVerification moa.verify.TrustProfileID=SecureSignature ############################################# # aktivierte/deaktivierte Signaturprofile include.01=profile.AMTSSIGNATURBLOCK_DE.properties include.02=profile.AMTSSIGNATURBLOCK_DE_DEPRECATED.properties include.03=profile.AMTSSIGNATURBLOCK_EN.properties include.04=profile.AMTSSIGNATURBLOCK_EN_DEPRECATED.properties include.05=profile.BAIK_ARCHIV_SIGNATUR.properties include.06=profile.BAIK_URKUNDE_SIGNATUR.properties include.07=profile.INVISIBLE.properties include.08=profile.SIGNATURBLOCK_DE.properties include.09=profile.SIGNATURBLOCK_DE_DEPRECATED.properties include.10=profile.SIGNATURBLOCK_DE_NOTE.properties include.11=profile.SIGNATURBLOCK_DE_PDFA.properties include.12=profile.SIGNATURBLOCK_DE_PDFA_NOTE.properties include.13=profile.SIGNATURBLOCK_EN.properties include.14=profile.SIGNATURBLOCK_EN_DEPRECATED.properties include.15=profile.SIGNATURBLOCK_EN_NOTE.properties include.16=profile.SIGNATURBLOCK_EN_PDFA.properties include.17=profile.SIGNATURBLOCK_EN_PDFA_NOTE.properties include.18=profile.SIGNATURBLOCK_MINIMAL_DE.properties include.19=profile.SIGNATURBLOCK_MINIMAL_EN.properties include.20=profile.SIGNATURBLOCK_SMALL_DE.properties include.21=profile.SIGNATURBLOCK_SMALL_DE_NOTE.properties include.22=profile.SIGNATURBLOCK_SMALL_EN.properties include.23=profile.SIGNATURBLOCK_SMALL_EN_NOTE.properties include.24=profile.VARIABLER_AMTSSIGNATURBLOCK_DE.properties ##################################################### # Standardfeldlängen der Felder für die Binärsignatur defaults.phlength.SIG_DATE=70 defaults.phlength.SIG_NUMBER=70 defaults.phlength.SIG_ISSUER=150 defaults.phlength.SIG_VALUE=350 defaults.phlength.SIG_ID=70 defaults.phlength.SIG_NAME=210 defaults.phlength.SIG_ALG=100 # Es möglich in die Werte (value) von eigens definierten Tabellenspalten dynamisch auf Teile des # verwendeten Zertifikats zuzugreifen. Konkret kann auf die einzelnen RDNs Teile des Issuer DN # und des Subject DN des Signaturzertifikats wie im folgenden Beispiel illustriert zugegriffen # werden: # (1) sig_obj.PROFIL.value.SIG_SUBJECT= ${subject.CN}${subject.O != null ? ("\n" + subject.O) : ""} # (2) sig_obj.PROFIL.value.SIG_SUBJECT= ${subject.T \!\= null ? (subject.T + " ") \: ""}${subject.CN} # Beispiel (1) gibt die Organisation des Unterzeichners an, Beispiel (2) Titel und Name # Die Notation ${..} ermöglicht die dynamische Auswertung eines Ausdrucks. Verfügbar sind "subject" # und "issuer" und die im Zertifikat DN vorhandenen RDNs. # Achtung: Für die binäre Signatur funktioniert diese Ersetzung nur für Werte, die als Replacement # definiert wurden. Konkret bedeutet dies, dass ein phlength Platzhalter definiert sein muss. # Als Maximalwerte sind in RFC5280 folgendes definiert: # CommonName ::= PrintableString (SIZE (1..ub-common-name-length)) # X520Title ::= CHOICE { # teletexString TeletexString (SIZE (1..ub-title)), # printableString PrintableString (SIZE (1..ub-title)), # etc.} # OrganizationName ::= PrintableString # (SIZE (1..ub-organization-name-length)) # mit jeweils ub-common-name, ub-title INTEGER oder ub-organization-name-length INTEGER ::= 64 # Für das oben angeführte Beispiel ist daher die folgende Definition erforderlich um die Ersetzungen # für Binärsignaturen zu aktivieren: # (1) sig_obj.PROFIL.phlength.SIG_SUBJECT=64 (Extraktion der Organisation) # (2) sig_obj.PROFIL.phlength.SIG_SUBJECT=128 (Titel + Name) # bzw. global defaults.phlength.SIG_SUBJECT=64 (Fall (1) bzw. 128 für Fall (2)) defaults.phlength.SIG_SUBJECT=128 # Binärsignatur: reservierter Platz für Zertifikat # profilweise: sig_obj.PROFILE.phlength.certificate=xyz defaults.phlength.certificate=10000 # Binärsignatur: reservierte Platz für Zeitstempel # profilweise: sig_obj.PROFILE.phlength.timestamp=xyz defaults.phlength.timestamp=5000 # Standardgröße des Fensters innerhalb dessen Zeilenumbrüche gesetzt werden dürfe. # profilweise: sig_obj.PROFILE.phlength.line_break_tolerance=xyz defaults.phlength.line_break_tolerance=10 # Falls die Breite eines Signaturblocks definiert wird (über API, Commandline oder über das Profil), # die unterhalb eines sinnvollen Wertes liegt, dann wird im Log eine Warnung ausgegeben, da # Signaturblöcke unter Umständen nicht mehr sinnvoll dargestellt werden können. # Der Standard-Schwellwert für diese Warnungen (= 150) kann global oder profilweise festgelegt # werden (z.B. um die Warnung zu deaktivieren, kann der Wert auf 0 gesetzt werden). # default.signature_block_width_warning_threshold=xyz # sig_obj.PROFILE.signature_block_width_warning_threshold=xyz # PDF/A-1b Unterstützung für alle Profile einschalten default.SIG_PDFA1B_VALID=false # BAIK-Signatur Unterstützung für alle Profile einschalten default.SIG_BAIK_ENABLED=false ############################################### # Signaturkennzeichnung (für Adobe Acrobat) # # Jede dieser globalen Einstellungen kann im jeweiligen Profil individuell gesetzt werden. # z.B. sig_obj.PROFILE.adobeSignText.binary=Mein Signator # Adobe Signaturkennzeichnung ein-/ausschalten default.adobeSignEnabled=true # Standard Name für die Signaturkennzeichnung (binär) default.adobeSignText.binary=PDF-AS # Standard Name fuer die Signaturkennzeichnung (textuell) default.adobeSignText.textual=PDF-AS # Standard-Name für die PDF-Signatur default.adobeSignFieldValue=PDF-AS Signatur # Standardwert für "Reason"-Feld der jeweiligen Signatur default.adobeSignReasonValue=Informationen zur Prüfung finden Sie unter http://www.signaturpruefung.gv.at # Standard Prüflink für die Adobe Signaturkennzeichnung (nur relevant falls Adobe Plugin für Prüfung verwendet wird) default.verifyURL=http://www.signaturpruefung.gv.at # Standard Alternativer Text für den Signaturblock (WAI) (globale Einstellung) # profilweise: sig_obj.PROFILE.sigLogoAltText=VALUE default.sigLogoAltText=Abgebildet ist eine Standard-Signaturbildmarke. # Profilspezifische Festlegung der Position der Signaturmarke # sig_obj.PROFILE.pos=[p:["auto"|"new"|pagenumber];][x:["auto"|floatvalue];][y:["auto"|floatvalue];][w:["auto"|width_floatvalue];][f:footerheight_floatvalue] # sig_obj.PROFILE.pos=p:1;x:40.0;y:800.0;w:400.0;f:80 # font definition: face,height,weight # default_font: HELVETICA,8,NORMAL # font_face: HELVETICA | TIMES_ROMAN | COURIER # font_height: float value # font_weight: NORMAL | BOLD | ITALIC | BOLDITALIC | UNDERLINE | STRIKETHRU # Horizontale Ausrichtung # sig_obj.PROFILE.table.TABLE_NAME.Style.halign=[left|center|right] # sig_obj.PROFILE.table.TABLE_NAME.Style.valuehalign=[left|center|right] # sig_obj.PROFILE.table.TABLE_NAME.Style.imagehalign=[left|center|right] # Vertikale Ausrichtung # sig_obj.PROFILE.table.TABLE_NAME.Style.valign=[bottom|middle|top] # sig_obj.PROFILE.table.TABLE_NAME.Style.valuevalign=[bottom|middle|top] # sig_obj.PROFILE.table.TABLE_NAME.Style.imagevalign=[bottom|middle|top] ############################################# # start additional LDAP-Mappings # note: ldap_mapping.xxx.serial_attr may be omitted if value is "eidCertificateSerialNumber" # A-Trust Sample #ldap_mapping.asign_prem_sig01.issuer_name=CN=a-sign-Premium-Sig-01,OU=a-sign-Premium-Sig-01,O=A-Trust Ges. f. Sicherheitssysteme im elektr. Datenverkehr GmbH,C=AT #ldap_mapping.asign_prem_sig01.url=ldap://ldap.a-trust.at/ou=a-sign-Premium-Sig-01,o=A-Trust,c=at #ldap_mapping.asign_prem_sig01.serial_attr=eidCertificateSerialNumber # end LDAP-Mappings #############################################