Suchergebnisse :

×

WordPress-REST-API-Schlüsselauthentifizierungsmethode | Sichere REST-API

Die Authentifizierung des WordPress-REST-API-Schlüssels umfasst Überprüfung des API-Schlüssels (Bearer-Token) um Zugriff auf die WP REST APIs zu erhalten. Bei jeder Anfrage zum Zugriff auf WP REST API-Endpunkte ist eine Authentifizierung mit dem Schlüssel (Bearer-Token) erforderlich. Der Zugriff auf die Ressourcen des angeforderten WordPress REST API-Endpunkts wird basierend auf der Validierung des API-Schlüssels (Bearer-Token) gewährt.
Der API-Schlüssel ist ein Authentifizierungsprotokoll, das dafür entwickelt wurde Ermöglichen Sie Entwicklern die Generierung von Authentifizierungsschlüsseln die für Ressourcen wie serverseitige Prozesse, Mobiltelefonanwendungen und Desktop-Computer verwendet werden könnten.

Die Authentifizierung mit dem WordPress-API-Schlüssel ist ein wichtiges Mittel zur Gewährleistung der Sicherheit Ihrer WordPress-REST-API. Wird der API-Schlüssel kompromittiert, kann er neu generiert werden, wodurch alle zuvor generierten Schlüssel automatisch verfallen. Der neu erstellte Schlüssel wird dann für die WP-API-Schlüsselauthentifizierung verwendet. Eine unzureichende Sicherung Ihrer REST-API kann erhebliche Sicherheitsrisiken bergen, da Unbefugte Zugriff auf Ihr System erhalten und so möglicherweise zu Datenlecks führen können.

Dieser Leitfaden führt Sie durch einen detaillierten Schritt-für-Schritt-Prozess für Installieren und Konfigurieren der WordPress REST API-Authentifizierung um die Sicherheit Ihrer REST-API zu erhöhen.



WordPress REST API-Authentifizierung

Das WordPress REST API Authentication-Plugin bietet Sicherheit vor unbefugtem Zugriff auf Ihre WordPress REST APIs. Unser Plugin bietet mehrere Authentifizierungsmethoden wie Basisauthentifizierung, API-Schlüsselauthentifizierung, OAuth 2.0-Authentifizierung und JWT-Authentifizierung.

Mehr Erfahren   

  • Melden Sie sich als Administrator bei Ihrer WordPress-Instanz an.
  • Gehen Sie zu WordPress Dashboard -> Plugins und klicken Sie auf Inserat erstellen.
  • Suchen Sie nach einem WordPress REST API-Authentifizierung Plugin und klicken Sie auf Jetzt installieren.
  • Klicken Sie nach der Installation auf Mehr erfahren.


WordPress-REST-API-Authentifizierungsschlüsselmethode

    1.  Die API-Schlüsselauthentifizierung dient als Schutz für Ihre WordPress-REST-API-Endpunkte, wie Beiträge, Seiten oder andere REST-APIs von WordPress. Sie schützt sie vor unbefugtem Zugriff und macht die Weitergabe der WP-Anmeldeinformationen oder der Client-ID und des Client-Geheimnisses eines Benutzers zur Authentifizierung überflüssig. Dieser Ansatz zur Generierung eines WordPress-API-Schlüssels erstellt einen eindeutigen Authentifizierungsschlüssel, mit dem Sie verschiedene WordPress-REST-APIs auf Ihrer Website authentifizieren können.

    Die Verwendung der WordPress REST-API-Schlüsselauthentifizierung ist eine der einfachsten und am weitesten verbreiteten Methoden zur Stärkung Ihrer WP REST-API. Dieser Ansatz erhöht die Sicherheit der REST-APIs auf Ihrer WordPress-Website.


    2.   Stellen Sie sich vor, Sie haben eine Blog-Anwendung für Android und iOS entwickelt und alle Ihre Blogs auf WordPress veröffentlicht. Sie möchten die Beiträge/Blogs jedoch über WordPress REST APIs abrufen, ohne sie öffentlich zugänglich zu machen. In solchen Fällen empfiehlt sich die Implementierung der WordPress REST API-Schlüsselauthentifizierung, um Ihre GET-Anfragen zu schützen und die Sicherheit Ihrer Endpunkte zu gewährleisten.


