www.egiz.gv.at E-Mail: [email protected] Telefon: ++43 (316) 873 5514 Fax: ++43 (316) 873 5520 Inffeldgasse 16a / 8010 Graz / Austria Beschreibung und Bedienungsanleitung Demo-Behörde und Fremd-bPK Dipl.-Ing. Mario Ivkovic Graz, am 15. Februar 2007 Inhaltsverzeichnis: 1 Allgemeines..................................................................................................................... 2 1.1 Begriffsbestimmungen .............................................................................................. 2 1.2 Dokumentenaustausch mit SZRB-Abfrage ............................................................... 3 2 Bedienungsanleitung ....................................................................................................... 4 3 Konfiguration ................................................................................................................... 7 4 Lizenz und Source Code ................................................................................................. 8 Abbildungsverzeichnis: Abb. 1.1: Szenario: Dokumentenaustausch mit SZRB-Abfrage .............................................. 4 Abb. 2.1: Demo-Behörde und Fremd-bPKs ............................................................................ 5 Abb. 2.2: Eintrag hinzufügen .................................................................................................. 5 1 Allgemeines Dieses Dokument dient einerseits der Beschreibung der kostenlos vom EGIZ zur Verfügung gestellten Applikation Demo-Behörde und Fremd-bPKs, als auch einer allgemeinen Beschreibung der Rolle von Fremd-bPKs und verschlüsselten bPKs beim Dokumentenaustausch. Zur Erstellung von Fremd-bPKs werden Zertifikate bzw. die darin enthaltenen öffentlichen Schlüssel benötigt. Diese Zertifikate können mit dem Fremd-bPK-CA Tool1, welches ebenfalls kostenlos zur Verfügung gestellt wird, erzeugt und an die Stammzahlenregisterbehörde SZRB gesendet werden. 1.1 Begriffsbestimmungen Bereichsspezifisches Peronenkennzeichen – bPK Auszug aus E-GovG2: § 9. (1) Das bereichsspezifische Personenkennzeichen wird durch eine Ableitung aus der Stammzahl der betroffenen natürlichen Person gebildet. Die Identifikationsfunktion dieser Ableitung ist auf jenen staatlichen Tätigkeitsbereich beschränkt, dem die Datenanwendung zuzurechnen ist, in der das Personenkennzeichen verwendet werden soll (bereichsspezifisches Personenkennzeichen, bPK). Die Zurechnung einer Datenanwendung zu einem bestimmten staatlichen Tätigkeitsbereich ergibt sich - soweit sie nicht unter § 17 Abs. 2 Z 1 bis 3 oder Abs. 3 fällt - aus ihrer Registrierung im Datenverarbeitungsregister oder aus der Standard- und Musterverordnung gemäß § 17 Abs. 2 Z 6 DSG 2000. Das bPK ist somit ein eindeutiges Kennzeichen einer natürlichen Person für einen bestimmten Tätigkeitsbereich. Es ist technisch nicht möglich aus dem bPK einer Person Rückschlüsse auf deren Stammzahl vorzunehmen. Weiters ist es nicht möglich aus einem gegebenen bPK, das bPK für einen anderen Tätigkeitsbereich zu berechnen. Bei einer bereichsübergreifenden Kommunikation von Behörden ist es, für eine eindeutige Identifikation der Person, notwendig, das bPK des „fremden“ Bereiches mitanzugeben. Da es, wie schon oben erwähnt, einer Behörde jedoch nicht möglich ist ein bPK für den anderen Bereich zu berechnen, wurde das verschlüsselte Fremd-bPK eingeführt. Fremd-bPK Auszug aus E-GovG: § 13. (2) Ist es zum Zweck der eindeutigen Identifikation eines Betroffenen gemäß § 10 Abs. 2 zulässig, von der Stammzahlenregisterbehörde ein bereichsspezifisches Personenkennzeichen anzufordern, ist dieses, sofern es sich um ein Fremd-bPK handelt das ist ein bPK aus einem Bereich, in dem der Anfordernde nicht zur Vollziehung berufen ist - von der Stammzahlenregisterbehörde nur verschlüsselt zur Verfügung zu stellen. Die Verschlüsselung ist so zu gestalten, dass 1. nur derjenige entschlüsseln kann, in dessen Datenanwendung das bPK in entschlüsselter Form zulässigerweise verwendet werden darf (Abs. 3), und 2. durch Einbeziehung von zusätzlichen, dem Anfordernden nicht bekannten variablen Angaben in die Verschlüsselungsbasis das bPK auch in verschlüsselter Form keinen personenbezogenen Hinweis liefert. 1 http://demo.a-sit.at/it_sicherheit/ca_toolkit/index.html Bundesgesetz über Regelungen zur Erleichterung des elektronischen Verkehrs mit öffentlichen Stellen (E-GovernmentGesetz - E-GovG) 2 2 Eine Behörde kann sich von der SZRB, mit Hilfe der ihr bekannten Personendaten und der dazugehörigen bPK, ein Fremd-bPK für einen fremden Bereich berechnen lassen. Da dieses Fremd-bPK nur verschlüsselt zur Verfügung gestellt wird kann die Behörde daraus nicht das bPK der betreffenden Person für den fremden Bereich extrahieren. Die Behörde aus dem anderen Tätigkeitsbereich kann aber mit dem nur Ihr bekannten privaten Schlüssel das verschlüsselte Fremd-bPK entschlüsseln und somit das bPK extrahieren. In diesem Dokument ist mit Fremd-bPK stets die verschlüsselte Variante gemeint, da ja ohnehin nur solche von der SZRB zur Verfügung gestellt werden. Verschlüsseltes bPK Das verschlüsselte bPK ist, rein technisch gesehen, gleich aufgebaut wie das oben beschriebene verschlüsselte Fremd-bPK, mit dem einzigen Unterschied das es für den eigenen Bereich erstellt wurde und nicht wie üblich für einen fremden Bereich. Somit erhält man als Resultat der Entschlüsselung wieder das bereichsspezifische Personenkennzeichen für den eigenen Bereich. Für die Berechnung eines verschlüsselten bPKs wird in der Regel keine Kommunikation mit der SZRB benötig, da ja alle für die Berechnung notwendigen Komponenten der jeweiligen Behörde bekannt sind. Wofür verschlüsselte bPKs benötigt werden, wird anhand eines Beispieles im folgenden Kapitel näher erläutert. 1.2 Dokumentenaustausch mit SZRB-Abfrage In diesem Abschnitt wird die Verwendung von Fremd-bPKs und verschlüsselten bPKs anhand eines praxisbezogenen Beispiels näher erläutert. Angenommen Behörde A möchte der Behörde B ein personenbezogenes Dokument anonymisiert zusenden. In diesem Fall bedeutet anonymisiert dass niemand außer diesen beiden Behörden aus den übertragenen Daten feststellen kann auf welche natürliche Person sich das übermittelte Dokument bezieht und dass keine der beiden Behörden das bPK der Person für den jeweils anderen Bereich erfährt. 3 SZRB 1. 4. Fremd-bPKB Fremd-bPKB bPKB privater Schlüssel-B 2. Dokument Fremd-bPKB Verschlüsseltes-bPKA 3. Behörde A Behörde B 5. Verschlüsseltes-bPKA Dokument 6. Verschlüsseltes-bPKA bPKA privater Schlüssel-A Abb. 1.1: Szenario: Dokumentenaustausch mit SZRB-Abfrage Ablauf: 1. Behörde A stellt, mit den Personendaten und der Ihr bekannten bPK für Ihren Bereich, eine Anfrage an das SZRB für ein Fremd-bPK für die Behörde B. Der Source-Code, des in diesem Dokument beschriebenen Werkzeuges, wird kostenlos vom EGIZ zur Verfügung gestellt und zeigt beispielhaft eine solche SZRB-Abfrage. 2. Behörde A bekommt, vorausgesetzt Sie besitzt genügend Rechte für diese Anfrage, das FremdbPK für Behörde B. Die Behörde A darf die erhaltene Fremd-bPK für mögliche weitere Kommunikationen mit der Behörde B auch speichern, womit eine SZRB Abfrage für diese Person in Zukunft entfallen kann. 3. Behörde A sendet das Dokument zusammen mit dem Fremd-bPK und dem verschlüsselten bPK an die Behörde B. 4. Behörde B kann das erhaltene Fremd-bPK mit ihrem privaten Schlüssel entschlüsseln, das bPK extrahieren und so das Dokument einer Person zuordnen. In einigen Fällen wird an dieser Stelle die Kommunikation abgebrochen. Falls jedoch die Behörde B das Dokument nur ergänzt oder möglicherweise Fragen dazu hat, muss Sie das Dokument wieder an die Behörde A zurücksenden. 5. Behörde B sendet das Dokument zusammen mit dem zuvor erhaltenen verschlüsselten bPK wieder an die Behörde A. Ohne dieses verschlüsselte bPK könnte die Behörde A das Dokument, vorausgesetzt es befinden sich keine Personendaten im Dokument, keiner Person zuordnen. 6. Behörde A kann das verschlüsselte bPK mit ihrem privaten Schlüssel entschlüsseln, das bPK extrahieren und so das Dokument wieder der ursprünglichen Person zuordnen. 2 Bedienungsanleitung In diesem Abschnitt wird kurz die Bedienung der Applikation Demo-Behörde und Fremd-bPKs beschrieben. 4 Abb. 2.1 zeigt die Applikation nach dem Starten. In diesem Beispiel wurden bereits einige Personen hinzugefügt um die Applikation mit typischen Werten darstellen zu können. Abb. 2.1: Demo-Behörde und Fremd-bPKs Jeder Eintrag in der Tabelle repräsentiert eine natürliche Person wobei zumindest die Felder Vorname, Nachname und Geburtsdatum ausgefüllt sein müssen. Das Feld bPK enthält, sofern vorhanden, das bPK der Person für den eigenen Bereich. Der eigene Bereich wird in Klammer neben der Spaltenbeschriftung bPK angezeigt (in diesem Beispiel T1). Das Feld Fremd-bPK enthält das Fremd-bPK der Person für den in Klammer angezeigten Bereich (in diesem Beispiel T2). Ein Klick mit der rechten Maustaste öffnet ein Kontext-Menü und zeigt aller zur Verfügung gestellten Funktionen: Eintrag hinzufügen: Mit dieser Funktion kann eine neue Person in die Datenbank aufgenommen werden. Abb. 2.2 zeigt das Dialogfenster welches für das Einfügen verwendet wird, wobei nur die ersten drei Felder zwingend ausgefüllt werden müssen. Das bPK kann vorerst leer gelassen werden. Abb. 2.2: Eintrag hinzufügen Einträge löschen: Mit dieser Funktion können eine oder mehrere Personen unwiderruflich aus der Datenbank gelöscht werden. bPK über SZRB berechnen: 5 Mit dieser Funktion wird mittels einer Anfrage an das SZRB das bPK der jeweiligen Person berechnet. Kann zu dieser Person ein eindeutiger Eintrag im ZMR gefunden werden wird das bPK berechnet und anschließend in der Datenbank gespeichert. Fremd-bPK über SZRB berechnen: Mit dieser Funktion wird das Fremd-bPK, mittels SZRB Anfrage, von der jeweiligen Person für den „fremden“ Bereich ermittelt. Der Bereich wird mittels Konfigurations-Datei eingestellt. Verschlüsseltes-bPK berechnen: Mit dieser Funktion wird das verschlüsselte bPK berechnet. Da diese Berechnung von dem Werkzeug selbst durchgeführt werden kann – es wird nur ein Zertifikat und das bPK für den eigenen Bereich benötigt – wird keine Anfrage an die SZRB geschickt. Source-Code für die Berechnung von verschlüsselten bPKs und Fremd-bPKs wird vom EGIZ kostenlos zur Verfügung gestellt. Import von BKU: Falls eine BKU vorhanden ist, kann mit dieser Funktion die Pesonenbindung über die SecurityLayer Schnittstelle abgefragt werden und daraus die, für einen Import benötigten, Personendaten ausgelesen und das bPK berechnet werden. 6 Export in eine XML Datei: Mit dieser Funktion wird ein XML Dokument erzeugt, welches für jede ausgewählte Person ein Element mit drei Kind-Elementen (RegisterEntryData, Fremd-bPK und Verschlüsseltes-bPK) enthält. Dieses Dokument symbolisiert ein solches wie es in Abb. 1.1 beschrieben wurde. Das Element RegisterEntryData enthält bei diesem Beispiel nur die Nummer des Eintrages in der Datenbank. Bei einem echten Dokumentenaustausch befinden sich hier die Informationen die ausgetauscht werden sollen. Die Elemente Fremd-bPK und Verschlüsseltes-bPK enthalten bereits solche Werte, wie Sie auch in einem realen Szenario verwendet werden würden. 3 Konfiguration Die beiden wichtigsten Konfigurationsdateien sind DemoClient.properties und pvp.1_8.xml im Unterverzeichnis resources. Die folgende Tabelle beschreibt alle über die Datei DemoClient.properties konfigurierbaren Werte. Feld Beschreibung Wert own_target Tätigkeitsbereich der Behörde. String foreign_target Tätigkeitsbereich für den Fremd-bPK ausgestellt werden. String foreign_vkz VKZ welches für die Fremd-bPK Berechnung verwendet wird. String encrypted_bPK_cert Zertifikat das benutzt wird um verschlüsselte bPKs zu erstellen. Relativer oder absoluter Pfad der Datei. use_szr Gibt an ob die SZRB genutzt werden soll. Wenn false kann keine bPK oder FremdbPK Berechnung über die SZRB erfolgen. true oder false szr_url Adresse unter der die SZRB zu erreichen ist. URL szr_keystore Der Keystore der das Zertifikat und den privaten Schlüssel enthält um sich gegenüber der SZRB zu authentifizieren. Relativer oder absoluter Pfad der Datei. szr_keystore_pwd Das Passwort das benötigt wird um den Keystore zu entschlüsseln. String szr_truststore Der Keystore der die vertrauenswürdigen Zertifikate der SZRB enthält. Wird für die SSL Verbindung mit der SZRB benötigt. Relativer oder absoluter Pfad der Datei. szr_pvp_file Die Datei welche die PvP-Header enthält. Relativer oder absoluter Pfad der Datei. jdbc_url Adresse unter der die Datenbank zu erreichen ist. Dieser Wert sollte in der Regel nicht verändert werden. URL 7 Die hier beschrieben Applikation verwendet für die Kommunikation mit der SZRB den vom BMI kostenlos zur Verfügung gestellten Client3. Mit der Datei pvp.1_8.xml wird der Client konfiguriert. Nähere Informationen zur Konfiguration des Clients entnehmen Sie bitte der beigefügten Datei SZRClient_readme.txt. Weitere Konfigurationsdateien sind DB.conf und log4j.config welche sich auch im Unterverzeichnis resources befinden. DB.conf ist die Konfigurationsdatei für die intern verwendete Mckoi Datenbank und sollte in der Regel nicht geändert werden. Mit der Datei log4j.config kann das Log-Verhalten der Applikation angepaßt werden4. 4 Lizenz und Source Code Das hier beschriebene Werkzeug und der dazugehörige Source Code werden vom Bundeskanzleramt (BKA) und der Technischen Universität Graz (TU Graz) sowohl Organisationen der öffentlichen Verwaltung als auch der Privatwirtschaft kostenfrei zur Verfügung gestellt. Lizenzrechtlich kommt dabei die Open-Source-Lizenz der Apache Software Foundation in der Version 2.0 zur Anwendung. Dabei sind folgende Randbedingungen zu beachten: Die Open-Source-Lizenz bezieht sich allein auf jene Teile, an denen das BKA die Rechte hält. Das beschriebene Werkzeug verwendet Bibliotheken bzw. Module Dritter, die teils wiederum unter freien Software-Lizenzen stehen, oder auch kostenpflichtig sein können. Der Lizenznehmer hat für den Erhalt allfälliger Rechte selbst zu sorgen. Für den Betrieb in der eigenen Organisation sowie für eine eventuell notwendige Anpassung der Software an spezielle Randbedingungen und die Inbetriebnahme hat der Lizenznehmer selbst zu sorgen. Es wird darauf hingewiesen, dass es sich bei der zur Verfügung gestellten Software lediglich um einen Demonstrator handelt, der einer für den Produktionseinsatz erforderlichen Qualitätssicherung nicht unterzogen wurde. Die Software wird daher ohne Gewährleistung, Zusicherung von Eigenschaften oder Haftung zur Verfügung gestellt. 3 4 Kann über die Seite http://portal.bmi.gv.at/ref/szr/testclient/ heruntergeladen werden. Siehe dazu http://logging.apache.org/log4j/docs/. 8