Resultados de la búsqueda :

×

Método de autenticación de clave API REST para WordPress | API REST segura

La autenticación de clave API REST para WordPress implica verificar la clave API (token de portador) Para acceder a las API REST de WordPress, es necesario autenticarse mediante la clave (token de portador). El acceso a los recursos del punto final de la API REST solicitado se otorga tras la validación de dicha clave.
Para que conste, la clave API es un protocolo de autenticación diseñado para Permitir a los desarrolladores generar claves de autenticación que podrían usarse para recursos como procesos del lado del servidor, aplicaciones de teléfonos móviles y computadoras de escritorio.

La autenticación mediante clave API para WordPress es fundamental para garantizar la seguridad de tu API REST. Si la clave API se ve comprometida, se puede regenerar, lo que provoca que todas las claves generadas previamente caduquen automáticamente. La clave recién creada se utilizará entonces para la autenticación mediante clave API en WordPress. No proteger tu API REST puede suponer riesgos de seguridad importantes, ya que puede permitir el acceso a tu sistema a personas no autorizadas, lo que podría derivar en filtraciones de datos.

Esta guía lo guiará a través de un proceso detallado, paso a paso, para Instalación y configuración de la autenticación de la API REST para WordPress para mejorar la seguridad de su API REST.



Autenticación de API REST para WordPress

El plugin de autenticación de API REST para WordPress protege tus API REST contra el acceso no autorizado. Ofrece múltiples métodos de autenticación, como autenticación básica, autenticación con clave API, autenticación OAuth 2.0 y autenticación JWT.

Saber más   

  • Inicie sesión en su instancia de WordPress como administrador.
  • Ir a WordPress Panel de control -> Complementos y haga clic en Añadir nuevo.
  • Buscar un Autenticación de API REST complemento para WordPress y haga clic en Instalar ahora .
  • Una vez instalado, haga clic en Activa.


Método de clave de autenticación de API REST para WordPress

    1. La autenticación mediante clave API puede proteger los puntos finales de tu API REST para WordPress, como entradas, páginas o cualquier otra API REST de WordPress, evitando el acceso no autorizado y eliminando la necesidad de compartir las credenciales de inicio de sesión de WordPress del usuario o el ID de cliente y el secreto de cliente para la autenticación. Este generador de claves API para WordPress crea una clave de autenticación única que puedes usar para autenticar diversas API REST de WordPress en tu sitio web.

    Utilizar la autenticación mediante clave API REST para WordPress es uno de los métodos más sencillos y extendidos para reforzar la seguridad de tu API REST. Este método mejora la seguridad de las API REST en tu sitio web de WordPress.


    2. Imagina que has desarrollado una aplicación de blog para Android e iOS y has publicado todas tus entradas en WordPress. Sin embargo, quieres acceder a las entradas desde las API REST de WordPress sin que sean accesibles al público. En estos casos, es recomendable implementar la autenticación mediante clave API REST para WordPress, lo que protege tus solicitudes GET y garantiza la seguridad de tus puntos finales.


