FrazeColder
Lt. Commander
- Registriert
- Okt. 2013
- Beiträge
- 1.721
Hallo zusammen,
ich bin leider ein wenig überfordert, wie ich am besten an mein Problem herangehe. Folgender Fall:
Mein Backend habe ich komplett eigenständig in Laravel geschrieben. Die API dafür basiert auf Laravel Sanctum. Laravel Sanctum kann Authentifizierungen sowohl statefull (Cookie-based) als auch stateless (token-based) durchführen.
Da ich an mein Backend aber auch noch eine Flutter App anbinden möchte und auf der Server-seite nicht sowohl statefull als auch stateless Authentifizierungsmöglichkeiten anbieten möchte, habe ich die gesamte API mittels einer stateless und somit token-based Authentifizierung implementiert.
Dies bedeutet, dass zwischen Client und Server bei jedem Request ein Bearer Token mitgeschickt werden muss.
Standardmäßig läuft der Token, der von Laravel Sanctum ausgegeben wird, niemals ab und ist unendlich lange gültig.
Das möchte ich natürlich nicht und möchte hier später noch ein Ablaufdatum hinzufügen, mit einem Refresh-Token. Vorerst würde ich allerdings erst einmal die einfach stateless token-based Authentifizierung implementieren, bevor ich mich danach noch an die Implementierung eines Refresh-Tokens mache.
Nun zu meinen Fragen:
ich bin leider ein wenig überfordert, wie ich am besten an mein Problem herangehe. Folgender Fall:
Mein Backend habe ich komplett eigenständig in Laravel geschrieben. Die API dafür basiert auf Laravel Sanctum. Laravel Sanctum kann Authentifizierungen sowohl statefull (Cookie-based) als auch stateless (token-based) durchführen.
Da ich an mein Backend aber auch noch eine Flutter App anbinden möchte und auf der Server-seite nicht sowohl statefull als auch stateless Authentifizierungsmöglichkeiten anbieten möchte, habe ich die gesamte API mittels einer stateless und somit token-based Authentifizierung implementiert.
Dies bedeutet, dass zwischen Client und Server bei jedem Request ein Bearer Token mitgeschickt werden muss.
Standardmäßig läuft der Token, der von Laravel Sanctum ausgegeben wird, niemals ab und ist unendlich lange gültig.
Das möchte ich natürlich nicht und möchte hier später noch ein Ablaufdatum hinzufügen, mit einem Refresh-Token. Vorerst würde ich allerdings erst einmal die einfach stateless token-based Authentifizierung implementieren, bevor ich mich danach noch an die Implementierung eines Refresh-Tokens mache.
Nun zu meinen Fragen:
- Ich finde leider keine guten Beispiele oder Anleitungen, um mich in die Implementierung einer Nuxt 3 stateless token-based einzuarbeiten. Ich finde viel zu Nuxt Breeze etc., aber das sind alles statefull und somit Cookie-based Anleitungen. Könnt ihr hier How Tos, Artikel oder Tutorials empfehlen?
- Ist mein Vorhaben mit einer Nuxt 3 Applikation vereinbar, welche im SSR-Mode laufen soll?
- Könnt ihr ein Package empfehlen, mit dem ich mein Vorhaben umsetzen kann? Ich kenne sidebase/nuxt-auth und hebilicious/authjs-nuxt, allerdings bin ich mir unsicher, ob diese Packages sich dazu eigenen und welches besser für mich passt, weil auch hier, ich kaum Anleitungen finde.
- Wenn ich eine stateless token-based Authentifizierung habe, benötigt ich doch keine CSRF protection mehr - richtig? Zumindest nicht mehr auf der Client-Seite, da ja alles stateless ist. Was ich gelesen habe, reicht es, in der
CORS.php
Datei in Laravel die entsprechenden Domains zu beschränken. Falls ich falsch liege, wie kann ich meine API mit CSRF schützen, wenn ich aber eine stateless token-based Authentifizierung habe?