Das Plugin bietet zwei Arten von API-Schlüsseln/Sicherheitstoken, die zur Authentifizierung von WordPress REST-APIs verwendet werden können -


    I. Universeller API-Schlüssel – Der universelle API-Schlüssel eignet sich am besten zur Authentifizierung der WP REST-APIs, die die HTTP-GET-Methode beinhalten und keine WordPress-Benutzerfunktionen erfordern.


    Bitte beachten Sie: Dieser Schlüssel beinhaltet keine Benutzerberechtigungen und kann nicht für den Zugriff auf die APIs verwendet werden, für die WordPress Benutzerberechtigungen erwartet. "Beispiel - Wenn Sie die GET-APIs nur zum Abrufen allgemeiner WordPress-Beiträge, Kommentare usw. verwenden möchten.“


    II. Benutzerspezifischer API-Schlüssel – Die benutzerbasierte API eignet sich am besten zur Authentifizierung der WP REST-APIs, die HTTP-Methoden wie GET, POST, PUT oder DELETE beinhalten, insbesondere in den Fällen, in denen Sie Vorgänge ausführen möchten, die Benutzerfunktionen erfordern.


    Beispiel - Wenn Sie Vorgänge wie das Abrufen von WordPress-Beiträgen basierend auf Benutzerfunktionen (ihren WP-Rollen) oder Benutzerdaten ausführen oder neue Benutzer, neue Beiträge usw. erstellen möchten.





    WordPress-REST-API-Authentifizierungsschlüsselmethode
  • Gehen Sie im Plugin zu Registerkarte „API-Authentifizierung konfigurieren“. und klicken Sie auf API-Schlüsselauthentifizierung als API-Authentifizierungsmethode.
  • Sobald Sie die Konfiguration gespeichert haben, finden Sie unter Abschnitt „Universeller API-Schlüssel“. Sie erhalten die Option „Neues Token generieren“. Klicken Sie auf Neuen Schlüssel generieren Schaltfläche. Dieser Schlüssel/Token läuft ab, wenn Sie einen neuen Schlüssel/Token generieren.
  • Sobald Sie den API-Schlüssel (Token) generiert haben, können Sie ihn zum Sichern Ihrer WordPress REST-API-Endpunkte verwenden. (Sie können jederzeit einen neuen API-Schlüssel generieren. Alle vorhandenen Schlüssel verfallen automatisch.)
  • Sie müssen den API-Schlüssel als Trägertoken an den Autorisierungsheader übergeben, während Sie die REST-API-Anfrage an Ihre WP-Site senden, wie im folgenden Schritt gezeigt.
  • Benutzer, die über dieses Token verfügen, können wie unten gezeigt auf die REST-API zugreifen.
  • 
    Request: GET https://<domain-name>/wp-json/wp/v2/posts
    Header:Authorization: Bearer <token>
    Sample request: GET https://<domain-name>/wp-json/wp/v2/posts Header:Authorization: Bearer kGUfhhzXZuWisofgnkAsuHGDyfw7gfhg5s
    
    Sample curl Request Format-
    curl -H "Authorization:Bearer <token-value>"
    -X GET http://<wp_base_url>/wp-json/wp/v2/posts
    -H 'app-name:TheAppName'
    
  • Der Header wird unten erklärt.
  •    I. Authorization : Das HTTP Genehmigung Der Anforderungsheader enthält typischerweise die Anmeldeinformationen des Benutzeragenten oder den Tokentyp und -wert und dient zur Authentifizierung des Benutzeragenten gegenüber einem Server. Dies geschieht häufig nach einem erfolglosen Authentifizierungsversuch, bei dem der Server mit dem Status antwortet: 401 Nicht autorisiert.

       II. Bearer <token-value>: Die Träger wird vom Authentifizierungsserver erstellt. Wenn eine Client-Anwendung den Authentifizierungsserver anfordert, authentifiziert der Server das Token und gibt der Client-Anwendung eine entsprechende Antwort.

  • Entdecken Sie unsere Entwicklerdokumentation für weitere Informationen an.
  • Entdecken Sie unsere Fehlerantwort für die API-Schlüsselauthentifizierung.

 
var client = new RestClient("http://<wp_base_url>/wp-json/wp/v2/posts ");
client.Timeout = -1;
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer <token-value>");
request.AddHeader = ("app-name", "TheAppName");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
 
OkHttpClient client  = new OkHttpClient().newBuilder().build();
Request request  = new Request.Builder()
.url("http://<wp_base_url>/wp-json/wp/v2/posts ")
.method("GET", null)
.addHeader = ("Authorization", "Bearer <token-value>");
.addHeader = ("app-name", "TheAppName");
.build();
Response responseclient.newCall(request).execute();
 
var settings  = {
"url": "http://<wp_base_url>/wp-json/wp/v2/posts ",
"method": "GET",
"timeout": 0,
"headers": {
"Authorization": "Bearer < access_token / id_token >",
"app-name": "TheAppName"
},        
};

