Suchergebnisse :

×

WordPress REST API OAuth 2.0-Authentifizierungsmethode


OAuth 2.0 ist die am häufigsten gewählte Methode zur Authentifizierung des Zugriffs auf die APIs. OAuth 2.0 ermöglicht die Autorisierung, ohne dass die E-Mail-Adresse oder das Passwort des Benutzers an eine externe Anwendung weitergegeben werden müssen. Diese Methode der WordPress REST API OAuth 2.0-Authentifizierung beinhaltet die Verwendung des OAuth 2.0-Protokollflusses, um das Sicherheitszugriffstoken oder ID-Token (JWT-Token) zu erhalten, und dieses Token wird zur Authentifizierung der WordPress REST API-Endpunkte verwendet. Jedes Mal, wenn eine Anfrage zum Zugriff auf den WordPress-REST-API-Endpunkt gestellt wird, erfolgt die Authentifizierung anhand dieses Zugriffstokens/ID-Tokens (JWT-Token) und auf der Grundlage der Überprüfung dieses API-Bearer-Tokens anhand der Ressourcen für diese API Auf die Anfrage wird der Zugriff gewährt.

WordPress REST API OAuth 2.0-Workflow

Das mithilfe der OAuth 2.0-Authentifizierungsmethode bereitgestellte Token ist hochgradig verschlüsselt und sicher, sodass die Sicherheit nicht beeinträchtigt wird. Es ist die sicherste Methode zur Authentifizierung/zum Schutz von WordPress-REST-API-Endpunkten. Diese Methode ähnelt in gewisser Weise der JWT-Authentifizierungsmethode, ist jedoch aufgrund verschiedener Vorteile des OAuth 2.0-Protokolls weitaus sicherer.


WordPress Rest API-Authentifizierung
Von miniOrange

Das WordPress-REST-API-Authentifizierungs-Plugin bietet Sicherheit vor unbefugtem Zugriff auf Ihre WordPress-REST-APIs.

Weitere Informationen

idp_sso_image1 Voraussetzungen: Download und Installation

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

idp_sso_image1 Anwendungsfall: Sichern der REST-API mit der OAuth 2.0-Authentifizierungsmethode

    1. Passwortgewährung:

    Anwendungsfall: Registrieren Sie einen WordPress-Benutzer oder authentifizieren/anmelden Sie Benutzer auf externen Plattformen basierend auf WordPress-Anmeldeinformationen über die WordPress-REST-API

      Angenommen, Sie haben ein Anmeldeformular in Ihrer Anwendung und möchten den Benutzer anhand seiner WordPress-Anmeldeinformationen authentifizieren, dann hilft Ihnen die OAuth 2.0-Authentifizierung in der REST-API-Methode dabei. Das Plugin stellt eine WordPress-Login-API bereit. Sie können die WordPress-Anmeldeinformationen dieses Benutzers ganz einfach an diese API übergeben und erhalten basierend auf der Validierung die Authentifizierung und Antwort.
      Darüber hinaus kann die Implementierung der OAuth 2.0-Authentifizierung in der REST-API-Methode auch zum Registrieren von Benutzern in WordPress mithilfe der Administratoranmeldeinformationen des WordPress-Benutzers verwendet werden. Mithilfe des Plugin-OAuth-2.0-Token-Endpunkts können Sie WordPress-Benutzeranmeldeinformationen mit Administratorberechtigungen übergeben, sodass das generierte Token über Administratorberechtigungen verfügt und zum Ausführen von Vorgängen wie der Benutzerregistrierung verwendet werden kann, für die Administratorrechte erforderlich sind. Sobald Sie das Token haben, können Sie dieses Token mit der WordPress-API „/users“ verwenden, um Benutzer in WordPress über eine REST-API-Anfrage zu registrieren.

    2. Anmeldedaten des Kunden:

    Anwendungsfall: WordPress-REST-API-Endpunkte sicher authentifizieren/schützen oder Benutzer in WordPress registrieren, ohne Administrator-Benutzeranmeldeinformationen zu verwenden.

      Wenn Sie auf die WordPress-REST-API zugreifen möchten, ohne die WordPress-Benutzeranmeldeinformationen weiterzugeben, oder die Benutzer sicher in WordPress registrieren möchten, ohne die Admin-Benutzeranmeldeinformationen von WordPress und stattdessen die vom Plugin bereitgestellten Client-Anmeldeinformationen übergeben zu müssen, dann ist diese Methode die richtige perfekte Lösung, sodass keine Gefahr besteht, dass Benutzeranmeldeinformationen kompromittiert werden.
      Das Plugin fungiert sowohl als OAuth 2.0-Identitätsanbieter (Server), der das Token bereitstellt, als auch als REST-API-Authentifikator für die Authentifizierung dieser WordPress-REST-API-Endpunkte auf der Grundlage des Tokens. Daher bietet es höchste Sicherheit beim Abrufen des Tokens und dieses Token kann zur Authentifizierung der REST-API-Anfrage verwendet werden.

  • Der Ablauf zur Implementierung der OAuth 2.0-Authentifizierungsmethode in REST-API-Methoden wird unten erläutert:
    • 1. Die REST-API-Anfrage wird mit den entsprechenden Parametern gestellt, um das Token für unser Plugin zu erhalten. Unser Plugin fungiert als OAuth 2.0-Identitätsanbieter und stellt das Zugriffstoken bereit.

      2. Die eigentliche REST-API-Anfrage für den Zugriff auf die Ressource erfolgt mit dem Zugriffstoken, das Sie im letzten Schritt erhalten haben und der im Autorisierungsheader mit dem Tokentyp „Bearer“ übergeben wird. Das Plugin fungiert nun als Authentifikator, um die API anhand der Token-Gültigkeit zu authentifizieren. Wenn das Token erfolgreich validiert wird, darf der API-Anforderer auf die Ressource zugreifen, andernfalls wird bei der fehlgeschlagenen Validierung die Fehlerantwort zurückgegeben.

