Disable REST API

Omschrijving

De meest uitgebreide plugin voor het beheren van toegang tot de WordPress REST API!

Werkt als een “set it and forget it” installatie. Gewoon uploaden en activeren, en de volledige REST API is ontoegankelijk voor je algemene sitebezoekers.

Maar als je toegang moet verlenen tot bepaalde endpoints, kun je dat ook doen. Ga naar de pagina Instellingen en je kunt snel individuele endpoints (of hele vertakkingen van endpoints) op de lijst toegestaan zetten in de REST API.

Je kunt dit zelfs per gebruikersrol doen, zodat je niet-geauthenticeerde gebruikers één set regels hebben, terwijl WooCommerce klanten een andere hebben, terwijl Abonnees en Editors en Beheerders allemaal hun eigen regels hebben. LET OP: Standaard krijgen alle gedefinieerde gebruikersrollen nog steeds volledige toegang tot de REST API totdat je ervoor kiest om die instellingen te beheren.

Voor de meeste versies van WordPress retourneert deze plugin een authenticatie fout als een gebruiker geen toegang heeft tot een endpoint. Gebruik voor legacy ondersteuning WordPress 4.4, 4.5 en 4.6 het meegeleverde rest_enabled filter om de volledige REST API uit te schakelen.

Schermafdrukken

  • De JSON geretourneerd door een site met de API uitgeschakeld via filters (WP versies 4.4, 4.5, 4.6)
  • De JSON geretourneerd door een site met de API uitgeschakeld via authenticatiemethoden (WP versies 4.7+)
  • Op de pagina Instellingen kun je endpoints die zijn geregistreerd met de REST API selectief op de lijst toegestaan zetten, per gebruikersrol.

Installatie

  1. Upload de disable-json-api directory naar de /wp-content/plugins/ folder m.b.v. FTP
  2. Je kunt ook het disable-json-api_v #. #. Zip bestand uploaden naar de pagina ‘Plugins->Nieuwe toevoegen’ in je WordPress beheergebied
  3. Activeer de plugin via het ‘Plugins’ menu in WordPress

FAQ

Hoe weet ik of de plugin werkt?

Terwijl je bij WordPress bent aangemeld als een willekeurige gebruiker, werkt de REST API zoals bedoeld. Daarom moet je een nieuwe browser – of de incognito modus van Chrome – gebruiken om je site te testen met een schone sessie. Ga naar yourdomein.com/wp-json/ (of yourdomein.com/?rest_route=/ als je mooie permalinks hebt uitgeschakeld) terwijl je NIET bent ingelogd om de resultaten te testen. Je ziet een verificatiefout geretourneerd als de plugin actief is. “DRA: alleen geverifieerde gebruikers hebben toegang tot de REST API.”

Schakelt deze plugin elke REST API uit die op mijn site is geïnstalleerd?

Deze plugin is ALLEEN bedoeld om endpoints uit te schakelen die toegankelijk zijn via de core REST API die deel uitmaakt van WordPress zelf. Als een plugin of thema zijn eigen REST API heeft geïmplementeerd (niet te verwarren met het implementeren van hun eigen endpoints binnen de WordPress API), heeft deze plugin geen effect.

Beoordelingen

20 april 2020
The plugin uses a is_user_logged_in() check to grant access to disabled REST API endpoints. I run a membership site for one year and just realized it now, that any logged in visitor STILL HAVE ACCESS to any disabled REST API endpoints. This should be very explicit, and there should be a setting in the plugin settings page to set the minimum role for the user to have access to the disabled endpoints.
14 december 2019
A necessary plugin if you have a site for logged-in users. Thanks for this plug-in!
Lees alle 24 beoordelingen

Bijdragers & ontwikkelaars

“Disable REST API” is open source software. De volgende personen hebben bijgedragen aan deze plugin.

Bijdragers

“Disable REST API” is vertaald in 13 talen. Dank voor de vertalers voor hun bijdragen.

Vertaal “Disable REST API” naar jouw taal.

Interesse in ontwikkeling?

Bekijk de code, haal de SVN repository op, of abonneer je op het ontwikkellog via RSS.

Changelog

1.7

  • Getest tot WP v5.8
  • Vervang het gebruik van filemtime() door het versienummer van de plugin voor statische bestandsvragen. Rekwisieten @tangrufus om dit ter sprake te brengen!
  • Logische fout opgelost voor op rollen gebaseerde default_allow regels. Rekwisieten @msp1974 voor het rapport!
  • Een paar kleine updates in codestijl

1.6

  • Getest tot WP v5.6
  • Ondersteuning toegevoegd voor het beheren van endpoint toegang op per gebruikersrol basis
  • Hééél veel kleine veranderingen achter de schermen om het bovenstaande te ondersteunen

1.5.1

  • Getest tot WP v5.5

1.5

  • Getest tot WP v5.3
  • Versterking toegevoegd voor WordPress en PHP minimum versie vereisten
  • Kleine bug gerepareerd om onbedoelde lege routes te voorkomen
  • Kleine tekstupdates en het toevoegen van een tekstdomein aan vertaalfuncties die deze niet bevatten

1.4.3

  • Toegevoegd load_plugin_textdomain() voor i18n

1.4.2

  • Opgelost probleem dat onbedoelde ontgrendeling van endpoints veroorzaakte wanneer een andere WP_Error bestond voordat deze plugin zijn werk deed

1.4.1

  • Opgelost echo van tekst URL naar primaire plugins pagina in WP Dashboard

1.4

  • Getest voor WP v4.8
  • Getest voor PHP 5.3+
  • Instellingenscherm toegevoegd
  • Sitebeheerders kunnen nu routes op de toegestane lijst plaatsen waaraan ze niet geauthenticeerd toegang willen toestaan
  • dra_allow_rest_api filter toegevoegd aan de is_logged_in () controle, zodat ontwikkelaars gedetailleerder kunnen worden met rechten
  • Props aan @tangrufus voor alle hulp die in deze release is gestoken

1.3

  • Getest voor WP v4.7
  • Nieuwe functionaliteit toevoegen om authenticatie fouten in 4.7+ te verhogen voor niet-ingelogde gebruikers

1.2

  • Getest voor WP v4.5
  • Verwijdering van acties die REST informatie publiceren naar de head en header

1.1

  • Geüpdatet om de nieuwe filters te ondersteunen die zijn gemaakt in de 2.0 beta API

1.0

  • Initiële release