$.ajax(settings).done(function (response)  {
console.log(response);
});
 
<?php
 $curl = curl_init();
curl_setopt_array($curl, array 
(  
CURLOPT_URL => 'http://%3Cwp_base_url%3E/wp-json/wp/v2/posts',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer <token-value>'
'app-name: TheAppName'
),

));          

$response = curl_exec($curl);
curl_close($curl);    
echo $response;
 
import http.client

conn   = http.client.HTTPSConnection("<wp_base_url>")
payload= "
headers = {
'Authorization': 'Bearer <token-value>'
'app-name': 'TheAppName',
}
conn.request("GET", "/wp-json/wp/v2/posts ", payload, headers)
res= conn.getresponse()    
data = res.read()    
print (data.decode("utf-8"))   

    Führen Sie die folgenden Schritte aus, um eine REST-API-Anfrage mit Postman zu stellen:

  • Laden Sie den POSTMAN-Sammlungsexport herunter von werden auf dieser Seite erläutert.
  • Importieren Sie die heruntergeladene JSON-Datei wie unten gezeigt in die Postman-Anwendung.
  • WordPress REST API Authentifizierungsschlüsselmethode Postman importiert JSON-Datei
  • Sobald Sie die JSON-Datei importiert haben, klicken Sie auf REST-API-Anfrage unter dem Kollektionen wie in der letzten Abbildung gezeigt. Ersetzen Sie nun die mit Ihrer Wordpress-Domain im http://<wp_base_url>/wp-json/wp/v2/posts und ersetzen Sie die API im Header mit dem Token-Wert, wie er im Plugin generiert wurde.
  • Ejemplo:
  • WordPress REST API-Authentifizierungsschlüsselmethode Postman ersetzt Basis-URL

1. Einschränkung der rollenbasierten REST-API:


Mit dieser Funktion können Sie den REST-API-Zugriff je nach Benutzerrolle einschränken. Sie können festlegen, welche Rollen über REST-APIs auf die angeforderte Ressource zugreifen dürfen. Wenn ein Benutzer eine REST-API-Anfrage initiiert, wird seine Rolle abgerufen und der Zugriff auf die Ressource nur gewährt, wenn seine Rolle in der Whitelist enthalten ist.


Wie konfiguriere ich es?

  • Gehen Sie zunächst zur Registerkarte „Erweiterte Einstellungen“ des Plugins.
  • Im Abschnitt „Rollenbasierte Einschränkung“ wird allen Rollen standardmäßig Zugriff auf die APIs gewährt. Sie können den Zugriff jedoch gezielt einschränken, indem Sie das Kontrollkästchen neben den Rollen aktivieren, die Sie einschränken möchten.
  • Postman-Implementierung der WordPress-REST-API-Basisauthentifizierungsmethode
  • Im obigen Screenshot ist das Kontrollkästchen für die Abonnentenrolle aktiviert. Wenn ein Benutzer in seiner Rolle als Abonnent eine API-Anfrage stellt, darf er nicht auf die angeforderte Ressource zugreifen.

Hinweis: Die rollenbasierte Einschränkungsfunktion ist für die Basisauthentifizierung (Benutzername: Passwort), die JWT-Methode, OAuth 2.0 (Passwortzuweisung) und die API-Schlüsselauthentifizierung (benutzerspezifischer API-Schlüssel) gültig.


2. Benutzerdefinierter Header


Diese Funktion bietet die Möglichkeit, anstelle des standardmäßigen „Authorization“-Headers einen benutzerdefinierten Header auszuwählen. Dies erhöht die Sicherheit durch die Einführung eines benutzerdefinierten Headers. Wenn jemand versucht, eine REST-API-Anfrage mit einem „Authorization“-Header zu senden, kann er nicht auf die APIs zugreifen.


Wie konfiguriere ich es?

  • Gehen Sie zunächst zur Registerkarte „Erweiterte Einstellungen“ des Plugins.
  • Dann in der „Benutzerdefinierter Header“ Im Abschnitt „Textfeld bearbeiten“ können Sie den gewünschten benutzerdefinierten Namen eingeben.
  • Postman-Implementierung der WordPress-REST-API-Basisauthentifizierungsmethode

3. Schließen Sie REST-APIs aus


Mit dieser Funktion können Sie eine Whitelist für Ihre REST-APIs erstellen und so direkt und ohne Authentifizierung darauf zugreifen. Alle in dieser Whitelist enthaltenen REST-APIs sind somit öffentlich zugänglich.


