Resultados de la búsqueda :

×

Método de autenticación básica de la API REST de WordPress


La autenticación básica de la API REST de WordPress le permite verificar el acceso a las API REST de WordPress validando un token de API generado a partir del nombre de usuario, la contraseña o las credenciales del cliente.

Cada vez que se realiza una solicitud para acceder a un punto final de la API REST de WordPress, se realiza una autenticación con el token asociado. Posteriormente, el acceso a los recursos para esa solicitud de API específica se determina en función de la validación exitosa de este token de API. Para mantener la seguridad, el token de acceso está cifrado para evitar violaciones de seguridad/datos.


Autenticación de la API Rest de WordPress
Por miniOrange

El complemento de autenticación de API REST de WordPress brinda seguridad contra el acceso no autorizado a sus API REST de WordPress.

Para saber más

Pasos para descargar e instalar

  • Inicie sesión en su cuenta de WordPress como administrador.
  • Ir a WordPress Panel de control -> Complementos y haga clic en Añadir nuevo.
  • Buscar un WordPress Autenticación de API REST complemento y haga clic en Instalar ahora .
  • En el momento que todos los DARWINs coticen incluyendo los deslizamientos instalado, haga clic en Activar.


Caso de uso: Proteger/proteger el acceso a los terminales de la API REST de WordPress mediante autenticación básica

    1. Según las credenciales del usuario:

    Suponga que tiene una aplicación para Android/iOS y les ha brindado a sus usuarios la función de publicar sus feeds personales o blogs en la aplicación móvil.

    En este caso, las solicitudes en su aplicación móvil deben estar autenticadas.

    La API REST de autenticación básica de WordPress con nombre de usuario y contraseña es el mejor método de autenticación para este caso. Será útil realizar operaciones de WordPress a través de API REST que impliquen permisos o capacidades de usuario.

    Se creará la sesión del usuario y, en función de sus capacidades de WordPress, se le permitirá acceder al contenido de la API REST o realizar las operaciones deseadas.


      Método de autenticación básica de la API REST de WordPress mediante credenciales de usuario

    2. Basado en las Credenciales del Cliente:

    Imagine que tiene una aplicación de Android o iOS y desea interactuar con el contenido de WordPress a través de sus puntos finales de API REST. Sin embargo, es reacio a utilizar las credenciales de usuario de WP para evitar cualquier exposición potencial que pueda permitir que un intruso obtenga acceso no autorizado al sitio de WP.

    En tal escenario, es recomendable emplear la API Rest de autenticación básica de WordPress, utilizando una ID de cliente y un secreto de cliente para proteger sus credenciales de usuario de WP.

    Con este método, solo necesita incluir el ID del cliente y el secreto del cliente proporcionados por el complemento en cada solicitud. En consecuencia, la seguridad no se ve comprometida, ya que el ID del cliente y el secreto se transmiten en un formato cifrado dentro del encabezado de Autorización básica de cada solicitud de API. Luego, estas credenciales se validan y, tras una validación exitosa, WP API Basic Auth otorga acceso a las API solicitadas.


      Método de autenticación básica de la API REST de WordPress utilizando credenciales de cliente

Algunos casos de uso para los siguientes métodos de autenticación básica de Rest API:

Configurar el método de autenticación básica de la API REST


mini naranja img Autenticación básica de API REST mediante nombre de usuario y contraseña:

  • En el complemento, vaya a Configurar métodos pestaña en la sección izquierda.
  • Haga clic en Autenticación básica como método de autenticación API.
  • Método de autenticación básica de la API REST de WordPress mediante nombre de usuario y contraseña
  • Seleccione Nombre de usuario y contraseña con codificación Base64 y haga clic Siguiente en la esquina superior derecha.
  • Método de autenticación básica de la API REST de WordPress mediante nombre de usuario y contraseña
  • Para probar la funcionalidad, complete los campos de nombre de usuario y contraseña de un usuario existente.
  • Método de autenticación básica de la API REST de WordPress mediante nombre de usuario y contraseña
  • Puede editar el punto final de la API REST para obtener detalles de ese punto final. Ejemplo: aquí se ha seleccionado el punto final /pages:
  • Haga clic en el Configuración de prueba y verifique el resultado que se muestra en la pantalla.
  • Haga clic en el Acabado del botón.
  • Método de autenticación básica de la API REST de WordPress mediante nombre de usuario y contraseña
  • Después de guardar la configuración de autenticación básica de la API REST con nombre de usuario y contraseña, para acceder a las API REST de WordPress, debe enviar una solicitud de API REST con su clave de autorización respectiva. Debe utilizar el formato de solicitud como se muestra a continuación.
  •    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" 
     
  • La función PHP base64_encode(string) para codificación base64 se puede utilizar de la siguiente manera:
  • 
    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==
  • Primero eche un vistazo al sitio web de la página Respuesta de error para autenticación básica utilizando nombre de usuario y contraseña.

mini naranja img Ejemplos de código en lenguajes de programación.



 
    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"))   
 

