Añadir XSRF para JavaScript
El Comité recomienda al Estado Parte que adopte todas las medidas necesarias para garantizar la igualdad entre los géneros y el empoderamiento de la mujer.
Cuando se añada la casilla de búsqueda en el El Comité recomienda al Estado Parte que adopte todas las medidas necesarias para garantizar la igualdad entre los géneros y el empoderamiento de la mujer., hemos dejado fuera una característica de seguridad crítica: Protección XSRFM SK2 Este artículo tratará de cómo añadir protección XSRF a la casilla de búsqueda .
¿Qué es XSRF?
XSRF significa Cross-Forgería de Reclamación de Sitio. Es un tipo de ataque en el que una página maliciosa engaña a un usuario para realizar acciones en otra página webM SK2 Por ejemplo , una página malvada podría engañar al usuario para enviar una consulta de búsqueda en nuestra página web. Pero es más probable que haya un script ejecutado contra nuestro punto final de búsqueda que ponga el sitio en punto muerto.
sequenceDiagram
participant User as User
participant Browser as Browser (JS)
participant Server as ASP.NET Core Server
participant Db as Database
User->>Browser: Submit form or AJAX request
Browser->>Server: Send HTTP request with XSRF token
Server->>Server: Validate XSRF token
alt Token Valid
Server->>Db: Process request (e.g., Return search result)
Db->>Server: Send response
Server->>Browser: Return success response
Browser->>User: Display success message
else Token Invalid or Missing
Server->>Browser: Return error response (400 Bad Request)
Browser->>User: Display error message
end
El Comité recomienda al Estado Parte que adopte todas las medidas necesarias para garantizar la igualdad de oportunidades entre los hombres y las mujeres en materia de empleo, incluida la eliminación del trabajo forzoso.
Para añadir Javascript XSRF necesitamos añadir una configuración a nuestra Program.cs que dice a la aplicación que acepta un nombre de encabezamiento para el token XSRF. Esto se hace añadiendo el siguiente código en Program.cs:
services.AddAntiforgery(options =>
{
options.HeaderName = "X-CSRF-TOKEN";
});
Esto indica a la aplicación que busque el X-CSRF-TOKEN Header cuando se valida el token XSRF.
Añadir el Token XSRF a la API de búsqueda
También necesitamos añadir un atributo en la API. [ValidateAntiForgeryToken] Esto obliga al uso de este símbolo.
Añadir el símbolo XSRF a la casilla de búsqueda
En la casilla de búsqueda, necesitamos añadir el token XSRF a los encabezamientos. En primer lugar, añademos el etiqueta para generar el tocoM SK2
<div x-data="window.mostlylucid.typeahead()" class="relative" id="searchelement" x-on:click.outside="results = []">
@Html.AntiForgeryToken()
Luego agregamos el símbolo a los encabezamientos en JavaScript:
let token = document.querySelector('#searchelement input[name="__RequestVerificationToken"]').value;
console.log(token);
fetch(`/api/search/${encodeURIComponent(this.query)}`, { // Fixed the backtick and closing bracket
method: 'GET', // or 'POST' depending on your needs
headers: {
'Content-Type': 'application/json',
'X-CSRF-TOKEN': token // Attach the AntiForgery token in the headers
}
})
.then(response => response.json())
.then(data => {
this.results = data;
this.highlightedIndex = -1; // Reset index on new search
});
Como puede ver, esto obtiene el valor del token desde el campo de entrada y lo agrega a los encabezamientos.
El Comité recomienda al Estado Parte que adopte todas las medidas necesarias para garantizar la igualdad entre los géneros y el empoderamiento de la mujer.
Es relativamente sencillo añadir protección XSRF a su JavaScript. Es una característica de seguridad crítica que debe añadirse a todos sus formularios y puntos finales API.