Hemos integrado Discourse con otra aplicación, y los usuarios se gestionan en Keycloak. Cuando un usuario elimina su cuenta en la otra aplicación, también la eliminamos a través de la API en Discourse.
Funciona bien, pero la IP del usuario se bloquea automáticamente en Discourse, por lo que no hay forma de iniciar sesión como otro usuario desde la misma IP.
¿Se puede desactivar este bloqueo de IP? ¿O hacer que se desbloquee automáticamente después de un tiempo?
Sí. Necesitarás verificar la cosa que bloquea la IP. Consulta Ingeniería inversa de la API de Discourse y observa qué sucede cuando lo haces desde la UX.
Según la documentación de la API para eliminar un usuario, si bloquea la IP es una de las opciones que se pasan en el cuerpo de la solicitud.
Por lo tanto, en el código donde se está realizando la solicitud, debería poder proporcionar JSON en el cuerpo de la solicitud que incluya ”block_ip”: false.
Por ejemplo:
{
delete_posts: false,
block_email: false,
block_urls: false,
block_ip: false,
}
No estoy seguro de entender esto. ¿Quieres decir que tengo que desbloquear la IP a través de la API después de que se haya eliminado la cuenta? En realidad, esperaba algún interruptor de configuración en Discourse.
Ah, entendido. Gracias, lo intentaré.
Hola
¿Has obtenido tu respuesta aquí? ya que “block_ip”: false, no funciona en el cuerpo de la solicitud de la API en mi caso, así que ¿te funcionó o enviaste otra solicitud separada mediante ingeniería inversa de la API de Discourse?
Me funciona.
Este es el cuerpo de nuestra solicitud:
{
delete_posts: false,
block_email: false,
block_urls: false,
block_ip: false,
}
Me pregunto si el problema fue usar \"block_ip\": false exactamente para el cuerpo de la solicitud, en lugar de una cadena de objeto JSON. Ya no puedo editar mi publicación, pero la he marcado para que su JSON se agregue como ejemplo y, con suerte, haga que la solución marcada sea más clara.
Gracias por tu respuesta.
Tenemos esto implementado para el cuerpo JSON de la solicitud {block_email: false} (es block_email en nuestra situación), pero no parece tener efecto en la API de eliminación de usuarios. Necesitamos enviar una solicitud separada para eliminar el correo electrónico de los correos electrónicos filtrados (bloqueo de correos electrónicos).
Dependiendo de la forma en que construyas tu cadena JSON (manualmente o con una biblioteca), es posible que necesites probar con comillas simples, comillas dobles o ninguna comilla en absoluto. Aparte de eso, no tengo idea: la API de Discourse generalmente hace exactamente lo que promete.
Bien, lo publicaré aquí para quien tenga la misma situación con la API de eliminación de usuarios.
block_ip: False evita de manera fiable que la IP se agregue a las IPs filtradas.
block_email: False debería prevenir que el correo electrónico se agregue a los correos electrónicos filtrados, sin embargo algúnos casos extremos (como usuarios marcados como spam o usuarios nuevos con nivel TL0) aún pueden activar la revisión del correo electrónico incluso si block_email es False.
Esto requerirá una solicitud adicional para desbloquear el correo electrónico desde Correos Electrónicos Filtrados.
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.