idp_sso_image1 Verwandter Anwendungsfall:

  • Wie melde ich Benutzer mit der WordPress REST API an oder registriere sie?
  • Wie authentifiziert man WordPress-Benutzer mithilfe der API?

idp_sso_image1 Lesen Sie Anwendungsfälle für die folgenden Rest-API-Authentifizierungsmethoden:

idp_sso_image1 WordPress REST API OAuth 2.0 mit Password Grant:

  • Gehen Sie im Plugin auf „Konfigurieren“. API-Authentifizierung Tab und klicken Sie auf OAuth 2.0-Authentifizierung als API-Authentifizierungsmethode.
  • Wähle aus OAuth 2.0-Zuschuss Geben Sie „Passwortgewährung“ ein.
  • Jetzt können Sie sich für einen beliebigen Tokentyp entscheiden: Zugriffstoken oder JWT-Token.
    Das Zugriffstoken ist eine zufällige Zeichenfolge, die dem Benutzer zugeordnet ist, für den es generiert wird, während das JWT-Token oder ID-Token gemäß dem JWT-Standard gebildet wird, der aus darin codierten Benutzerdaten besteht, für die das Token generiert wird. Dieser Token kann mithilfe seines Schlüssels entschlüsselt und die Benutzerdetails analysiert werden. Daher wird dieses Token in den Fällen empfohlen, in denen die WP-Profildetails des Benutzers später abgerufen werden müssen.
  • WordPress REST API OAuth 2.0-Authentifizierungsmethode
  • Klicken Sie nun auf Konfiguration speichern Klicken Sie auf die Schaltfläche, um die OAuth 2.0-Authentifizierungseinstellungen zu speichern und diese Authentifizierungsmethode zum Sichern von WordPress-REST-API-Endpunkten zu aktivieren.
  • Sobald Sie auf die Schaltfläche klicken Konfiguration speichern, Sie erhalten die Client-ID, das Client-Geheimnis und den Token-Endpunkt (den Endpunkt, an den ein API-Aufruf erfolgen muss, um das Sicherheitstoken zu erhalten).
  • Jetzt wurde der Plugin-Einrichtungsteil erfolgreich durchgeführt. Nachfolgend finden Sie den Teil, in dem das eigentliche Sicherheitszugriffs-/JWT-Token abgerufen und weiter für den Zugriff auf die WordPress-REST-APIs verwendet wird.

  • Jetzt müssten Sie zwei Anrufe tätigen:
  • Ich: Holen Sie sich den Token

    • Um das Zugriffstoken/JWT-Token zu erhalten, müssen Sie einen API-Aufruf an den OAuth 2.0-Token-Endpunkt durchführen, der von unserem Plugin bereitgestellt wird (siehe unten).
    • 
      Request: POST https://<domain-name>/wp-json/api/v1/token
      Body:
      grant_type =<password>
      username =<wordpress username>
      password = <wordpress password>
      client_id =<client id>
      
      Sample curl Request Format-
      curl -d "grant_type=password&username=<wordpress_username>&password=<wordpress_password>&client_id=<client_id>"
      -X POST http://<wp_base_url>/wp-json/api/v1/token
      
    • Verwenden des Aktualisierungstokens
    • 
      Request: POST  https://<domain-name>/wp-json/api/v1/token
      Body:
      grant_type = <refresh_token>
      refresh_token =  <Refresh Token>
      
      Sample curl Request Format-
      curl -d "grant_type=refresh_token&refresh_token=<refresh_token>&client_id=<client_id>&client_secret=<client_secret>"
      -X POST http://<wp_base_url>/wp-json/api/v1/token
      

    II: Senden Sie eine aktuelle WordPress-REST-API-Anfrage

    • Sobald Sie das access_token / id_token (JWT-Token) mithilfe des OAuth 2.0-Passwortgewährungsflusses erhalten haben, können Sie damit den Zugriff auf die WordPress-REST-API-Endpunkte anfordern, wie unten gezeigt.
    • 
      Request: GET https://<domain-name>/wp-json/wp/v2/posts
      Header: Authorization :Bearer <access_token /id_token>
      
    • Anmerkungen: Das obige Token ist standardmäßig 1 Stunde lang gültig. Derselbe Token kann vor seiner Ablaufzeit mehrmals für mehrere REST-API-Anfragen verwendet werden. Sobald das Token abgelaufen ist, muss ein neues Token erstellt werden, um den WordPress-REST-API-Endpunktzugriff anzufordern.
  • Probieren Sie auch die Fehlerantwort für OAuth 2.0 mit Password Grant.

