2015-07-02 18 views
5

Ich habe Untersuchungen durchgeführt, um auf ein von der Community unterstütztes Berechtigungssystem zu wechseln, anstatt auf das, das ich erstellt habe. Ich habe den Fehler gemacht, das Rad neu aufzubauen, anstatt ein gemeinschaftsorientiertes System zu implementieren, das die Best Practices nutzt. Ich konnte jedoch kein Autorisierungsbeispiel mit JWT statt einer Authentifizierung finden.Zugriffstoken für anonyme Benutzer - JWT

Ich bin offen für alle Vorschläge. Soweit ich finden konnte, verlangen JWT und OAuth, dass Kunden einen bestehenden Account haben und sich authentifizieren, um einen Token zu erhalten. Ich benötige jedoch die folgende Funktionalität in meiner Anwendung.

  • Anonyme Benutzer sollten ein Zugriffstoken erhalten und in der Lage sein, einige Ressourcen abzurufen. Ich sollte diese Gast-Clients erkennen und Sitzungsdaten für sie speichern können.
  • Gastbenutzer sollten sich anmelden können und dann möglicherweise ein neues Token erhalten oder ihre Zugriffsebene aktualisieren, um eingeschränkte Ressourcen anzufordern und Operationen auszuführen, die nur für Mitglieder gelten.

Ich werde dieses Projekt mit Laravel 5.1 und AngularJS bauen. Alle Vorschläge werden sehr geschätzt. Ich könnte wirklich einige Anweisungen dazu verwenden, und einfache Links zu Dokumentationen wären ausreichend.

+0

Ich habe die gleiche Frage. Wie kann ich ein gültiges Token ausgeben, das bestimmte Daten von meinen API-Endpunkten abrufen kann, aber nur so lange, wie sie ein gültiges anonymen Token haben? – timbrown

+0

Ich habe die gleiche Frage. Wie autorisierst du eine mandantenfähige Anwendung sowohl für anonyme Benutzer als auch für Benutzer, mit JWT ... – Leon

+0

gleich hier. Sie müssen mindestens Ihre Login-API schützen! Siehe https://security.stackexchange.com/questions/59411/how-to-protect-against-login-csrf. Ich kämpfe mit dem angeblichen "Community Support Authorization System". IMHO existiert es nicht ... –

Antwort

0

Ich denke, man kann eine anonyme Zugriffstoken generiert entweder von einem zufälligen vorhandenen Benutzer oder von benutzerdefinierten behauptet

Von einem vorhandenen Zufalls Benutzer:

// grab some user 
$user = User::first(); 

$token = JWTAuth::fromUser($user); 

oder von Individuelle Ansprüche:

$customClaims = ['foo' => 'bar', 'baz' => 'bob']; 
$payload = JWTFactory::make($customClaims); 
$token = JWTAuth::encode($payload); 

Weitere Informationen erhalten Sie unter folgendem Link:

Verwandte Themen