it-swarm.com.de

Wo soll die OAuth 2.0-Client-ID und das Geheimnis gespeichert werden?

Ich baue einige Funktionen in einer meiner WordPress-Sites auf, die in eine Drittanbieter-API integriert sind, und diese API verwendet OAuth 2.0.

Ich verwende die Client-ID und das Geheimnis jedes Mal, wenn ich ein neues Zugriffstoken benötige. Dies muss mindestens einmal am Tag erfolgen, da das Zugriffstoken nach 24 Stunden abläuft. (Wenn Sie ein neues Zugriffstoken generieren, wird auch ein neues Aktualisierungstoken generiert, und das vorherige Aktualisierungstoken wird ungültig.) Ich speichere die Token zusammen mit der expires_in-Zeit in der Optionstabelle in der Datenbank.

Wo soll ich meine Kundennummer und mein Geheimnis aufbewahren? Gibt es einen typischen Ort, um solche Dinge in WordPress zu speichern? Im Moment habe ich sie nur in der wp-config.php definiert. Während ich denke, dass dies gut funktionieren sollte, gibt es mögliche Nachteile dieser Methode, insbesondere in Bezug auf die Sicherheit des Clientgeheimnisses?

1
jasonp

Dies hängt davon ab, was Sie entwickeln. Wenn es sich um ein Plug-in handelt, müssen Sie diese Einstellungen in Optionen speichern. Als letztes muss der Websitebesitzer aufgefordert werden, seine Konfigurationsdatei zu ändern.

Wenn es sich um Ihre eigene Site handelt, machen Sie sie einfach zu einer Konstante, die in Ihrem Code deklariert ist, wenn Sie nicht möchten, dass sie vom Administrator konfiguriert werden kann. Es hat keinen Vorteil, es an einem nicht offensichtlichen Ort aufzubewahren, der bei der Überprüfung des Codes schwerer zu finden ist.

Was die Sicherheit betrifft, so ist es theoretisch sicherer, sie im Code zu haben, da Sie sich nicht darum kümmern müssen, dass sich jemand in die DB einhackt, sondern in der Praxis, da Sie bereits anstoßen, wenn jemand in Ihre DB einsteigen kann (er wird es hinzufügen) eigener Admin User ...), es macht fast keinen Unterschied. (Der einzige Unterschied, den ich mir vorstellen kann, ist, einen Dump der DB zu bekommen, aber diese Art von Hack ist immer noch hart und wahrscheinlich super selten)

1
Mark Kaplun