idp_sso_image1 WordPress REST API OAuth 2.0 mit Client Credentials Grant:

  • Gehen Sie im Plugin auf „Konfigurieren“. API-Authentifizierung Tab und klicken Sie auf OAuth 2.0-Authentifizierung als API-Authentifizierungsmethode.
  • Wählen Sie nun die OAuth 2.0-Zuschuss Geben Sie „Client Credentials Grant“ ein.
  • WordPress REST API OAuth 2.0 Authentifizierungsmethode mit JWT
  • Sobald Sie auf die Konfiguration speichern klicken, erhalten Sie die Kunden-ID, Kundengeheimnis und Token-Endpunkt.
  • Hier müssten Sie zwei Anrufe tätigen:
  • Ich: Holen Sie sich den Token

    • Nachdem Sie die obige Konfiguration gespeichert haben, erhalten Sie die Client-ID, das Client-Geheimnis und den Token-Endpunkt.
    • Um das Token zu erhalten, müssen Sie wie unten gezeigt eine Token-Anfrage senden
    • 
      Request: POST https://<domain-name>/wp-json/api/v1/token
      Body:
      grant_type = <client_credentials>
      client_id = <client id>
      client_secret = <client secret>
      
      Sample curl Request Format-
      curl -d "grant_type=client_credentials&client_id=<client_id>&client_secret=<client_secret>"
      -X POST http://<wp_base_url>/wp-json/api/v1/token
      
    • Verwenden des Aktualisierungstokens
    • 
      Request: POST https://<domain-name>/wp-json/api/v1/token
      Body:
      grant_type = <refresh_token>
      refresh_token = <Refresh Token>
      
      Sample curl Request Format-
      curl -d "grant_type=refresh_token&refresh_token=<refresh_token>&client_id=<client_id>&client_secret=<client_secret>"
      -X POST http://<wp_base_url>/wp-json/api/v1/token
      

    II: API-Anfrage senden

    • Sobald Sie die Zugangsdaten des access_token/id_token by OAuth 2.0-Clients erhalten haben, können Sie damit den Zugriff auf den WordPress-REST-API-Endpunkt anfordern, wie unten gezeigt.
    • 
      Request: GET https://<domain-name>/wp-json/wp/v2/posts
      Header: Authorization : Bearer <access_token /id_token>
    • Anmerkungen: Das obige Token ist standardmäßig 1 Stunde lang gültig. Derselbe Token kann vor seiner Ablaufzeit mehrmals für mehrere REST-API-Anfragen verwendet werden. Sobald das Token abgelaufen ist, muss ein neues Token erstellt werden, um den WordPress-REST-API-Endpunktzugriff anzufordern.
  • Probieren Sie auch die Fehlerantwort für OAuth 2.0 mit Client Credentials Grant.
  • Probieren Sie auch die Entwicklerdokumentation für weitere Informationen an.

