Skip to content
Snippets Groups Projects
Verified Commit 7513f168 authored by Alexander Hoose's avatar Alexander Hoose Committed by Jonas Gröger
Browse files

Aktualisieren docs/roadmap.md, docs/details/infrastructure-docs/sender.md,...

Aktualisieren docs/roadmap.md, docs/details/infrastructure-docs/sender.md, docs/details/infrastructure-docs/subscriber.md, docs/details/authentication/scopes-sender.md Dateien
parent e36187e3
No related branches found
No related tags found
1 merge request!1Dokumentation der OAuth Changes
......@@ -18,14 +18,6 @@ Ein Zustellberechtigungs-Scope kann aus den folgenden Bestandteilen bestehen:
| Leistungstyp außerhalb des LeiKa | `send:service:urn:myleistung` | Eine Leistung, die nicht im Leistungskatalog abgebildet ist, kann übergangsweise über eine andere Leistungs-ID referenziert werden. Diese ID muss eindeutig sein. |
| Kombination aus Leistungstyp und Region | `send:region:DE081100000000+send:service:urn:de:fim:leika:leistung:99108008252000` oder `send:region:DE081100000000+send:service:urn:myleistung` | Eine Kombination aus amtlichem Gemeindeschlüssel und LeiKa-ID. Hier erfolgt eine Einschränkung nach beiden angegeben Kriterien (Zugriff nur auf spezifische Leistung in der angegebenen Region). |
### Einschränkung der Berechtigung auf einzelne Zustellpunkte
Im einfachsten Fall ist ein sendendes System zur Einreichung bei genau einem konkreten Zustellpunkt berechtigt:
**Beispiel**: Beschränkung auf einen spezifischen Zustellpunkt:
```
send:destination:655c6eb6-e80a-4d7b-a8d2-3f3250b6b9b1
```
### Einschränkung der Berechtigung auf Leistungstypen
Um sendende Systeme zur Einreichung bei allen Zustellpunkten eines bestimmten Leistungstyps zu berechtigen, ist eine Vergabe von Berechtigungen auf Basis von Leistungs-IDs möglich. Ein Download des Leistungskatalogs mit allen LeiKa-Schlüsseln ist [über das FIM-Portal](https://fimportal.de/kataloge#download-leistungen) möglich.
......
This diff is collapsed.
# Token Validierung bei empfangenden Systemen
**Achtung, die folgende Dokumentation ist für Software Entwickler und Betreiber der zentraler Übertragungsinfrastruktur gedacht. Diese Unterlagen befinden sich in einer Überarbeitung und spiegeln nicht den aktuellen Stand wieder**
Die Authentifizierung von empfangenden Systemen erfolgt bei FIT-Connect auf Basis von OAuth 2.0 Client Credentials gemäß [RFC 6749](https://tools.ietf.org/html/rfc6749) und Access Tokens auf Basis von JSON Web Tokens gemäß [RFC 7519](https://datatracker.ietf.org/doc/html/rfc7519). Zum Abruf von Anträgen müssen sich empfangende Systeme mithilfe von OAuth 2.0 Client-Credentials beim Autorisierungsdienst authentifizieren. Die hierfür nötigen Client erhalten Behörden und andere Abrufberechtigte, nach einer Anmeldung im Self-Service-Portal der FITKO. (TODO: link)
Zum Abruf von Anträgen müssen sich empfangende Systeme zunächst mithilfe der OAuth Client-Credentials beim OAuth-Server ein Berechtigungstoken (im Folgenden "Access Token") nach dem Standard JSON Web Token gemäß [RFC 7519](https://tools.ietf.org/html/rfc7519) abrufen. Dieser vom OAuth-Server signierte Token kann anschließend genutzt werden, um sich gegenüber der Antrags-API eines Zustelldienstes zu authentifizieren.
......@@ -44,7 +46,6 @@ Im Payload des signierten Access Token MÜSSEN mindestens die folgenden [standar
| `jti` (JWT ID) | *UUID des Tokens* | Eindeutige ID des ausgestellten Tokens. |
| `aud` (Audience) | *URL der Zustelldienst-API* | Die URL der API des Zustelldienstes, für den der Token ausgestellt wurde, gemäß [RFC 7519, Abschnitt 4.1.3](https://datatracker.ietf.org/doc/html/rfc7519#section-4.1.3). |
| `scp` | *Liste von Zustellberechtigungs-Scopes* | Eine Liste der Zustellberechtigungs-Scopes, für die der Token einen Abruf von Anträgen erlaubt (Präfix `subscribe:destination:`), separiert mit Leerzeichen gemäß [RFC 6749, Abschnitt 3.3](https://datatracker.ietf.org/doc/html/rfc6749#section-3.3). Der hier genutzte Claim Bezeicher entspricht `scope` Claim in anderen OAuth JWT Implementierungen. |
| `client_type` | `subscriber` | Gibt an, das es sich um einen Token für ein empfangendes System handelt. |
**Beispiel-Payload eines Access Tokens mit Token-Typ `subscriber`**
```json
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment