Sökresultat :

×

WordPress REST API | Vad är det och hur man säkrar WP REST API: er


Vad är REST API?

Rest API, även känd som RESTful API, är en stil för att skriva applikationsprogrammeringsgränssnitt som begränsas av reglerna men REST-arkitektonisk stil och tillåter kommunikation mellan REST-slutpunkter. Kommunikationen mellan API måste skyddas med en säkerhetsmetod så att åtkomsten är säker och skyddad. Den här artikeln kommer att introducera REST API och relaterade terminologier och metoder för att säkra wordpress REST API. Vi ska också gå igenom miniOrange WordPress REST API Authentication plugin och dess funktioner för att skydda och säkra wordpress REST API.

Vad är REST?

REST eller Representational State Transfer, är i grunden insamlingen av JSON endpoints (URLs) som innehåller information om dina inlägg, sidor etc. Du kan helt enkelt göra en GET-förfrågan till din WordPress-endpoint och läsa din WordPress-webbplatsinnehåll i JSON-format utanför WordPress-installationen. Detta gör WordPress REST API tillgängligt för CRUD-operationer så att du enkelt kan skapa, läsa, uppdatera och ta bort innehåll på din webbplats utanför WordPress-installationen. Vi kommer att prata om att skydda slutpunkterna i senare delen av artikeln.

Vad är API?

WordPress Rest API
API eller Application Programming Interface tillåter två applikationer att kommunicera med varandra. Varje gång en användare skickar en begäran till servern. Servern svarar på den förfrågan med en resurs som hämtas från servern som kallas respons. API:et skapas på servern och användaren får prata med det. Detta ger ett gränssnitt för datorsystemen på webben, vilket gör det lättare för klient och server att interagera med varandra och dela data på begränsade, tydligt definierade sätt. API tillåter användaren att skicka eller ta emot data genom att göra ett särskilt "samtal" eller "begäran". JSON är ett programmeringsspråk som används för denna kommunikation. API kan användas för att göra fyra olika typer av förfrågningar:
1. GET (Hämta) : Denna funktion låter dig hämta data från servern via api-anropet.
2. POST (Skapa) : Denna funktion låter dig skriva ny information på servern.
3. PUT (Uppdatera) : Denna funktion låter dig uppdatera det redan tillgängliga innehållet på servern.
4. DELETE (Ta bort) : Denna funktion låter dig radera data från servern.

Vardagsexempel på API:

      1. Väderprognos: Väder-API:er är applikationsprogrammeringsgränssnitt som låter dig hämta väderinformation från de stora databaserna med väderprognoser. Detta görs med hjälp av ett API, som levererar svaret tillbaka till dig.

      2. Google Map: Google Maps API är användbart för att tillhandahålla data som geografiska platser, latituder, longituder, etc från Googles kartdatabas.

      3. Logga in med XYZ: Du kanske har sett på olika webbplatser möjligheten att logga in med google, facebook, etc. Istället för att använda användaruppgifterna gör applikationen ett API-anrop till Google, Facebook, etc och ber om användarverifiering för att släppa in användaren på webbplatsen.

Vad är WordPress REST API?

Vad är WordPress Rest API
WordPress REST API (Representational State Transfer Application Programming Interface) tillhandahåller ett gränssnitt för applikationer (som Android, IOS, React, Angular) för att interagera med din WordPress-webbplats genom att skicka och ta emot data som JSON-objekt (JavaScript Object Notation). Här använder vi JavaScript för att besöka WordPress REST API för att ladda innehåll från WordPress-databasen till vår webbsida.

Exempel: REST-slutpunkten nedan används för att hämta alla WordPress-inlägg och sidor.
  • GET /posts - https://www.example.com/wp-json/wp/v2/posts
  • GET /pages - https://www.example.com/wp-json/wp/v2/pages

WordPress REST API nyckeltermer

Innan vi dyker mer in i WordPress REST API och vad det betyder för utvecklare, låt oss ta en kort stund för att bekanta oss med grundläggande terminologier relaterade till WP REST API:

      1. Rutt: Det är en url som kan mappas till olika HTTP-metoder. Exempel: /wp-json/

      2. Slutpunkt: Det är en koppling mellan en individuell HTTP-metod och rutt.

      3. Begäran: Det är en instans av WP_REST_Request som kan användas för att hämta information för aktuella förfrågningar.

      4. Svar: Den tillhandahåller de begärda uppgifterna eller visar ett fel för att visa vad som gick fel under exekveringen/anropet.

      5. Schema: Det låter dig förstå vad alla indataparametrar och egenskaper kan skickas och tas emot via REST API.

      6. Controllerklasser: Det är där du hanterar/hanterar REST API-förfrågningar.

Hur är WordPress REST API användbart?

  • WordPress REST API gör CRUD (Create, Read, Update & Delete)-operationer tillgängliga var som helst istället för att vara begränsade till bara admin-instrumentpanelen på WordPress. Det ger den lätta formen av kommunikation mellan klienten och servern vilket gör det till en utmärkt lösning för datautbyte.
  • Den kan användas för att skapa iOS/Android, etc inbyggda appar. Vi kan använda vilket språk vi vill så länge som språket har möjlighet att göra HTTP-förfrågningar och tolka JSON som Node,js, Express.js, Ruby, Python etc.
  • Det gör att du kan ha en mobilapplikation för din WooCommerce ecom webbplats. Du kommer att kunna synkronisera dina användare, lager och all annan data mellan din wordpress-sajt och mobilapplikation. Dina kunder kommer att kunna betala snabbare på din mobilapplikation och därmed öka din försäljning och vinst.
  • WordPress REST API låter dig utöka funktionaliteten på en e-handelswebbplats (WooCommerce) utöver den grundläggande funktionaliteten som tillhandahålls av Woocommerce. Det hjälper dig att ansluta till externa API:er (fler funktioner) för att tillhandahålla fler faciliteter i din WooCommerce-butik på ett säkert sätt.

Vi vet att WordPress REST API öppnar dörren till många möjligheter men vi måste vara medvetna om att skydda och säkra våra slutpunkter. Vår plugin för WordPress har många säkerhetsfunktioner för att skydda wordpress-sajterna (WooCommerce, Learndash, Zoho, etc).

Hur fungerar WordPress REST API:er?

Det finns en enorm mängd data tillgänglig genom WordPress REST API och det är tillgängligt för alla som ber om det som inlägg, sidor, kommentarer etc. Cookie-autentisering är standardautentiseringsmetoden som ingår i WordPress för att skydda din data. När du loggar in på din instrumentpanel ställer detta in cookies på rätt sätt för dig, så plugin- och temautvecklare behöver bara ha en inloggad användare. REST API innehåller dock en teknik som kallas nonces för att undvika CSRF-problem. Detta hindrar andra webbplatser från att tvinga dig att utföra åtgärder utan att uttryckligen ha för avsikt att göra det. Detta kräver lite speciell hantering för API. Det är en säkrare metod för att skydda din WordPress-webbplats. REST API skickas via HTTP-slutpunkter (HyperText Transfer Protocol) med JSON-formatering (JavaScript Object Notation). Dessa slutpunkter kan representera inlägg, sidor och andra WordPress-datatyper eller andra anpassade slutpunkter. Den manipulerar data från klient och server utan att ha faktisk tillgång till databasen och därför förblir databasen säker.

WordPress REST API-slutpunkter är öppna som standard och visar sig därför vara ett kryphål på din webbplats. Förutom datastöld och nätfiske som kan initieras via dessa WordPress-slutpunkter, finns det ett större hot mot användardata som Wordpress tillhandahåller till alla som ber om det.

  • Exempel: https://example.com/wp-json/wp/v2/users/

Om du försöker komma åt dessa slutpunkter kommer WordPress REST API som standard att visa all data relaterade till dina användare, vilket kan leda till ett stort säkerhetsbrott.

Så med öppna WP-slutpunkter på dina wordpress-webbplatser som woocommerce, är det lätt för skrapor och innehållsstölder att stjäla från din WordPress-webbplats eftersom de är tekniskt kunniga nog att dra fördel av ditt misstag och slarv. Detta kan leda till potentiell integritetsrisk eftersom användardata som namn, användaradresser kan nås av dessa dåliga personer.

Risken uppstår också när de dåliga aktörerna har ditt användarnamn och nu kan de bruteforce in på din webbplats eftersom WordPress REST API har tillåtit åtkomst till din webbplats där de fick användarnamnen. För att vara säker kan du inaktivera REST API på din webbplats (WooCommerce, e-learning, etc) helt men det kommer att hålla dig tillbaka från att använda den här funktionen för att blomstra din verksamhet och dina möjligheter eftersom du kan integrera din wordpress-webbplats med andra slutpunkter, som central inventering, mobilappar etc. Istället för att förbjuda resten api helt måste du hitta ett sätt att säkra dem och använda Wordpress REST API för vad det är avsett för.

Hur WordPress REST API gynnar

Wordpress REST API öppnar en stor dörr av möjligheter för utvecklare att utforska och implementera funktioner som kommer att göra deras hektiska datahantering till en enkel uppgift. Det är på grund av JSON-formateringen av data som WordPress kan utbyta data med andra webbplatser och programvaror med WordPress REST API oavsett vilket språk appen/mjukvaran/webbplatsen är skriven på. Du behöver bara ta hand om att skydda slutpunkterna genom att lägga in säkra metoder som vi tillhandahåller i vårt plugin WordPress REST API Authentication. Detta kommer att bidra till att säkra din wordpress och även ge fler funktioner till din webbplats som du kan använda för tillväxt.

Användningsfall för WordPress REST API

Det finns olika användningsfall tillgängliga för WordPress REST API:er och några av de viktigaste användningsfallen är listade nedan:

    Datasynkronisering via Rest API
  • Anta att du vill utveckla en Android- och IOS-applikation för bloggändamål, där användare kan se bloggarna och posta bloggar med hjälp av själva mobilapplikationen. Nu i så fall vill du skapa, hämta, uppdatera och ta bort inläggen från mobilapplikationen också, vilket kan göras enkelt med hjälp av WordPress säkert.
  • Woocommerce datasynkronisering
  • Anta att du har en e-handelssida som är utvecklad med hjälp av WooCommerce-plugin och WordPress och att du vill utveckla inbyggda applikationer med hjälp av React-ramverket. Nu vill du inte skapa ytterligare en databas för den inbyggda applikationen och ladda upp alla produkter, kund- och beställningsdetaljer eftersom den inte kommer att vara effektiv och väl underhållen enligt fallet med WordPress. Du kan enkelt komma åt WooCommerce REST API: er med säkerhet och skydd i din inhemska applikation även med funktionaliteten för inloggning av användaren med WordPress-referenser och även med den sociala inloggningen. Du kan enkelt autentisera och komma åt WooCommerce REST API:er om du har loggat in med den sociala inloggningsplattformen i din applikation.

miniOrange WORDPRESS REST API AUTENTICATION PLUGIN för att skydda dina REST-slutpunkter.

WordPress-miniorange data synkroniseras via Rest API

Jag skulle föreslå att du laddar ner WP REST API Authentication-plugin för wordpress som kommer att göra det mycket lättare att komma åt WordPress REST API: er med branschstandardsäkerhet och skydd av data, enligt ditt användningsfall eller krav.

Den stöder många autentiseringsmetoder som API Key Authentication, Basic Authentication, JWT Authentication, OAuth 2.0 Authentication och Third Party OAuth 2.0 Provider Authentication method etc. för att skydda och säkra din WordPress-webbplats. Dessa är också kompatibla med alla nedanstående HTTP-metoder:

      1. HÄMTA (hämta): Denna funktion låter dig hämta data från servern via api-anropet.

      2. POST (Skapa) : Denna funktion låter dig skriva ny information på servern.

      3. PUT (Uppdatering): Denna funktion låter dig uppdatera det redan tillgängliga innehållet på servern.

      4. DELETE (Ta bort): Denna funktion låter dig radera data från servern.

Installera WordPress REST API Authentication Plugin

Det finns flera sätt att installera och ställa in vårt WordPress REST API-plugin för säkerheten på din WordPress-webbplats.

      1. Du kan ladda ner zip-paketet med plugin från miniOrange Marketplace eller direkt från WordPress Marketplace. När du har laddat ner zip-filen måste du extrahera innehållet i den nedladdade mappen till `/wp-content/plugins/`-katalogen på ditt system och sedan helt enkelt aktivera insticksprogrammet från WordPress-plugin-sidan på din wordpress-webbplats.

      2. En annan metod för att installera och dra nytta av vårt plugin är att ladda ner det från alternativet "lägg till nytt" på din plugin-sida.

      Var och en av de två enkla stegen låter dig skydda och säkra dina wordpress-sajter som WooCommerce, Learndash, etc. För detaljerad förklaring och steg-för-steg-guide för att installera plugin, vänligen besöka här.

Standard och anpassade/tredje parts insticksprograms Rest Api-slutpunkter:

WordPress tillhandahåller några vanliga REST-slutpunkter för att få data från och till wordpress-webbplatsen. Några av dessa slutpunkter är som nedan:

      1. inlägg

      2. sidor

      3. Media

      4. Post Meta

      5. Kommentarer

      6. användare

      7. Villkor

Men frågan uppstår att om du har ett behov av att skapa standard REST api-slutpunkter, hur kan du uppnå det? Vad händer om du vill hämta dina anpassade data från databasen med hjälp av REST API:er med säkerhet?

I så fall behöver du skapa anpassade WordPress REST API:er för att hantera funktionaliteten eller så kan du använda vårt annat plugin som heter CUSTOM API för WP för att göra anpassade WordPress REST API:er. Du kommer att kunna ansluta till API:er av Learndash, Gravity Forms, WooCommerce, Google Merchant, etc. Du kan helt enkelt ange API-namnet och HTTP-metoden du vill använda. Därefter måste du välja den databastabell som du vill hämta data från. Du kan också välja kolumner och göra villkoret för att få det utan att ens koda en enda rad.

Anpassning för alla typer av API-integration/autentisering i Wordpress:

Om du tror att du kommer att behöva några anpassningar i vårt WordPress REST API eller Custom API plugin, låt mig då ge dig en god nyhet att vi tillhandahåller anpassningar till kunder enligt deras användningsfall så att de inte behöver kompromissa med allt och njut av våra tjänster och support med våra REST API-plugins.

WordPress REST API-autentiseringsmetoder i vårt WordPress-plugin

Det här är autentiseringsmetoderna som finns i vårt WordPress REST API-plugin. För att läsa mer och bekanta dig med brevbärarproverna, klicka på länkarna nedan:

  • Grundläggande autentisering: Det är den grundläggande metoden för autentisering för att skydda och säkra wordpress-slutpunkter, där användare kan autentiseras genom att följa två metoder:

    1. Användarnamn:Lösenord:- I denna typ av grundläggande autentisering krävs användaruppgifter som användarnamn och lösenord för att godkänna användaren till systemet.
    2. Client-ID:Client-Secret:- I denna typ av grundläggande autentisering tillhandahålls klientreferenser av insticksprogrammet i auktoriseringshuvudet i form av base64-kodad eller mycket säker HMAC-kryptering.

  • API-nyckelautentisering: Denna säkerhetsmetod låter dig säkra wordpress-slutpunkter utan att avslöja användaruppgifter eftersom plugin-programmet genererar en API-nyckel för åtkomst till valfri resurs som också kan återskapas i plugin-programmet eller förfalla efter önskemål från admin.
  • JWT-autentisering: Den här metoden använder den plugin-utgivna JWT-token och fungerar som en API-autentisering för att skydda dina REST-API:er. Själva pluginet tillhandahåller REST API-slutpunkten genom vilken du kan generera JWT-token mycket enkelt genom att skicka de giltiga WordPress-användaruppgifterna.
  • OAuth 2.0-autentisering: Detta är den säkraste metoden för att autentisera och skydda REST-API:erna. Om du inte har en tredjepartsidentitetsleverantör, fungerar WordPress REST API Authentication som både OAuth Server (Provider) och API Authenticator för att skydda dina REST API:er.

    1. Bevilja lösenord:- Denna metod används när användarspecifik data behövs.
    2. Client Credentials Grant:- Denna metod används för att autentisera API-anrop utan att ha en specifik användare.

  • Tredjepartsleverantörsautentisering: Den här metoden används när du redan har en extern OAuth/OpenID Connect (identitetsleverantör) som ger dig en åtkomsttoken/id-token eller en JWT-token, som kan användas för att autentisera WordPress REST-API:erna och plugin-programmet kommer att validera token direkt från dessa token-leverantörer och endast efter framgångsrik validering tillåts API-ändpunkter att komma åt.