Zusätzliche Sicherheitsfunktionen

Diese Methode bietet Ihnen zusätzliche Sicherheitsfunktionen, die Ihnen mehr Kontrolle über die Token und damit die Sicherheit Ihrer Website ermöglichen –

1. Aktualisierungstoken –

WordPress REST API OAuth 2.0 Authentifizierungs-Aktualisierungstoken
Sie können diese Option aktivieren, wenn Sie in der Token-Endpunktanforderung neben dem Zugriffstoken oder JWT-Token auch eine Zeichenfolge erhalten möchten, die ein Aktualisierungstoken ist. Dadurch erhält der Benutzer Zugriff auf dieselben Ressourcen, die ihm zuvor gewährt wurden. Mit dem erstellten neuen Token sollte der Benutzer keinen Zugriff über die ursprüngliche Gewährung hinaus erhalten. Die Aktualisierungstoken ermöglichen es Autorisierungsservern, kurze Zeiträume (Lebensdauer) für Zugriffstoken zu verwenden, ohne dass der Benutzer beim Ablauf des Tokens einbezogen werden muss. Mit diesem Token können Sie das Zugriffstoken/JWT-Token neu generieren, da diese zur Erhöhung der Sicherheit in Kürze ablaufen sollen.

2. Token widerrufen –

WordPress REST API OAuth 2.0 Authentifizierungs-Revoke-Token
Wenn Sie diese Option aktivieren, können Sie das vorhandene Zugriffstoken/JWT-Token widerrufen, um es ungültig zu machen. Daher kann das jeweilige Token nicht zur Authentifizierung der WP-REST-APIs verwendet werden. Die RESTful-API validiert zunächst die Anmeldeinformationen der Anwendung und ob das Token an die Anwendung ausgegeben wurde, die die Sperranforderung stellt. Falls die Validierung nicht erfolgreich ist, wird die jeweilige Anfrage abgelehnt und im Antrag wird ein Fehler angezeigt. Die API macht das Token ungültig und das Token kann nach dem Widerruf nicht mehr verwendet werden. Mit jeder Widerrufsanforderung werden die Token ungültig, die für denselben Typ der Autorisierungserteilung ausgestellt wurden.

