2016-07-21 19 views
0

Gibt es einen korrekten Kanal, um eine JWT von einem Client an einen Server zu senden (Web-Entwicklung mit PHP)? Müssen alle Daten über den HTTP-Header gesendet werden, Authentifizierung über den HTTP-Authentifizierungs-Handler? Oder ist es auch die beste Vorgehensweise, den JWT über GET, POST oder einen AJAX zu senden? Oder ist es jedes Mal abhängig von der Anwendung?Existiert ein korrekter Kanal zum Senden einer JWT?

Meiner Meinung nach sollte kein Problem sein, anderen Kanal zu verwenden. Weil das JWT die Daten enthält, ist es digital signiert und auf dem Server kann ich diese Werte verifizieren.

+0

Im Allgemeinen erklären, es sei denn, Sie einen guten Grund, nicht zu haben, die Genehmigung für HTTP-Header oder einen ähnlichen Header zu verwenden. Wenn Sie es in der http-Kopfzeile haben, gibt es keinen Grund, es dem Hauptteil eines POST hinzuzufügen. – tt9

Antwort

1

Lassen Sie sich die RFC 7519 - JSON Web Token sieht, in der Regel Zweifel lösen

JSON Web Token (JWT) ist ein kompaktes Ansprüche Darstellungsformat für räumlich begrenzte Umgebungen wie HTTP Authorization Header und Abfrageparameter URI bestimmt.

Es gibt keinen bevorzugten Weg. Sie können den Standard Authorization-Header verwenden, in der Regel der ‚Bearer‘ Schema

Authorization: Bearer <token> 

Aber man kann eine auch verwenden, um Ihre eigenen Header, senden Sie es mit POST, GET, Verwendungsformen oder Ajax mit einem REST-API. Wirklich, wenn Sie ein bisschen suchen, gibt es viele verschiedene Möglichkeiten.

Werfen Sie einen Blick auf diese hervorragende Einführung in JWT bei https://jwt.io/introduction/, die einige Themen wie diese