Neue Frage, um diese Frage spezifisch und auf den Punkt zu bringen.Wie verifiziere ich ein JSON-Web-Token mithilfe eines öffentlichen RSA-Schlüssels?
Ich habe eine JWT von Azure und jetzt muss ich die Signatur in meiner Anwendung überprüfen.
https://login.windows.net/common/discovery/keys
Wie verwende ich diese Schlüssel eine Signatur zu überprüfen:
die öffentlichen Schlüssel von Microsoft finden Sie hier? Ich kann sagen, dass dies die öffentlichen Schlüssel sind, die ich brauche, da der X5T-Header in dem JWT mit denen auf dieser öffentlichen Schlüsselliste übereinstimmt.
Ich benutze die JWT PHP-Bibliothek, aber alles, was ich als öffentlicher Schlüssel eingeben scheint zu scheitern.
supplied key param cannot be coerced into a public key
Also mit dem obigen Link, das geht von dort in die PHP openssl_verify Funktion als Parameter drei ($ key im Beispiel unten)?
$success = openssl_verify($msg, $signature, $key, 'SHA256')
Alles, was ich eingib, verursacht auf die eine oder andere Weise einen Fehler.
Danke,
Ganz unten auf der Seite dieses Links http://bshaffer.github.io/oauth2-server-php-docs/overview/jwt-access-tokens/ wird beschrieben, wie man eine JWT mit PHP verifiziert. – honerlawd