Sökresultat :

×

WordPress REST API grundläggande autentiseringsmetod


WordPress REST API Basic Authentication låter dig verifiera åtkomst till WordPress REST API:er genom att validera en API-token som genereras från användarnamnet, lösenordet eller klientuppgifterna.

Närhelst en begäran görs för att få åtkomst till en WordPress REST API-slutpunkt, genomgår den autentisering mot den associerade token. Därefter bestäms åtkomst till resurserna för den specifika API-begäran baserat på framgångsrik validering av denna API-token. För att upprätthålla säkerheten är åtkomsttoken krypterad för att förhindra eventuella säkerhets-/dataintrång.


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 installerad, Klicka på Aktivera.


Användningsfall: Skydda/säkra WordPress REST API-ändpunktsåtkomst med hjälp av grundläggande autentisering

    1. Baserat på användaruppgifter:

    Anta att du har en Android/iOS-app och har gett dina användare funktionen att lägga upp sina personliga flöden eller bloggar i mobilappen.

    I det här fallet bör förfrågningar på din mobilapp autentiseras.

    WordPress Basic Authentication REST API med användarnamn och lösenord är den bästa autentiseringsmetoden för detta fall. Det kommer att vara användbart att utföra WordPress-operationer via REST-API:er som involverar användarbehörigheter eller -funktioner.

    Användarsessionen kommer att skapas, och på grundval av deras WordPress-möjligheter kommer han/hon att tillåtas komma åt REST API-innehållet eller utföra önskade operationer.


      WordPress REST API grundläggande autentiseringsmetod med användaruppgifter

    2. Baserat på kunduppgifter:

    Föreställ dig att du har en Android- eller iOS-applikation och vill interagera med WordPress-innehåll genom dess REST API-slutpunkter. Du är dock ovillig att använda WP-användaruppgifter för att förhindra eventuell exponering som kan göra det möjligt för en inkräktare att få obehörig åtkomst till WP-webbplatsen.

    I ett sådant scenario är det tillrådligt att använda WordPress Basic Authentication Rest API, med ett klient-ID och klienthemlighet för att skydda dina WP-användaruppgifter.

    Med den här metoden behöver du bara inkludera klient-ID och klienthemlighet som insticksprogrammet tillhandahåller i varje begäran. Följaktligen förblir säkerheten kompromisslös, eftersom klient-ID och hemlighet överförs i ett krypterat format i huvudet för grundläggande auktorisering för varje API-begäran. Dessa referenser valideras sedan, och efter framgångsrik validering ger WP API Basic Auth åtkomst till de begärda API:erna.


      WordPress REST API grundläggande autentiseringsmetod med klientuppgifter

Vissa användningsfall för följande Rest API grundläggande autentiseringsmetoder:

Ställ in REST API grundläggande autentiseringsmetod


miniorange img REST API Basic Auth med användarnamn och lösenord:

  • I plugin, gå till Konfigurera metoder fliken i det vänstra avsnittet.
  • Klicka på Grundläggande autentisering som API-autentiseringsmetod.
  • WordPress REST API grundläggande autentiseringsmetod med användarnamn och lösenord
  • Välja Användarnamn och lösenord med Base64-kodning och klicka Nästa i övre högra hörnet.
  • WordPress REST API grundläggande autentiseringsmetod med användarnamn och lösenord
  • För att testa funktionaliteten, fyll i användarnamn och lösenord för en befintlig användare.
  • WordPress REST API grundläggande autentiseringsmetod med användarnamn och lösenord
  • Du kan redigera REST API-slutpunkten för att hämta detaljer från den slutpunkten. Exempel: /pages endpoint har valts här:
  • Klicka på Testkonfiguration och verifiera resultatet som visas på skärmen.
  • Klicka på Finish knapp.
  • WordPress REST API grundläggande autentiseringsmetod med användarnamn och lösenord
  • När du har sparat REST API Basic Auth Configuration med användarnamn och lösenord, för att komma åt WordPress REST API:er, måste du skicka en REST API-begäran med din respektive auktoriseringsnyckel. Du måste använda förfrågningsformatet som visas nedan.
  •    Request: GET https://<domain-name>/wp-json/wp/v2/posts
       Header: Authorization: Basic base64encoded <username:password>
    Sample Request Format- Example => username : testuser and password : password@123

    
         Sample curl Request Format-
         curl -H "Authorization:Basic base64encoded <username:password>"
         -X POST http://<wp_base_url>/wp-json/wp/v2/posts -d "title=sample post&status=publish" 
     
  • PHP base64_encode(string) funktion för base64-kodning kan användas enligt följande:
  • 
    base64_encode(‘testuser:password@123’) will results into ‘eGw2UllOdFN6WmxKOlNMRWcwS1ZYdFVrbm5XbVV2cG9RV FNLZw==’ as output.
    Sample request: GET https://<domain-name>/wp-json/wp/v2/posts Header: Authorization : Basic eGw2UllOdFN6WmxKOlNMRWcwS1ZYdFVrbm5XbVV2cG9RVFNLZw==
  • Kolla in Felsvar för Basic Auth med användarnamn och lösenord.

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.POST);
	request.AlwaysMultipartFormData = true;
	request.AddParameter("title", "Sample Post");
	request.AddParameter("status", "publish");
	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("title","Sample Post")
    .addFormDataPart("status", "publish") 
    .build();
    Request request  = new Request.Builder()
    .url("http://<wp_base_url>/wp-json/wp/v2/posts ")
    .method("POST", body)
     .build();
    Response responseclient.newCall(request).execute();
            
 
    var form = new FormData();
    form.append("title","Sample Post");
    form.append("status", "publish"); 

    var settings  = {
        "url": "http://<wp_base_url>/wp-json/wp/v2/posts ",
        "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/wp/v2/posts%20',
            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('title' => 'Sample Post','status' => 'publish'),
            ));
          
    $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=title;')) 

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

    dataList.append(encode("Sample Post"))
    dataList.append(encode('--' + boundary))    
    dataList.append(encode('Content-Disposition: form-data; name=status;'))    

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

    dataList.append(encode("publish")) 
    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/wp/v2/posts ", payload, headers)
    res= conn.getresponse()    
    data = res.read()    
    print (data.decode("utf-8"))   
 

