Sökresultat :

×

WordPress REST API Key Authentication Method | Säkert REST API


WordPress REST API-nyckelautentisering involverar verifiera API-nyckeln (Bearer token) för att få tillgång till WP REST API:er. Varje gång en begäran initieras för att komma åt WP REST API-slutpunkter, är autentisering nödvändig med nyckeln (Bearer-token). Åtkomst till resurser för den begärda WordPress REST API-slutpunkten beviljas baserat på valideringen av API-nyckeln (Bearer-token).

API-nyckeln är ett autentiseringsprotokoll utformat för att tillåta utvecklare att generera autentiseringsnycklar som skulle kunna användas för resurser som processer på serversidan, mobiltelefonapplikationer och stationära datorer.

WordPress API-nyckelautentiseringsmetoden är ett viktigt sätt att säkerställa säkerheten för ditt WordPress REST API. Om API-nyckeln äventyras kan den återskapas, vilket gör att alla tidigare genererade nycklar förfaller automatiskt. Den nyskapade nyckeln kommer sedan att användas för WP API Key Authentication. Att misslyckas med att säkra ditt REST API kan innebära betydande säkerhetsrisker, eftersom det kan ge obehöriga personer tillgång till ditt system, vilket kan leda till dataintrång.

Den här guiden leder dig genom en detaljerad, steg-för-steg-process för installera och konfigurera WordPress REST API-autentisering för att förbättra säkerheten för ditt REST API.




WordPress Rest API-autentisering
Av miniOrange

WordPress REST API Authentication plugin ger säkerheten från obehörig åtkomst till dina WordPress REST API:er.

Lär dig mer

Steg för nedladdning och installation

  • Logga in på ditt WordPress-konto som admin.
  • Gå till WordPress Dashboard -> Plugins och klicka på Lägg till en ny.
  • Sök efter en WordPress REST API-autentisering plugin och klicka på installera nu.
  • När du har installerat klicka på Aktivera.

idp_sso_image1 Användningsfall: Skydda/säkra WordPress REST API-ändpunkter åtkomst via bärarnyckel/token


WordPress REST API Autentiseringsnyckelmetod

    1.  API-nyckelautentisering kan fungera som ett skydd för dina WordPress REST API-slutpunkter, såsom inlägg, sidor eller andra REST-API:er i WordPress, vilket skyddar dem från obehörig åtkomst och förnekar behovet av att dela en användares WP-inloggningsuppgifter eller klient-ID och klient hemlighet för autentisering. Denna WordPress API-nyckelgenerator skapar en unik autentiseringsnyckel, som du kan använda för att autentisera olika WordPress REST API:er på din webbplats.

    Att använda WordPress REST API-nyckelautentisering representerar en av de enklaste och mest använda metoderna för att förstärka ditt WP REST API med API-nyckelautentisering. Detta tillvägagångssätt förbättrar säkerheten för REST API:er på din WordPress-webbplats.


    2.   Föreställ dig att du har utvecklat en bloggapplikation för Android och iOS och att du har publicerat alla dina bloggar på WordPress. Du vill dock hämta inläggen/bloggarna från WordPress REST API:er samtidigt som du håller dem otillgängliga för allmänheten. I sådana fall är det tillrådligt att implementera WordPress REST API Key Authentication för att skydda dina GET-förfrågningar och säkerställa säkerheten för dina slutpunkter.


idp_sso_image1  Insticksprogrammet tillhandahåller två typer av API-nycklar/säkerhetstoken som kan användas för att autentisera WordPress REST API:er -


    I. Universal API-nyckel - Universal API-nyckeln kommer att vara mest lämplig för att autentisera WP REST API:er, som involverar HTTP GET-metoden och inte kräver WordPress-användarfunktioner.


    Vänligen notera: Den här nyckeln involverar inte användarfunktioner och kan inte användas för att komma åt de API:er som WordPress förväntar sig användarbehörigheter för. "Exempel - Om du bara vill använda GET API:erna för att hämta allmänna WordPress-inlägg, kommentarer etc.


    II. Användarspecifik API-nyckel - Det användarbaserade API:et kommer att vara det mest lämpliga för att autentisera WP REST API:er som involverar någon av HTTP-metoderna som - GET, POST, PUT, DELETE, speciellt i de fall där du vill utföra operationer som involverar användarkapacitet.


    Exempel - Om du vill utföra några operationer som att hämta WordPress-inlägg baserat på användarkapacitet (deras WP-roller), användardata, eller vill skapa nya användare, nya inlägg, etc.