El plugin proporciona dos tipos de claves API/tokens de seguridad que se pueden usar para autenticar las API REST de WordPress.


    I. Clave API universal: la clave API universal será la más adecuada para autenticar las API REST, que utilizan el método HTTP GET y no requieren capacidades de usuario de WordPress.


    Nota: Esta clave no implica capacidades de usuario y no se puede usar para acceder a las API que requieren permisos de usuario. Ejemplo: Si solo desea usar las API GET para obtener publicaciones, comentarios, etc., generales de WordPress.


    II. Clave API específica del usuario: la API basada en el usuario será la más adecuada para autenticar las API REST que involucren cualquiera de los métodos HTTP como GET, POST, PUT, DELETE, especialmente en aquellos casos en los que se desee realizar operaciones que involucren capacidades del usuario.


    Ejemplo: si desea realizar alguna operación como obtener publicaciones de WordPress en función de las capacidades del usuario (sus roles de WP), datos del usuario, o si desea crear nuevos usuarios, nuevas publicaciones, etc.





    Método de clave de autenticación de API REST para WordPress
  • En el complemento, vaya a Configurar la pestaña Autenticación API y haga clic en Autenticación de clave API como método de autenticación API.
  • Una vez que guarde la configuración, en el Sección de clave API universal Obtendrá la opción Generar nuevo token, haga clic en Generar nueva clave Botón. Esta clave/token expirará cuando generes una nueva clave/token.
  • Una vez que generes la clave API (token), podrás usarla para proteger los puntos finales de tu API REST para WordPress. (Siempre puedes generar una nueva clave API, y todas las claves generadas existentes caducarán automáticamente).
  • Debes pasar la clave API al encabezado de autorización como un token portador mientras realizas la solicitud de API REST a tu sitio WP, como se muestra en el paso a continuación.
  • Los usuarios que tengan este token pueden acceder a la API REST como se muestra a continuación.
  • 
    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
    -H 'app-name:TheAppName'
    
  • El encabezado se explica a continuación.
  •    I. Authorization : El HTTP Autorización El encabezado de la solicitud suele incluir las credenciales del agente de usuario o el tipo y valor del token, lo que sirve para autenticar al agente de usuario con un servidor. Esto suele ocurrir tras un intento de autenticación fallido, donde el servidor responde con un estado de 401 No autorizado.

       II. Bearer <token-value>: El Portador Lo crea el servidor de autenticación. Cuando una aplicación cliente solicita el servidor de autenticación, este autentica el token y responde a la aplicación cliente.

  • Consulte el documentación del desarrollador para más información.
  • Consulte el Respuesta de error para autenticación de clave API.

 
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>");
request.AddHeader = ("app-name", "TheAppName");
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>");
.addHeader = ("app-name", "TheAppName");
.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 < access_token / id_token >",
"app-name": "TheAppName"
},        
};

$.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>'
'app-name: TheAppName'
),

));          

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

    Siga los pasos a continuación para realizar una solicitud de API REST utilizando Postman:

  • Descargue la exportación de la colección POSTMAN desde aquí.
  • Importe el archivo JSON descargado a la aplicación Postman como se muestra a continuación.
  • Autenticación de API REST para WordPress, método de clave, Postman, importar archivo JSON
  • Una vez que importe el archivo JSON, haga clic en el Solicitud de API REST (Lazy section loading) bajo la sección Colecciones como se muestra en la última figura. Ahora reemplace el con su dominio de Wordpress en el http://<wp_base_url>/wp-json/wp/v2/posts y reemplazar la API en el encabezado con el valor del token tal como se generó en el complemento.
  • Ejemplo:
  • Autenticación de API REST para WordPress, método de clave, Postman, reemplazar URL base

1. Restricción de API REST basada en roles:


Esta función permite restringir el acceso a la API REST según los roles de usuario. Puede especificar qué roles deben tener permiso para acceder al recurso solicitado mediante las API REST. Por lo tanto, cuando un usuario inicia una solicitud a la API REST, se recupera su rol y solo se le concede acceso al recurso si su rol está incluido en la lista blanca.


¿Cómo configurarlo?

  • Primero, vaya a la pestaña 'Configuración avanzada' del complemento.
  • En la sección "Restricción basada en roles", inicialmente, todos los roles tienen acceso a las API de forma predeterminada. Sin embargo, puede limitar el acceso selectivamente activando la casilla junto a los roles que desee restringir.
  • Método de autenticación básica de la API REST para la implementación de WordPress en Postman
  • En la captura de pantalla anterior, la casilla de verificación del rol de suscriptor está habilitada. Por lo tanto, cada vez que un usuario con su rol de suscriptor realiza una solicitud de API, no podrá acceder al recurso solicitado.

Nota: La función de restricción basada en roles es válida para la autenticación básica (nombre de usuario: contraseña), el método JWT, OAuth 2.0 (concesión de contraseña) y la autenticación con clave API (clave API específica del usuario).


2. Encabezado personalizado


Esta función permite elegir un encabezado personalizado en lugar del encabezado "Autorización" predeterminado. Esto mejora la seguridad al incluir un encabezado con nombre personalizado. Si alguien intenta enviar una solicitud de API REST con un encabezado "Autorización", no podrá acceder a las API.