mini naranja img Muestras de cartero:

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

  • Haga clic en el Muestras de cartero pestaña en el complemento.
  • Implementación del cartero del método de autenticación básica de la API REST de WordPress
  • Ahora, coloque el cursor sobre la tarjeta Ejemplos de cartero de autenticación básica.
    • a) Para Nombre de Usuario-Contraseña

        WordPress REST API Método de autenticación básica cartero Archivo JSON para nombre de usuario: contraseña
      • Importar lo descargado Archivo JSON en la aplicación Postman como se muestra a continuación.
      • WordPress REST API Método de autenticación básica cartero importar archivo JSON
      • Una vez que importe el archivo json, haga clic en la solicitud de API REST en Colecciones, como se muestra en la última figura. Reemplace la con su dominio de Wordpress en el http://<wp_base_url>/wp-json/wp/v2/posts y reemplazar el codificado en base64 en el encabezado con el valor codificado base.
        • Ejemplo:
          Para nombre de usuario: usuario de prueba y contraseña: contraseña@123, el valor codificado en base64 será 'dGVzdHVzZXI6cGFzc3dvcmRAMTIz'

      Método de clave de autenticación de API REST de WordPress, cartero reemplaza la URL base

      b) Para ID de cliente y secreto de cliente

      • Archivo JSON del cartero del método de autenticación básica de la API REST de WordPress para la identificación del cliente y el secreto del cliente
      • Importar lo descargado Archivo JSON en la aplicación Postman como se muestra a continuación.
      • WordPress REST API Método de autenticación básica cartero importar archivo JSON
      • Una vez que importe el archivo json, haga clic en la solicitud de API REST en 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 el codificado en base64 en el encabezado con el valor codificado base.
      • El cartero del método de autenticación básica de la API REST de WordPress reemplaza la URL base

mini naranja img Descripción de la característica

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

    Esta característica le permite restringir el acceso a la API REST de acuerdo con los roles de los usuarios. Tiene la opción de especificar los roles a los que se les permite acceder al recurso solicitado a través de las API REST. En consecuencia, cuando un usuario realiza una solicitud de API REST, se verifica su rol y se otorga acceso al recurso exclusivamente si su rol está incluido en la lista blanca.


    ¿Cómo configurarlo?

    • Primero, ve al complemento. 'Ajustes avanzados' .
    • Entonces, en el Restricción basada en roles sección, todos los roles de forma predeterminada podrán acceder a las API. Puede habilitar la casilla de verificación de los roles para los que desea restringir el acceso.
    • Implementación del cartero del método de autenticación básica de la API REST de WordPress
    • En la imagen de arriba, la casilla de verificación de rol de suscriptor está habilitada. Entonces, cada vez que el usuario realiza una solicitud de API, con su rol de suscriptor, ese usuario 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 y OAuth 2.0 (concesión de contraseña).


    2. Encabezado personalizado:

    Esta característica ofrece la posibilidad de seleccionar un encabezado personalizado en lugar del predeterminado. 'Autorización' encabezamiento. Esto mejora la seguridad al permitirle nombrar el encabezado según su preferencia personalizada. En consecuencia, si alguien intenta realizar una solicitud de API REST con un encabezado llamado 'Autorización,'se les permitirá acceder a las API.


    ¿Cómo configurarlo?

    • Primero, ve al complemento. 'Ajustes avanzados' .
    • Entonces en el 'Cabecera personalizada' sección, puede editar el cuadro de texto para ingresar el nombre personalizado que desee.
    • Implementación del cartero del método de autenticación básica de la API REST de WordPress

    3. Excluir las API REST:

    Esta característica le permite designar ciertas API REST como incluidas en la lista blanca, lo que permite acceder a ellas directamente sin necesidad de autenticación. En consecuencia, todas estas API REST incluidas en la lista blanca pasan a ser de acceso público.


    ¿Cómo configurarlo?

    • Primero, ve al complemento. 'Ajustes avanzados' .
    • Entonces en el 'Excluir API REST', puede ingresar sus API en el formato prescrito que debe incluirse en la lista blanca para el acceso público.
    • Implementación del cartero del método de autenticación básica de la API REST de WordPress
    • Ejemplo: supongamos que desea excluir la API REST '/wp-json/wp/v2/posts' luego debe ingresar '/wp/v2/posts' en el cuadro de texto.

    4. Habilite el cifrado avanzado para los tokens usando HMAC:

    Esta característica se ofrece dentro del método de autenticación básica, donde el token generalmente se cifra utilizando la codificación Base64 de forma predeterminada. Sin embargo, con la opción avanzada, el token se puede cifrar utilizando el método de cifrado HMAC altamente seguro, que garantiza un nivel muy alto de seguridad.


    Método de autenticación básica de la API REST de WordPress mediante credenciales de usuario

mini naranja img Recursos adicionales

¿Necesitas ayuda?

Envíenos un correo electrónico a oauthsupport@xecurify.com para obtener orientación rápida (por correo electrónico/reunión) sobre sus necesidades y nuestro equipo le ayudará a seleccionar la mejor solución/plan adecuado según sus necesidades.

¡Hola!

¿Necesitas ayuda? ¡Estamos aquí!

SOPORTE
Póngase en contacto con el soporte técnico de miniOrange
comercial

Gracias por su consulta.

Si no recibe noticias nuestras dentro de las 24 horas, no dude en enviar un correo electrónico de seguimiento a info@xecurify.com