idp_sso_image1 Läs Användningsfall för följande Rest API-autentiseringsmetoder:

1. Installera WordPress API Authentication Plugin [Premie]


    WordPress REST API Autentiseringsnyckelmetod
  • I plugin, gå till Fliken Konfigurera API-autentisering och klicka på API-nyckelautentisering som API-autentiseringsmetod.
  • När du har sparat konfigurationen, under Universal API-nyckelsektion du kommer att få alternativet att generera ny token, klicka på Generera ny nyckel knapp. Denna nyckel/token kommer att upphöra när du genererar en ny nyckel/token.
  • När du har genererat API-nyckeln (token) kan du använda den för att säkra dina WordPress REST API-slutpunkter. (Du kan alltid generera den nya API-nyckeln, och alla befintliga genererade nycklar kommer att förfalla automatiskt).
  • Du måste skicka API-nyckeln till auktoriseringshuvudet som en bärartoken medan du gör REST API-begäran till din WP-webbplats, som visas i steget nedan.
  • Användare som har denna token kan komma åt REST API som visas nedan.
  • 
      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
      
  • Rubriken förklaras nedan.
  •    I. Authorization : HTTP Tillstånd begäran-huvudet inkluderar vanligtvis användaragentens autentiseringsuppgifter eller tokentyp och tokenvärde, vilket fungerar som ett sätt att autentisera användaragenten med en server. Detta inträffar vanligtvis efter ett misslyckat autentiseringsförsök, där servern svarar med statusen 401 obehörigt.

       II. Bearer <token-value>: Smakämnen Bärare skapas av autentiseringsservern. När en klientapplikation begär autentiseringsservern autentiserar servern den token och ger ett svar till klientapplikationen i enlighet med detta.

  • Kolla in utvecklarens dokumentation för mer detaljer.
  • Kolla in Felsvar för API-nyckelautentisering.

miniorange img Kodprover i programmeringsspråk


 
  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>");    
  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>")    
   .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 <token-value >"
        },        
    };
    
    $.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>'
        ),
      
          ));          
        
  $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>'
  }
  conn.request("GET", "/wp-json/wp/v2/posts ", payload, headers)
  res= conn.getresponse()    
  data = res.read()    
  print (data.decode("utf-8"))   
  

idp_sso_image1 Postman prover:

    Följ stegen nedan för att göra REST API-begäran med Postman:

  • Ladda ner POSTMAN-samlingsexporten från här..
  • Importera den nedladdade JSON-filen till Postman-applikationen som visas nedan.
  • WordPress REST API Autentiseringsnyckelmetod postman importera JSON-fil
  • När du har importerat JSON-filen klickar du på REST API-begäran under Kollektioner som visas i den sista bilden. Byt nu ut med din Wordpress-domän i http://<wp_base_url>/wp-json/wp/v2/posts och ersätt API i rubriken med tokenvärdet som genererats i plugin-programmet.
  • Exempelvis:
  • WordPress REST API Autentiseringsnyckelmetod postman ersätter bas-url