idp_sso_image1 Codebeispiele in Programmiersprachen



 
    var client = new RestClient("http://<wp_base_url>/wp-json/api/v1/token ");
	client.Timeout = -1;
	var request = new RestRequest(Method.POST);
	request.AlwaysMultipartFormDatatrue;    
    request.AddParameter("grant_type", "client_credentials");
    request.AddParameter("client_id", "<client_id>");     
    request.AddParameter("client_secret", "<client_secret>");
	IRestResponse response = client.Execute(request);
	Console.WriteLine(response.Content);
 
    OkHttpClient client  = new OkHttpClient().newBuilder().build();
    MediaType mediaType = MediaType.parse("text/plain");    
    RequestBody body = new MultipartBody.Builder().setType(MultipartBody.FORM)    
    .addFormDataPart("grant_type", "client_credentials");
    .addFormDataPart("client_id", "<client_id>");     
    .addFormDataPart("client_secret", "<client_secret>");
     .build();
    Request request  = new Request.Builder()  
    .url("http://<wp_base_url>/wp-json/api/v1/token ")
    .method("POST", null)
     .build();
    Response responseclient.newCall(request).execute();
            
 
    var form = new FormData();
    form.append("grant_type", "client_credentials");
    form.append("client_id", "<client_id>");     
    form.append("client_secret", "<client_secret>");

    var settings  = {
        "url": "http://<wp_base_url>/wp-json/api/v1/token ",
        "method": "POST",
        "timeout": 0,
        "processData": false,
        "mimeType": "multipart/form-data",
        "contentType": false,
        "data": form
      };
      
      $.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/api/v1/token',
            CURLOPT_RETURNTRANSFER => true,
            CURLOPT_ENCODING => '',
            CURLOPT_MAXREDIRS => 10,
            CURLOPT_TIMEOUT => 0,
            CURLOPT_FOLLOWLOCATION => true,
            CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
            CURLOPT_CUSTOMREQUEST => 'POST',
            CURLOPT_POSTFIELDS => array('grant_type' => 'client_credentials','client_id' => '<client_id>','client_secret' => '<client_secret>'),
  
            ));          
          
    $response = curl_exec($curl);
    curl_close($curl);    
    echo $response;
            
 
    import http.client
    import mimetypes
    from codecs import encode
        
    conn   = http.client.HTTPSConnection("<wp_base_url>")
    dataList= []
    boundary = 'wL36Yn8afVp8Ag7AmP8qZ0SA4n1v9T'
    dataList.append(encode('--' + boundary))
    dataList.append(encode('Content-Disposition: form-data; name=grant_type;'))    
    
    dataList.append(encode('Content-Type: {}'.format('text/plain')))    
    dataList.append(encode(''))    
    
    dataList.append(encode("client_credentials"))
    dataList.append(encode('--' + boundary))    
    dataList.append(encode('Content-Disposition: form-data; name=client_id;'))    
    
    dataList.append('Content-Type: {}'.format('text/plain')))
    dataList.append(encode(''))    
    
    dataList.append(encode("<client_id>"))    
    dataList.append(encode('--'+ boundary))    
    dataList.append(encode('Content-Disposition: form-data; name=client_secret;'))
    
    dataList.append(encode('Content-Type: {}'.format('text/plain')))
    dataList.append(encode(''))
    
    
    dataList.append(encode("<client_secret<"))    
    dataList.append(encode('--'+boundary+'--'))
    dataList.append(encode(''))
    body  = b'\r\n'.join(dataList)    
    payload= body
    headers = {
        'Content-type': 'multipart/form-data; boundary={}'.format(boundary) 
    }
    conn.request("POST", "/wp-json/api/v1/token ", payload, headers)
    res= conn.getresponse()    
    data = res.read()    
    print (data.decode("utf-8"))   
 


 
    var client = new RestClient("http://<wp_base_url>/wp-json/api/v1/token ");
	client.Timeout = -1;
	var request = new RestRequest(Method.POST);
	request.AlwaysMultipartFormDatatrue;    
    request.AddParameter("grant_type", "refresh_token");
    request.AddParameter("client_id", "<client_id>");     
    request.AddParameter("client_secret", "<client_secret>");
    request.AddParameter("refresh_token", "<refresh_token>");
	IRestResponse response = client.Execute(request);
	Console.WriteLine(response.Content);
 
    OkHttpClient client  = new OkHttpClient().newBuilder().build();
    MediaType mediaType = MediaType.parse("text/plain");    
    RequestBody body = new MultipartBody.Builder().setType(MultipartBody.FORM)    
    .addFormDataPart("grant_type", "refresh_token");
    .addFormDataPart("client_id", "<client_id>");     
    .addFormDataPart("client_secret", "<client_secret>");
    .addFormDataPart("refresh_token", "<refresh_token>");
     .build();
    Request request  = new Request.Builder()  
    .url("http://<wp_base_url>/wp-json/api/v1/token ")
    .method("POST", null)
     .build();
    Response responseclient.newCall(request).execute();
            
 
    var form = new FormData();
    form.append("grant_type", "refresh_token");
    form.append("client_id", "<client_id>");     
    form.append("client_secret", "<client_secret>");
    form.append("refresh_token", "<refresh_token>");
    
    var settings  = {
        "url": "http://<wp_base_url>/wp-json/api/v1/token ",
        "method": "POST",
        "timeout": 0,
        "processData": false,
        "mimeType": "multipart/form-data",
        "contentType": false,
        "data": form
      };
      
      $.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/api/v1/token',
            CURLOPT_RETURNTRANSFER => true,
            CURLOPT_ENCODING => '',
            CURLOPT_MAXREDIRS => 10,
            CURLOPT_TIMEOUT => 0,
            CURLOPT_FOLLOWLOCATION => true,
            CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
            CURLOPT_CUSTOMREQUEST => 'POST',
            CURLOPT_POSTFIELDS => array('grant_type' => 'refresh_token','client_id' => '<client_id>','client_secret' => '<client_secret>','refresh_token' => '<refresh_token>'),

            ));          
          
    $response = curl_exec($curl);
    curl_close($curl);    
    echo $response;
            
 
    import http.client
    import mimetypes
    from codecs import encode
        
    conn   = http.client.HTTPSConnection("<wp_base_url>")
    dataList= []
    boundary = 'wL36Yn8afVp8Ag7AmP8qZ0SA4n1v9T'
    dataList.append(encode('--' + boundary))
    dataList.append(encode('Content-Disposition: form-data; name=grant_type;'))    
    
    dataList.append(encode('Content-Type: {}'.format('text/plain')))    
    dataList.append(encode(''))    
    
    dataList.append(encode("refresh_token"))
    dataList.append(encode('--' + boundary))    
    dataList.append(encode('Content-Disposition: form-data; name=client_id;'))    
    
    dataList.append('Content-Type: {}'.format('text/plain')))
    dataList.append(encode(''))    
    
    dataList.append(encode("<client_id>"))    
    dataList.append(encode('--'+ boundary))    
    dataList.append(encode('Content-Disposition: form-data; name=client_secret;'))
    
    dataList.append(encode('Content-Type: {}'.format('text/plain')))
    dataList.append(encode(''))
    
    dataList.append(encode("<client_id>"))    
    dataList.append(encode('--'+ boundary))    
    dataList.append(encode('Content-Disposition: form-data; name=refresh_token;'))    

    dataList.append(encode('Content-Type: {}'.format('text/plain')))
    dataList.append(encode(''))

    dataList.append(encode("<refresh_token<")) 
    dataList.append(encode('--'+boundary+'--'))
    dataList.append(encode(''))

    body  = b'\r\n'.join(dataList)    
    payload= body
    headers = {
        'Content-type': 'multipart/form-data; boundary={}'.format(boundary)  
    }
    conn.request("POST", "/wp-json/api/v1/token ", payload, headers)
    res= conn.getresponse()    
    data = res.read()    
    print (data.decode("utf-8"))   
 

