El complemento de autenticación de API REST de WordPress brinda seguridad contra el acceso no autorizado a sus API REST de WordPress.
Resultados de la búsqueda :
×La autenticación de la API REST de WordPress mediante el método de proveedor externo implica el uso de tokens (token de acceso/token de id/token jwt) recibidos de proveedores externos como Google, Facebook, Firebase, Apple, Azure AD, Keycloak, Okta, AWS Cognito. , Github, Slack, Gitlab, etc. para acceder de forma segura a la API de WordPress Rest.
Los puntos finales de WordPress no son seguros de forma predeterminada y los datos se pueden robar a través de API REST en formato JSON. La autenticación de API REST de WordPress le permite llamar a las API REST con múltiples métodos de seguridad como autenticación básica, clave API, token JWT, token OAuth. En esta guía utilizaremos el token OAuth emitido por proveedores de OAuth/OpenID Connect/Firebase para validar las solicitudes de API REST que mantendrán su sitio web de WordPress protegido y seguro.
Cada vez que se realice una solicitud para acceder a la API REST, la autenticación se realizará contra ese token emitido por proveedores externos como Google, Facebook, Firebase, Apple, okta, etc., y en base a la validación de la API. token, se permitirá el acceso a los recursos para esa solicitud de API REST. Por lo tanto, el token único que obtuvo en su aplicación después de iniciar sesión en SSO se puede utilizar más para acceder a los puntos finales de la API REST de WP.
El complemento de autenticación de API REST de WordPress brinda seguridad contra el acceso no autorizado a sus API REST de WordPress.
1. La solicitud del punto final de la API REST de WordPress se realiza con el token de acceso/id obtenido de los proveedores de identidad de OAuth/OpenID Connect pasado en el encabezado de Autorización con el tipo de token como Portador.
2. Nuestro complemento supervisa la solicitud de la API REST de WordPress y la solicitud de validación/autenticación del token JWT se envía al proveedor (servidor) de identidad de OAuth/OpenID Connect.
3. La respuesta se devuelve desde el proveedor de identidad (Servidor) de OAuth/OpenID Connect para la solicitud realizada anteriormente para validar el token JWT.
4. Si la validación/autenticación del token JWT es exitosa, se permite acceder al recurso solicitado, lo que significa que el solicitante ahora está autorizado a acceder al recurso/datos y, en caso de que la validación del token falle, se devolverá una respuesta de error. . Por lo tanto, los datos de los recursos ahora están protegidos y se puede acceder a ellos con autorización, por lo que la seguridad no es una preocupación.
Caso de uso relacionado: ¿Cómo evitar que los puntos finales de la API REST de WordPress utilicen el token JWT proporcionado por Social Login o los proveedores de identidad OAuth2.0/OpenID Connect?
¿Cómo realizar la autenticación y garantizar la seguridad o realizar la autorización para otorgar acceso a los puntos finales de la API REST de WordPress en función del token de acceso/identificación proporcionado por los proveedores de inicio de sesión social/OAuth durante el flujo de inicio de sesión SSO de OAuth/OpenID?
Request: GET https://<domain-name>/wp-json/wp/v2/posts
Header:
access_token : < access_token >
OR
id_token : < id_token >
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", "< access_token > OR id_token <id_token>");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
OkHttpClient client = new OkHttpClient().newBuilder().build();
MediaType mediaType = MediaType.parse("text/plain");
RequestBody body = RequestBody.create(mediaType, "");
Request request = new Request.Builder()
.url("http://<wp_base_url>/wp-json/wp/v2/posts ")
.method("GET", null)
.addHeader = ("Authorization", "< access_token > OR id_token <id_token>")
.build();
Response responseclient.newCall(request).execute();
var settings = {
"url": "http://<wp_base_url>/wp-json/wp/v2/posts ",
"method": "GET",
"timeout": 0,
"headers": {
"Authorization": "< access_token > OR id_token <id_token>"
},
};
$.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 => 'GET',
CURLOPT_HTTPHEADER => array(
'Authorization: < access_token > OR id_token <id_token>'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import http.client
conn = http.client.HTTPSConnection("<wp_base_url>")
payload= "
headers = {
'Authorization': '< access_token > OR id_token <id_token>'
}
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:
1. Restricción de API REST basada en roles:
Esta característica permite restringir el acceso a la API REST según los roles de usuario. Puede incluir en la lista blanca los roles para los que desea permitir el acceso al recurso solicitado para las API REST. Entonces, cada vez que un usuario realiza una solicitud de API REST, se recuperará su función y solo se le permitirá acceder al recurso si su función está en la lista blanca.
¿Cómo configurarlo?
Nota: La función de restricción basada en roles es válida para autenticación básica (nombre de usuario: contraseña), método JWT y OAuth 2.0 (concesión de contraseña).
2. Encabezado personalizado
Esta característica proporciona una opción para elegir un encabezado personalizado en lugar del encabezado predeterminado "Autorización".
Aumentará la seguridad ya que el encabezado tiene el nombre de su "nombre personalizado", por lo que si alguien realiza la solicitud de API REST con un encabezado como "Autorización", no podrá acceder a las API.
¿Cómo configurarlo?
3. Excluir las API REST
Esta característica le permite incluir sus API REST en la lista blanca para que se pueda acceder a ellas directamente sin ninguna autenticación. Por lo tanto, todas estas API REST incluidas en la lista blanca están disponibles públicamente.
¿Cómo configurarlo?
4. Caducidad del token personalizado
Esta característica es aplicable a los métodos JWT y OAuth 2.0 que utilizan tokens basados en el tiempo para autenticar los puntos finales de la API REST de WordPress. Esta función le permite establecer el vencimiento personalizado para los tokens, de modo que el token ya no será válido una vez que caduque.
¿Cómo configurarlo?
Por lo tanto, con esta función de caducidad de token personalizada, la seguridad aumenta aún más.
5. Habilite el cifrado avanzado para los tokens usando HMAC
Esta función está disponible con el método de autenticación básica en el que, de forma predeterminada, el token se cifra mediante la técnica de codificación Base64, pero con la función avanzada, el token se puede cifrar con cifrado HMAC altamente seguro, que es muy seguro.
6. Validación de firma para tokens basados en JWT
Esta característica permite una firma segura de la firma JWT para el token JWT, de modo que su token JWT sea mucho más seguro y la firma solo se pueda decodificar utilizando el secreto/certificado del cliente. Significa que su firma es privada y otros no pueden verla.
Brindamos soporte para 2 algoritmos de firma: HS256 y RS256. Por lo tanto, cualquiera de los algoritmos de firma se puede elegir en el menú desplegable como se muestra en la imagen de arriba.
Además, debe agregar su secreto de cliente o certificado desde el cual se utiliza para firmar la firma del JWT.
7. Cree claves/tokens API específicos del usuario
Cómo utilizar esta función:
Envíenos un correo electrónico a apisupport@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.
El complemento de autenticación de API REST de WordPress proporciona seguridad contra el acceso no autorizado a sus API REST de WordPress. Le proporciona una variedad de métodos de autenticación como autenticación básica, autenticación de clave API, autenticación OAuth 2.0 y autenticación JWT.
Este complemento le permite crear puntos finales personalizados/rutas REST para buscar/modificar/crear/eliminar datos con una interfaz gráfica fácil de usar y también con consultas SQL personalizadas. Además, el complemento proporciona la función de integrar API externa en su sitio de WordPress con plataformas de terceros.
¿Necesitas ayuda? ¡Estamos aquí!
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
Esta declaración de privacidad se aplica a los sitios web de miniorange que describen cómo manejamos la información personal. Cuando visita cualquier sitio web, este puede almacenar o recuperar información en su navegador, principalmente en forma de cookies. Esta información puede ser sobre usted, sus preferencias o su dispositivo y se utiliza principalmente para que el sitio funcione como usted espera. La información no lo identifica directamente, pero puede brindarle una experiencia web más personalizada. Haga clic en los encabezados de las categorías para comprobar cómo manejamos las cookies. Para conocer la declaración de privacidad de nuestras soluciones, puede consultar la políticas de privacidad.
Las cookies necesarias ayudan a que un sitio web sea totalmente utilizable al permitir funciones básicas como navegación en el sitio, iniciar sesión, completar formularios, etc. Las cookies utilizadas para la funcionalidad no almacenan ninguna información de identificación personal. Sin embargo, algunas partes del sitio web no funcionarán correctamente sin las cookies.
Estas cookies solo recopilan información agregada sobre el tráfico del sitio web, incluidos visitantes, fuentes, clics y visitas a la página, etc. Esto nos permite saber más sobre nuestras páginas más y menos populares junto con la interacción de los usuarios en los elementos procesables y, por lo tanto, permitirnos mejorar el rendimiento de nuestro sitio web y nuestros servicios.