idp_sso_image1 Funktionsbeskrivning

    1. Rollbaserade REST API-begränsningar:

    Den här funktionen gör det möjligt att begränsa REST API-åtkomst enligt användarroller. Du har möjlighet att ange vilka roller som ska tillåtas för att komma åt den begärda resursen via REST API:er. Därför, när en användare initierar en REST API-begäran, hämtas deras roll, och åtkomst till resursen beviljas endast om deras roll ingår i vitlistan.


    Hur konfigurerar man det?

    • Gå först till plugin-fliken "Avancerade inställningar".
    • I avsnittet Rollbaserad begränsning ges alla roller till en början åtkomst till API:erna som standard. Du kan dock begränsa åtkomsten selektivt genom att markera kryssrutan bredvid de roller du vill begränsa.
    • WordPress REST API grundläggande autentiseringsmetod implementering av postman
    • I skärmdumpen ovan är kryssrutan prenumerantroll aktiverad. Så närhelst en API-begäran görs av användaren med sin roll som prenumerant kommer den användaren inte att få åtkomst till den begärda resursen.

    Notera: Den rollbaserade begränsningsfunktionen är giltig för grundläggande autentisering (användarnamn: lösenord), JWT-metod, OAuth 2.0 (lösenordsbeviljande) och API-nyckelautentisering (användarspecifik API-nyckel).


    2. Anpassad rubrik

    Den här funktionen ger ett alternativ att välja en anpassad rubrik istället för standardhuvudet "Auktorisering". Detta kommer att förbättra säkerheten genom att introducera en specialanpassad rubrik. Om en individ försöker skicka en REST API-begäran med ett "Authorization"-huvud, kommer de inte att kunna komma åt API:erna.


    Hur konfigurerar man det?

    • Gå först till plugin-fliken "Avancerade inställningar".
    • Sedan i "Anpassad rubrik" kan du redigera textrutan för att ange det anpassade namn du vill ha.
    • WordPress REST API grundläggande autentiseringsmetod implementering av postman

    3. Uteslut REST API:er

    Den här funktionen låter dig skapa en vitlista för dina REST API:er, vilket möjliggör direkt åtkomst till dem utan behov av autentisering. Följaktligen blir alla REST API:er som ingår i denna vitlista offentligt tillgängliga.


    Hur konfigurerar man det?

    • Gå först till plugin-fliken "Avancerade inställningar".
    • Sedan i "Exclude REST APIs" kan du ange dina API:er i det föreskrivna formatet som måste vitlistas för allmänhetens tillgång.
    • WordPress REST API grundläggande autentiseringsmetod implementering av postman
    • Exempelvis: Anta att du vill utesluta REST API ' /wp-json/wp/v2/posts' så måste du ange '/wp/v2/posts' i textrutan.

    4. Skapa användarspecifika API-nycklar/tokens

    • Denna funktion är tillgänglig inom API-nyckelmetoden, vilket gör att tokens kan genereras baserat på användarspecifik information snarare än en slumpmässigt genererad token som är en universell nyckel.
    • När du använder den universella API-nyckeln/token kan användare sakna nödvändiga behörigheter för att komma åt specifika WordPress REST API:er med begäransmetoder som POST, PUT eller DELETE. Dessa API:er involverar åtgärder som att skapa användare, inlägg, sidor, etc., som kräver specifika användarbehörigheter eller roller för drift. Begränsningen uppstår eftersom den universella nyckeln genereras slumpmässigt och inte innehåller användarspecifika detaljer.
    • Den användarbaserade API-nyckel/token-funktionen ger användare möjlighet att använda WordPress REST API:er med begäransmetoder som POST, PUT och DELETE, som kräver användaruppgifter eller specifika roller för funktionalitet. När en WordPress REST API-begäran exekveras med den användarbaserade nyckeln, hämtar systemet användarens roll och beviljar åtkomst endast om användaren har de nödvändiga behörigheterna.
    • Till exempel: Endast användare med administratörs- och redaktörsroller har behörighet att skapa/redigera/ta bort ett inlägg.
    • Så om en begäran görs till detta API för att skapa/ta bort/redigera inlägget, kommer API-svaret att resultera i "Du får inte utföra den här operationen".
    • Nu, om en begäran görs med den användarbaserade token som genereras för användaren som har en administratörs- eller redaktörsroll, är det bara de som har tillgång till detta API och kan arbeta (skapa/uppdatera/ta bort) via API-anropet.
    • Så här använder du den här funktionen:

    • Välj användaren från rullgardinsmenyn och klicka på Skapa API-nyckel knapp.
    • WordPress REST API grundläggande autentiseringsmetod implementering av postman
    • Ett popup-fönster visas på skärmen, du behöver bara klicka på OK för att kopiera token.
    • WordPress REST API grundläggande autentiseringsmetod implementering av postman
    • Nu kan denna token användas med API-begäran precis som den universella nyckeln används för att göra API-begäran.

    Grattis! Du har framgångsrikt konfigurerat WordPress REST API Key Authentication med den här guiden. Nu är dina WordPress REST API-slutpunkter säkra och dina data är skyddade från obehörig åtkomst.

    miniorange img Ytterligare resurser

    Behöver hjälp?

    Maila oss vidare apisupport@xecurify.com för snabb vägledning (via e-post/möte) om ditt krav och vårt team hjälper dig att välja den bästa lämpliga lösningen/planen enligt dina krav.

Hej där!

Behövs hjälp? Vi är här!

stödja
Kontakta miniOrange Support
framgång

Tack för din förfrågan.

Om du inte hör från oss inom 24 timmar, skicka gärna ett uppföljningsmail till info@xecurify.com