¿Cómo configurarlo?

  • Primero, vaya a la pestaña 'Configuración avanzada' del complemento.
  • Entonces en el 'Cabecera personalizada' Sección, puede editar el cuadro de texto para ingresar el nombre personalizado que desee.
  • Método de autenticación básica de la API REST para la implementación de WordPress en Postman

3. Excluir las API REST


Esta función le permite crear una lista blanca para sus API REST, lo que permite el acceso directo a ellas sin necesidad de autenticación. Por lo tanto, todas las API REST incluidas en esta lista blanca pasan a ser de acceso público.


¿Cómo configurarlo?

  • Primero, vaya a la pestaña 'Configuración avanzada' del complemento.
  • Luego, en 'Excluir API REST', puede ingresar sus API en el formato prescrito que debe estar en la lista blanca para acceso público.
  • Método de autenticación básica de la API REST para la implementación de WordPress en Postman
  • Ejemplo: Supongamos que desea excluir la API REST '/wp-json/wp/v2/posts', entonces debe ingresar '/wp/v2/posts' en el cuadro de texto.

4. Crear claves/tokens API específicos del usuario


  • Esta función está disponible dentro del método de clave API, lo que permite generar tokens basados ​​en información específica del usuario en lugar de un token generado aleatoriamente, que es una clave universal.
  • Al usar la clave/token de API universal, los usuarios podrían carecer de los permisos necesarios para acceder a ciertas API REST de WordPress con métodos de solicitud como POST, PUT o DELETE. Estas API implican acciones como la creación de usuarios, entradas, páginas, etc., que requieren permisos o roles de usuario específicos. Esta limitación se debe a que la clave universal se genera aleatoriamente y no incluye detalles específicos del usuario.
  • La función de clave/token API basada en el usuario permite a los usuarios utilizar las API REST de WordPress con métodos de solicitud como POST, PUT y DELETE, que requieren credenciales de usuario o roles específicos para su funcionamiento. Cuando se ejecuta una solicitud a la API REST de WordPress utilizando la clave basada en el usuario, el sistema recupera el rol del usuario y otorga acceso únicamente si este posee los permisos necesarios.
  • Por Ejemplo: Solo los usuarios con roles de administrador y editor tienen permiso para crear/editar/eliminar una publicación.
  • Entonces, si se realiza una solicitud a esta API para crear/eliminar/editar la publicación, la respuesta de la API será “No tiene permiso para realizar esta operación”.
  • Ahora, si se realiza una solicitud con el token basado en el usuario generado para el usuario que tiene un rol de administrador o editor, solo ellos tienen acceso a esta API y pueden operar (crear/actualizar/eliminar) a través de la llamada API.
  • Cómo utilizar esta función:

  • Seleccione el usuario del menú desplegable y haga clic en el Crear clave API .
  • Método de autenticación básica de la API REST para la implementación de WordPress en Postman
  • Aparecerá una ventana emergente en la pantalla, sólo tienes que hacer clic en el OK Botón para copiar el token.
  • Método de autenticación básica de la API REST para la implementación de WordPress en Postman
  • Ahora, este token se puede utilizar con la solicitud de API del mismo modo que se utiliza la clave universal para realizar la solicitud de API.

¡Enhorabuena! Has configurado correctamente la autenticación mediante clave API REST para WordPress siguiendo esta guía. Ahora, los puntos finales de tu API REST de WordPress son seguros y tus datos están protegidos contra accesos no autorizados.




Obtenga una prueba con todas las funciones



 Gracias por tu respuesta. Nos pondremos en contacto contigo en breve.

Algo salió mal. Por favor envíe su consulta nuevamente

API REST con autenticación mediante clave API

¿Necesitas ayuda?

Escríbanos a apisupport@xecurify.com para obtener orientación rápida (por correo electrónico o reunión) sobre sus necesidades y nuestro equipo le ayudará a seleccionar la solución o el plan más adecuado según sus requisitos.


ADFS_sso ×
¡Hola!

¿Necesitas ayuda? ¡Estamos aquí!

múltiples proveedores