idp_sso_image1 Postboten-Beispiele:

a) OAuth 2.0-Passwort-Grant-Methode:

  • Beispielanforderung zum Erhalt eines Tokens:
  • Sie können das Muster für die Postbotenanfrage unter herunterladen hier.
  • Nun extrahieren Sie die zip-Datei und importieren Sie die extrahierte JSON-Datei in die Postman-Anwendung.
  • WordPress REST API OAuth 2.0 Authentifizierungsmethode Postman-Implementierung
  • Beispiel
  • WordPress REST API OAuth 2.0 Authentifizierungsmethode Postman ersetzt URL tatsächliche Ressource
  • Beispielanforderungsformat zum Anfordern von Ressourcen mithilfe des im letzten Schritt erhaltenen Tokens.
  • Sie können das Muster für die Postbotenanfrage unter herunterladen hier.
  • Extrahieren Sie nun die ZIP-Datei und importieren Sie die extrahierte JSON-Datei in die Postman-Anwendung.
  • WordPress REST API OAuth 2.0 Authentifizierungsmethode Postman-Implementierung
  • Beispiel
  • WordPress REST API OAuth 2.0 Authentifizierungsmethode Postman ersetzt URL tatsächliche Ressource

b) Methode zur Gewährung von OAuth 2.0-Client-Anmeldeinformationen:

  • Beispielanforderung zum Erhalt eines Tokens:
  • Sie können das Muster für die Postbotenanfrage unter herunterladen hier.
  • Extrahieren Sie nun die ZIP-Datei und importieren Sie die extrahierte JSON-Datei in die Postman-Anwendung.
  • WordPress REST API OAuth 2.0 Authentifizierungsmethode Postman-Implementierung
  • Beispiel
  • WordPress REST API OAuth 2.0 Authentifizierungsmethode Postman ersetzt URL tatsächliche Ressource