Vilken säkerhetsmetod ska man använda var?

  • Grundläggande autentisering: Om du vill skydda dina WP REST-API:er (t.ex. inlägg, sidor och andra REST-API:er) med användaruppgifter för wordpress-inloggning eller client-id:client-secret från själva plugin-programmet, då kan du välja den här metoden. Det rekommenderas att du använder den här metoden på HTTPS eller säkert socketlager.
  • API-nyckelautentisering: Om du vill skydda dina WP REST API:er (t.ex. inlägg, sidor och andra REST API:er) från oautentiserade användare men du inte vill dela användarnas inloggningsuppgifter eller klient-id, hemligt för att autentisera REST API, då kan du använda API Nyckelautentisering, som genererar en slumpmässig autentiseringsnyckel åt dig. Med den här nyckeln kan du autentisera valfritt REST API på din webbplats. Den här metoden tillhandahåller också en funktion för att generera användarspecifik API-nyckel för att komma åt och autentisera API:er som involverar användarbehörigheter, den genererade nyckeln kommer att vara i krypterat format och därför kommer det inte att finnas några brott mot säkerheten och inget möjligt dataläckage.
  • JWT-autentisering: Om du vill skydda dina REST-API:er med JWT-token och om du inte har någon tredjepartsleverantör/identitetsleverantör som utfärdar JWT-token, bör du välja JWT-autentiseringsmetoden. I det här fallet utfärdar vår WordPress REST API Authentication själv JWT-token och fungerar som en API Authenticator för att skydda dina REST API:er.
  • OAuth 2.0-autentisering (MEST SÄKERT och MEST REKOMMENDERAD): Om du vill skydda dina REST-API:er med hjälp av åtkomsttoken eller id-token (JWT-token) och samtidigt inte har någon tredjepartsleverantör/identitetsleverantör, bör du gå till OAuth 2.0 autentiseringsmetod. I det här scenariot fungerar vår WordPress REST API-autentisering som både OAuth-server och API-autentisering för att skydda dina REST-API:er.
  • Tredjepartsleverantörsautentisering: Om du letar efter att skydda/begränsa åtkomsten till dina WP REST API:er med hjälp av extern OAuth-leverantör/identitetsleverantör som Azure, Amazon Cognito, KeyCloak, Okta, ADFS, Google, Facebook, etc och Firebase, bör du välja tredjepartsleverantören Autentiseringsmetod. Här behöver du bara konfigurera plugin-programmet med Introspection Endpoint/User Info Endpoint som tillhandahålls av din identitetsleverantör och du kommer att kunna autentisera API-förfrågan med hjälp av token som tillhandahålls av din leverantörsapplikation.

Relaterade läsningar

Rekommenderade plugins

WordPress REST API Authentication plugin ger säkerheten för obehörig åtkomst till dina WordPress REST API:er. Det ger dig en mängd olika autentiseringsmetoder som grundläggande autentisering, API-nyckelautentisering, OAuth 2.0-autentisering, JWT-autentisering.

 Testad med 5.9.2

Denna plugin låter dig skapa anpassade slutpunkter/REST-rutter för att hämta/modifiera/skapa/ta bort data med ett lättanvänt grafiskt gränssnitt och även med anpassade SQL-frågor. Plugin-programmet tillhandahåller också funktionen för att integrera extern API i din WordPress-webbplats med tredjepartsplattformar.

 Testad med 5.9.2

miniorange img  Begär en demo av plugin-programmet


Få en komplett provversion



 Tack för ditt svar. Vi återkommer snart.

Något gick fel. Skicka din fråga igen

WordPress REST API | Vad är det och hur man säkrar WP REST API: er

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