miniorange img Postman prover:

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

  • Klicka på Postman prover fliken i plugin-programmet.
  • WordPress REST API grundläggande autentiseringsmetod implementering av postman
  • Håll nu muspekaren över kortet Basic Authentication Postman Samples.
    • a) För användarnamn-lösenord

        WordPress REST API Grundläggande autentiseringsmetod postman JSON-fil för användarnamn: lösenord
      • Importera det nedladdade JSON-fil i Postman Application enligt nedan.
      • WordPress REST API grundläggande autentiseringsmetod postman importera JSON-fil
      • När du har importerat json-filen klickar du på REST API-begäran under samlingarna som visas i den sista bilden. Ersätt med din Wordpress-domän i http://<wp_base_url>/wp-json/wp/v2/posts och byt ut base64-kodad i rubriken med det kodade basvärdet.
        • Exempelvis:
          För användarnamn: testanvändare och lösenord: password@123 kommer det base64-kodade värdet att vara 'dGVzdHVzZXI6cGFzc3dvcmRAMTIz'

      WordPress REST API Autentiseringsnyckelmetod postman ersätter bas-url

      b) För klient-ID och klienthemlighet

      • WordPress REST API Basic Authentication method postman JSON-fil för klient-id och klienthemlighet
      • Importera det nedladdade JSON-fil i Postman Application enligt nedan.
      • WordPress REST API grundläggande autentiseringsmetod postman importera JSON-fil
      • När du har importerat json-filen klickar du på REST API-begäran under samlingarna 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 byt ut base64-kodad i rubriken med det kodade basvärdet.
      • WordPress REST API grundläggande autentiseringsmetod postman ersätter bas-url

miniorange img Funktionsbeskrivning

    1. Rollbaserad REST API-begränsning:

    Den här funktionen låter dig begränsa REST API-åtkomst i enlighet med användarroller. Du har möjlighet att ange de roller som är tillåtna för åtkomst till den begärda resursen via REST API:er. Följaktligen, när en användare gör en REST API-begäran, kontrolleras deras roll, och åtkomst till resursen beviljas exklusivt om deras roll ingår i vitlistan.


    Hur konfigurerar man det?

    • Gå först till plugin-programmet 'Avancerade inställningar' fliken.
    • Då, i Rollbaserad begränsning kommer alla roller som standard att tillåtas åtkomst till API:erna. Du kan aktivera kryssrutan för de roller som du vill begränsa åtkomst för.
    • WordPress REST API grundläggande autentiseringsmetod implementering av postman
    • I bilden 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-metoden och OAuth 2.0 (lösenordsbeviljande).


    2. Anpassad rubrik:

    Den här funktionen erbjuder möjligheten att välja en personlig rubrik istället för standard 'Tillstånd' rubrik. Detta ökar säkerheten genom att du kan namnge rubriken enligt dina egna önskemål. Följaktligen, om någon försöker göra en REST API-begäran med en rubrik som heter 'Tillstånd,' kommer de att få åtkomst till API:erna.


    Hur konfigurerar man det?

    • Gå först till plugin-programmet 'Avancerade inställningar' fliken.
    • 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 ange vissa REST-API:er som vitlistade, vilket gör att de kan nås direkt utan behov av autentisering. Följaktligen blir alla dessa vitlistade REST API:er offentligt tillgängliga.


    Hur konfigurerar man det?

    • Gå först till plugin-programmet 'Avancerade inställningar' fliken.
    • Sedan i "Uteslut 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
    • Exempel: Anta att du vill utesluta REST API '/wp-json/wp/v2/posts' så måste du ange '/wp/v2/posts' i textrutan.

    4. Aktivera avancerad kryptering för tokens med HMAC:

    Denna funktion erbjuds inom den grundläggande autentiseringsmetoden, där token vanligtvis krypteras med Base64-kodning som standard. Men med det avancerade alternativet kan token krypteras med den mycket säkra HMAC-krypteringsmetoden, vilket garanterar en mycket hög säkerhetsnivå.


    WordPress REST API grundläggande autentiseringsmetod med användaruppgifter

miniorange img Ytterligare resurser

Behöver hjälp?

Maila oss vidare oauthsupport@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