Wiki-Quellcode von Elster Authentifikator Plugin
Verstecke letzte Bearbeiter
author | version | line-number | content |
---|---|---|---|
![]() |
9.2 | 1 | [[**Plugin-Download**>>url:https://customer.formcycle.eu/index.php/apps/files/?dir=/FORMCYCLE%20-%20Plugins%20Customer/ELSTER%20(fc-plugin-bundle-elster-authenticator)&fileid=25551||rel="noopener noreferrer" target="_blank"]] (erfordert Anmeldung) |
![]() |
2.2 | 2 | |
![]() |
9.3 | 3 | Min. {{formcycle/}}-Version: {{version major="6" minor="6" patch="11"}}{{/version}} |
![]() |
3.1 | 4 | |
![]() |
9.9 | 5 | Hinweis: Für Verwendung der Postkorb-Funktionalität werden mindestens die {{formcycle/}}-Version 7 und mindestens die [[Pluginversion {{version major="2" minor="1" patch="0"/}}>>https://help7.formcycle.eu/xwiki/bin/view/Formcycle/PluginDocumentation/ElsterAuthenticatorPlugin]] benötigt. |
![]() |
9.3 | 6 | |
![]() |
2.2 | 7 | {{content/}} |
8 | |||
9 | |||
![]() |
7.1 | 10 | {{figure image="form_cntr_template_de.PNG"}} |
![]() |
5.1 | 11 | Formularelementvorlage //ELSTER Accountdaten// für einen Nutzer mit persönlichem Zertifikat. |
![]() |
3.1 | 12 | {{/figure}} |
![]() |
2.2 | 13 | |
![]() |
3.1 | 14 | Über das kostenpflichtige //ELSTER Service Plugin// ist es möglich authentifizierte ELSTER-Accountdaten in Formularen zu erfassen. Dies geschieht indem dem Formular ein ELSTER-Login vorgeschaltet wird. Um den ELSTER-Login zu ermöglichen, muss der {{formcycle/}}-Server vorerst bei ELSTER registriert werden. Details hierzu finden Sie im Abschnitt Setup. |
![]() |
2.2 | 15 | |
![]() |
3.1 | 16 | == Setup == |
![]() |
2.2 | 17 | |
![]() |
3.1 | 18 | Das Plugin kann nur als Mandantplugin installiert werden. Eine Anleitung zur Installation von Plugins finden Sie [[hier>>doc:Formcycle.UserInterface.Client.Plugins.WebHome]]. Nach Installation des Plugins gibt es einen neuen Menüeintrag //ELSTER-Konfiguration// in der Verwaltungsoberfläche. Sollten Sie diesen Menüeintrag nicht sehen, stellen Sie sicher, dass der angemeldete Benutzer die Rollenberechtigung "Externe Benutzer" sowie "ELSTER-Konfiguration" besitzt. Über die ELSTER-Konfigurationsseite kann nun ein neuer ELSTER-Login erstellt werden und der sog. Entity-Descriptor für diesen Login erstellt werden. Diese Schritte sind notwendig um den ELSTER-Login bei ELSTER zu registrieren. |
19 | |||
20 | === ELSTER-Login erstellen === | ||
21 | |||
22 | Mit einem Klick auf //ELSTER-Login erstellen// in der Konfigurationsoberfläche kann ein neuer ELSTER-Login erstellt werden. Hierzu sind nun folgende Informationen nötig: | ||
23 | |||
24 | ==== Allgemeine Informationen ==== | ||
25 | |||
26 | ; Name | ||
27 | : Wie soll der ELSTER-Login heißen? Dieser Name wird für den Anmeldebutton im Formular verwendet. (Soll ein alternativer Name verwendet werden, kann dies am ELSTER-Login nach der Erstellung konfiguriert werden) | ||
28 | ; Beschreibung | ||
29 | : Eine optionale Beschreibung | ||
30 | |||
31 | |||
32 | ==== Zertifikatsinformationen ==== | ||
33 | |||
34 | Für die Kommunikation mit der ELSTER-Schnittstelle sind Zertifikate für die Verschlüsselung & Signierung der Nachrichten nötig. Sie haben die Möglichkeit bei der Erstellung des ELSTER-Logins einen Zertifikatsspeicher automatisch erstellen zu lassen oder einen Zertifikatsspeicher (einen sog. KeyStore) hochzuladen. Für die automatische Generierung des Zertifikatsspeichers sind folgende Angaben nötig: | ||
35 | |||
36 | ; Allgemeiner Name (CN) | ||
37 | : Der sog. Common name des Zertifikats. Z.B.: ELSTER-Login | ||
38 | ; Organisationseinheit (OU) | ||
39 | : Bezeichnung der Abteilung, z.B. IT-Abteilung | ||
40 | ; Organisationsname (O) | ||
41 | : Name des Unternehmens bzw. der Behörde | ||
42 | ; Ortsbezeichnung (L) | ||
43 | : Stadt oder Ort, in dem das Unternehmen bzw. die Behörde ansässig ist | ||
44 | ; Bundesland (ST) | ||
45 | : Bundesland, in dem das Unternehmen bzw. die Behörde ansässig ist | ||
46 | ; Land (C) | ||
47 | : Der aus zwei Buchstaben bestehende Ländercode im ISO-Format desjenigen Landes, in dem das Unternehmen bzw. die Behörde rechtmäßig registriert ist z.B. DE | ||
48 | |||
49 | Mit diesen Informationen wird bei der Erstellung des ELSTER-Logins ein Zertifikatsspeicher für die Signierung & Verschlüsselung erstellt. Möchten Sie einen eigenen Zertifikatsspeicher verwenden, ist darauf zu achten, dass das darin enthaltene Zertifikat eine Schlüssellönge von 4096 Bit hat und den Algorithmus RSA (SHA-256) verwendet. | ||
50 | |||
51 | === Entity-Descriptor erstellen === | ||
52 | |||
53 | Nachdem der ELSTER-Login erstellt wurde, kann für diesen der Entity-Descriptor erstellt werden. Der Entity-Descriptor enthält Metadaten zum {{formcycle/}}-Server und das SChlüsselmaterial für die Signierung & Verschlüsselung der Kommunikation. Diesen Entity-Descriptor müssen Sie an ELSTER senden, damit der {{formcycle/}}-Server für die Authentifizierungen registriert werden kann. | ||
54 | Werden Frontend-Server verwendet, dann muss für jeden Frontend-Server, für den der ELSTER-Login zur Verfügung stehen soll, ein Entity-Descriptor erstellt und bei ELSTER registriert werden. | ||
55 | |||
56 | == Einbindung des ELSTER-Logins in Formularen == | ||
57 | |||
58 | Um den ELSTER-Login in Formularen zu aktivieren, muss dieser über die Zugriffseinstellungen des Formulars aktiviert werden. Nachdem dies geschehen ist, werden Nutzer nun beim Aufruf des Formulars nun aufgefordert sich bei ELSTER anzumelden. | ||
59 | Zur Darstellung der ELSTER-Accountdaten gibt es eine Formularvorlage im Designer, welche in das Formular gezogen werden kann. Diese Formularvorlage enthält Datenfelder für perönliche sowie Organisationsaccounts. Je nachdem, welcher Nutzer sich angemeldet hat, wird das passende Fieldset dargestellt. Die Formularfelder können nach der Nutzerauthentifizierung nicht mehr geändert werden und haben festgelegte Namen: | ||
60 | |||
61 | {{table dataTypeAlpha="0" preSort="0-asc"}} | ||
62 | |=Formularfeldname|=Bemerkung|=optional|=für Zertifikatstyp | ||
63 | |tfDatenkranzTyp|StNr (bei einem Organisationszertifikat) oder IdNr (bei einem persönlichen Zertifikat)|nein|beide | ||
64 | |tfPersTyp|NATPERS (Der Inhaber des Steuerkontos ist eine natürliche Person - z.B. ein Einzelunternehmer) oder NNATPERS (nichtnatürliche Person - z.B. eine GmBH)|nein|Organisationszeitifikat | ||
65 | |tfTrustLevelIdentifizierung|"SUBSTANZIELL" für alle, die per Brief oder persönlich Identifiziert wurden. "HOCH" für die mit nPA|nein|beide | ||
66 | |tfTrustLevelAuthentifizierung|"SUBSTANZIELL" für alle|nein|beide | ||
67 | |tfAccountPseudonymId|Pseudonymisierte ELSTERAccountID. Pro ELSTERZertifikat eine eigene ID, auch wenn die ELSTER Zertifikate zu ein und derselben Organisation gehören.|nein|beide | ||
68 | |tfDatenuebermittlerPseudonymId|für den jeweiligen ServiceProvider pseudonymisierte ID der Organisation, der der Account angehört|nein|Organisationszeitifikat | ||
69 | |tfAntragstellerAdressTyp|INLAND oder AUSLAND|nein|persönliches Zertifikat | ||
70 | |tfAntragstellerStrasse|Inland 5-stellig|nein|persönliches Zertifikat | ||
71 | |tfAntragstellerHausnummer|Werte 0-9999, mit Zusatz|nein|persönliches Zertifikat | ||
72 | |tfAntragstellerPLZ||nein (bei INLAND) ja (bei AUSLAND)|persönliches Zertifikat | ||
73 | |tfAntragstellerOrt||ja|persönliches Zertifikat | ||
74 | |tfAntragstellerOrtsteil||ja|persönliches Zertifikat | ||
75 | |tfAntragstellerErgaenzung|Nicht gesetzt bei Auskunftssperre|ja|persönliches Zertifikat | ||
76 | |tfAntragstellerLand|ALPHA-2 Länderkürzel nach ISO 3166-1. DE bei Inlandsadressen. Nicht gesetzt bei Auskunftssperre|nein|persönliches Zertifikat | ||
77 | |tfAntragstellerVorname||nein|persönliches Zertifikat | ||
78 | |tfAntragstellerName||nein|persönliches Zertifikat | ||
79 | |tfAntragstellerGeburtsdatum||nein|persönliches Zertifikat | ||
80 | |tfAntragstellerGeburtsname||ja|persönliches Zertifikat | ||
81 | |tfAntragstellerGeburtsort||ja|persönliches Zertifikat | ||
82 | |tfAntragstellerGeburtsland||ja|persönliches Zertifikat | ||
![]() |
8.1 | 83 | |tfAntragstellerAkademischerGrad||ja|persönliches Zertifikat |
![]() |
3.1 | 84 | |tfOrgAdressTyp||nein|Organisationszertifikat |
85 | |tfOrgStrasse|Inland 5-stellig|nein|Organisationszeitifikat | ||
86 | |tfOrgHausnummer|Werte 0-9999, mit Zusatz|nein|Organisationszeitifikat | ||
87 | |tfOrgPLZ||nein (bei INLAND) ja (bei AUSLAND)|Organisationszeitifikat | ||
88 | |tfOrgOrt||ja|Organisationszeitifikat | ||
89 | |tfOrgOrtsteil||ja|Organisationszeitifikat | ||
90 | |tfOrgErgaenzung|Nicht gesetzt bei Auskunftssperre|ja|Organisationszeitifikat | ||
91 | |tfOrgLand|ALPHA-2 Länderkürzel nach ISO 3166-1. DE bei Inlandsadressen. Nicht gesetzt bei Auskunftssperre|nein|Organisationszeitifikat | ||
92 | |tfOrgFirmenname|Der Name der Organisation. Bei NatPers kann dies auch der konkatenierte Vor- und Nachname des Steuerkontoinhabers sein.|nein|Organisationszeitifikat | ||
93 | |tfOrgRechtsformText|Für PersTyp NNATPERS|nein|Organisationszertifikat | ||
94 | |tfOrgRechtsform|Für PersTyp NNATPERS|nein|Organisationszertifikat | ||
95 | |tfOrgTaetigkeitText|Für PersTyp NATPERS|nein|Organisationszertifikat | ||
96 | |tfOrgTaetigkeit|Für PersTyp NATPERS|nein|Organisationszertifikat | ||
97 | |tfOrgRegisternummer||ja|Organisationszeitifikat | ||
98 | |tfOrgRegisterart||ja|Organisationszeitifikat | ||
99 | |tfOrgRegistergericht||ja|Organisationszeitifikat | ||
100 | |tfOrgGruendungsDatum||ja|Organisationszeitifikat | ||
101 | |tfOrgBetriebsbeendigungsdatum||ja|Organisationszeitifikat | ||
102 | |tfOrgUStId||ja|Organisationszeitifikat | ||
![]() |
4.1 | 103 | {{/table}} |
![]() |
3.1 | 104 | |
105 | === Protokollierung === | ||
106 | |||
107 | Für jedes abgesendete Formular, an welchem sich per ELSTER authentifiziert wurde, wird ein Protokolleintrag am Vorgang erstellt. Diese beinhaltet die AccountPseudonym-ID (sowie die DatenübermittlerPseudonym-ID), die ID der SAML-Response, die IssueInstant der SAML-Response und die InResponseTo-ID der SAML-Response. | ||
108 | |||
109 | Optional kann für jede ELSTER-Anmeldung (ohne Formularabsendung) eine solche Protkollierung aktiviert werden (siehe Konfiguration des Plugins). Dies ist standardmäßig deaktiviert. | ||
110 | |||
111 | == Konfiguration des Plugins == | ||
112 | |||
113 | In den Plugineinstellungen können Parameter zu Konfiguration angegeben werden: | ||
114 | |||
115 | {{table dataTypeAlpha="0" preSort="0-asc"}} | ||
116 | |=Parameter|=Bemerkung|Standardwert | ||
117 | |elster.bundle.param.supported.issuer.ids|Semikolon-separierte Liste der unterstützten Issuer-IDs|[[https://idp.een.elster.de>>https://idp.een.elster.de]];[[https://www.elster.de>>https://www.elster.de]] | ||
118 | |elster.bundle.param.protocol.preserve|Ob die angelegten Protokolleinträge löschbar (false) oder nicht löschbar (true) sein sollen|true | ||
119 | |elster.bundle.param.protocol.login.callbacks|Gibt an ob für jede Anmeldung bei ELSTER ein Mandantprotokolleintrag erstellt werden soll|false | ||
![]() |
4.1 | 120 | {{/table}} |
![]() |
3.1 | 121 | |
122 | == Versionshistorie == | ||
123 | |||
![]() |
9.3 | 124 | === 1.0.3 === |
125 | |||
126 | * Fehlerbehebung bei der Erstellung/Aktualisierung der Formularvorlage für die ELSTER-Accountdaten. | ||
127 | |||
![]() |
3.1 | 128 | === 1.0.2 === |
129 | |||
130 | * Erste öffentliche Version des Plugins. Beinhaltet: | ||
131 | ** neue Konfigurationsoberfläche zum Anlegen eines ELSTER-Logins und Erstellung des Entity-Descriptors | ||
132 | ** Formularelementvorlage mit sämtlichen vorbefüllten persönlichen bzw. organisationsbezogenen Formularelementen | ||
133 | * Protokollierung eines ELSTER-Logins nach Absenden eines Formulars |