unwrap type tag serialize name form ejemplos jquery ajax security post

type - ¿Asesoramiento de seguridad para la publicación de datos de jquery ajax?



serialize jquery ajax (2)

Cualquier solicitud que hagan las llamadas AJAX en sus páginas también puede ser realizada por alguien externo a la aplicación. Si lo hace bien, no podrá decir si se hicieron como parte de una llamada AJAX de su aplicación web o de forma manual u otros medios.

Hay dos situaciones que puedo pensar de las que podría estar hablando cuando dice que quiere asegurarse de que solo sus llamadas AJAX puedan publicar datos: o bien no desea que un usuario malintencionado pueda publicar datos que interfieran con otro datos del usuario o si realmente desea restringir las publicaciones para que estén en el "flujo" de una operación de solicitud múltiple.

Si le preocupa el primer caso (alguien que envía datos maliciosos a / como otro usuario), la solución es la misma ya sea que esté usando AJAX o no; solo tiene que autenticar al usuario por cualquier medio que sea necesario, generalmente a través de la sesión Galleta.

Si le preocupa el segundo caso, tendrá que hacer algo como emitir un token único en cada paso del proceso y almacenar el token esperado en el lado del servidor. Luego, cuando se realiza una solicitud, verifique que haya una entrada correspondiente en el servidor para la acción que se está llevando a cabo y que los tokens esperados coincidan y que ese token no se haya utilizado todavía. Si no, rechaza la solicitud, si la hay, marca esa ficha como se usa y procesa la solicitud.

Si lo que le preocupa es algo más que uno de estos dos escenarios, entonces la respuesta dependerá de más detalles de los que ha proporcionado.

Estoy usando jquery ajax para publicar actualizaciones en mi servidor. Me preocupa asegurarme de haber implementado las medidas adecuadas para que solo mis llamadas AJAX puedan publicar datos.

Mi stack es PHP en Apache contra un back-end MySQL.

Consejo muy apreciado!


Use sesiones para asegurarse de que las publicaciones de Ajax se realicen en un contexto autenticado. Piense en su código Ajax como un cliente más de su servidor, de esta forma se vuelve más fácil abordar los problemas de autenticación.