c) REST-API-Anfrage zum Abrufen der tatsächlichen Ressource:

  • Sie können das Muster für die Postbotenanfrage unter herunterladen hier.
  • Extrahieren Sie nun die ZIP-Datei und importieren Sie die extrahierte JSON-Datei in die Postman-Anwendung.
  • WordPress REST API OAuth 2.0 Authentifizierungsmethode Postman-Implementierung
  • Beispiel
  • WordPress REST API OAuth 2.0 Authentifizierungsmethode Postman-URL tatsächliche Ressource

idp_sso_image1 Feature Beschreibung

    1. Rollenbasierte REST-API-Einschränkung:

    Mit dieser Funktion können Sie den REST-API-Zugriff basierend auf den Benutzerrollen einschränken. Sie können die Rollen, für die Sie den Zugriff auf die angeforderte Ressource für die REST-APIs gewähren möchten, auf die Whitelist setzen. Wenn also ein Benutzer eine REST-API-Anfrage stellt, wird seine Rolle abgerufen und darf nur dann auf die Ressource zugreifen, wenn seine Rolle auf der Whitelist steht.

    Wie konfiguriere ich es?

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

    Hinweis: Die rollenbasierte Einschränkungsfunktion gilt für die Standardauthentifizierung (Benutzername: Passwort), die JWT-Methode und OAuth 2.0 (Passwortgewährung).

    2. Benutzerdefinierter Header

    Diese Funktion bietet die Möglichkeit, einen benutzerdefinierten Header anstelle des standardmäßigen „Autorisierungs“-Headers auszuwählen.

    Dies erhöht die Sicherheit, da der Header mit Ihrem „benutzerdefinierten Namen“ benannt wird. Wenn also jemand die REST-API-Anfrage mit dem Header „Autorisierung“ stellt, kann er nicht auf die APIs zugreifen.

    Wie konfiguriere ich es?

    • Gehen Sie zunächst zur Registerkarte „Erweiterte Einstellungen“ des Plugins.
    • Anschließend können Sie im Abschnitt „Benutzerdefinierter Header“ das Textfeld bearbeiten, um den gewünschten benutzerdefinierten Namen einzugeben.
    • Postman-Implementierung der WordPress-REST-API-Basisauthentifizierungsmethode
    3. Schließen Sie REST-APIs aus

    Mit dieser Funktion können Sie Ihre REST-APIs auf die Whitelist setzen, sodass auf diese ohne Authentifizierung direkt zugegriffen werden kann. Daher sind alle diese auf der Whitelist aufgeführten REST-APIs öffentlich verfügbar.

    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, das für den öffentlichen Zugriff auf die Whitelist gesetzt werden muss.
    • Postman-Implementierung der WordPress-REST-API-Basisauthentifizierungsmethode
    • Beispiel: Angenommen, Sie möchten die REST-API ausschließen. /wp-json/wp/v2/posts‘, dann müssen Sie ‚/wp/v2/posts‘ in das Textfeld eingeben.
    4. Ablauf des benutzerdefinierten Tokens

    Diese Funktion gilt für JWT- und OAuth 2.0-Methoden, die zeitbasierte Token zur Authentifizierung der WordPress-REST-API-Endpunkte verwenden. Mit dieser Funktion können Sie das benutzerdefinierte Ablaufdatum für die Token festlegen, sodass das Token nicht mehr gültig ist, sobald das Token abläuft.

    Wie konfiguriere ich es?

    • Gehen Sie zunächst zur Registerkarte „Erweiterte Einstellungen“ des Plugins.
    • Anschließend können im Abschnitt „Token-Ablaufkonfiguration“ die Gültigkeit des Zugriffstokens und das Aktualisierungstoken (verwendet für die OAuth 2.0-Methode) geändert werden. Standardmäßig ist die Ablaufzeit des Zugriffstokens auf 60 Minuten und die Ablaufzeit des Aktualisierungstokens auf 14 Tage eingestellt. Daher kann mit dieser Funktion der Ablauf entsprechend den Anforderungen angepasst werden.
    • Postman-Implementierung der WordPress-REST-API-Basisauthentifizierungsmethode

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.


Hallo!

Brauchen Sie Hilfe? Wir sind hier!

Support
Kontaktieren Sie den miniOrange-Support
Erfolg

Vielen Dank für Ihre Anfrage.

Wenn Sie innerhalb von 24 Stunden nichts von uns hören, können Sie gerne eine Folge-E-Mail an senden info@xecurify.com