Wie konfiguriere ich es?

  • Gehen Sie zunächst zur Registerkarte „Erweiterte Einstellungen“ des Plugins.
  • Anschließend können Sie unter „REST-APIs ausschließen“ Ihre APIs im vorgeschriebenen Format eingeben, die für den öffentlichen Zugriff auf die Whitelist gesetzt werden müssen.
  • Postman-Implementierung der WordPress-REST-API-Basisauthentifizierungsmethode
  • Ejemplo: Angenommen, Sie möchten die REST-API „/wp-json/wp/v2/posts“ ausschließen, dann müssen Sie „/wp/v2/posts“ in das Textfeld eingeben.

4. Erstellen Sie benutzerspezifische API-Schlüssel/Token


  • Diese Funktion ist innerhalb der API-Schlüsselmethode verfügbar und ermöglicht die Generierung von Token auf Grundlage benutzerspezifischer Informationen anstelle eines zufällig generierten Tokens, bei dem es sich um einen universellen Schlüssel handelt.
  • Bei Verwendung des universellen API-Schlüssels/-Tokens fehlen Benutzern möglicherweise die erforderlichen Berechtigungen für den Zugriff auf bestimmte WordPress-REST-APIs mit Anforderungsmethoden wie POST, PUT oder DELETE. Diese APIs beinhalten Aktionen wie das Erstellen von Benutzern, Beiträgen, Seiten usw., für deren Ausführung bestimmte Benutzerberechtigungen oder Rollen erforderlich sind. Diese Einschränkung entsteht, weil der universelle Schlüssel zufällig generiert wird und keine benutzerspezifischen Details enthält.
  • Die benutzerbasierte API-Schlüssel-/Token-Funktion ermöglicht Nutzern die Nutzung von WordPress-REST-APIs mit Anforderungsmethoden wie POST, PUT und DELETE, die Benutzeranmeldeinformationen oder bestimmte Rollen für die Funktionalität erfordern. Wenn eine WordPress-REST-API-Anfrage mit dem benutzerbasierten Schlüssel ausgeführt wird, ruft das System die Rolle des Benutzers ab und gewährt Zugriff nur, wenn der Benutzer über die erforderlichen Berechtigungen verfügt.
  • Zum Beispiel: Nur Benutzer mit Administrator- und Editorrollen haben die Berechtigung, einen Beitrag zu erstellen/bearbeiten/löschen.
  • Wenn also an diese API eine Anfrage zum Erstellen/Löschen/Bearbeiten des Beitrags gestellt wird, lautet die API-Antwort: „Sie sind nicht berechtigt, diesen Vorgang auszuführen.“
  • Wenn nun eine Anfrage mit dem benutzerbasierten Token gestellt wird, das für den Benutzer mit der Rolle „Administrator“ oder „Editor“ generiert wurde, hat nur dieser Zugriff auf diese API und kann über den API-Aufruf Aktionen ausführen (erstellen/aktualisieren/löschen).
  • So nutzen Sie diese Funktion:

  • Wählen Sie den Benutzer aus der Dropdown-Liste aus und klicken Sie auf API-Schlüssel erstellen .
  • Postman-Implementierung der WordPress-REST-API-Basisauthentifizierungsmethode
  • Auf dem Bildschirm erscheint ein Popup, Sie müssen nur darauf klicken OK Schaltfläche, um das Token zu kopieren.
  • Postman-Implementierung der WordPress-REST-API-Basisauthentifizierungsmethode
  • Jetzt kann dieses Token mit der API-Anfrage verwendet werden, genau wie der Universalschlüssel zum Stellen der API-Anfrage verwendet wird.

Herzlichen Glückwunsch! Sie haben die WordPress REST API-Schlüsselauthentifizierung mithilfe dieser Anleitung erfolgreich konfiguriert. Ihre WordPress REST API-Endpunkte sind nun sicher und Ihre Daten vor unbefugtem Zugriff geschützt.




Holen Sie sich die Testversion mit vollem Funktionsumfang



 Vielen Dank für Ihre Antwort. Wir werden uns umgehend bei Ihnen melden.

Etwas ist schief gelaufen. Bitte senden Sie Ihre Anfrage erneut

WordPress REST-APIs mit API-Schlüsselauthentifizierung

Hilfe benötigt?

Mailen Sie uns weiter apisupport@xecurify.com Für eine schnelle Beratung (per E-Mail/Besprechung) zu Ihren Anforderungen hilft Ihnen unser Team bei der Auswahl der für Ihre Anforderungen am besten geeigneten Lösung/Plan.


ADFS_sso ×
Hallo!

Brauchen Sie Hilfe? Wir sind hier!

Unterstützung