Necesito implementar cambios personalizados a nivel de código y a nivel de base de datos en mi aplicación Discourse Rails para cumplir con mis requisitos específicos.
Actualizar el método de cifrado de contraseñas. Actualmente, Discourse utiliza “PBKDF2” para el cifrado de contraseñas.
Según mi requisito, necesito cambiar a “MD5” en lugar de “PBKDF2”.
He configurado el código en mi entorno local y también he implementado Discourse en el entorno de producción utilizando Docker.
Cuando actualizo el código local según mi requisito, necesito volver a implementar mi código actualizado en el entorno de producción, pero actualmente tengo configurado el archivo Docker oficial de Discourse en el entorno de producción, por lo que necesito generar un nuevo archivo Docker. ¿Cómo puedo crear un nuevo archivo Docker y cómo puedo acceder a la base de datos PostgreSQL de la aplicación Discourse en el entorno de producción?
Esto parece ser una importante degradación de la seguridad. MD5 no es adecuado para el hash de contraseñas. Este cambio no solo afectaría a una parte crítica de Discourse, sino que también necesitarías mantenerlo para todas las versiones futuras.
Quizás podamos sugerir un mejor enfoque si pudieras explicar qué intentas lograr.
Quieres hacer tus cambios en un plugin. Si intentas bifurcar Discourse y mantenerlo por separado, te arrepentirás mucho, mucho, si la historia sirve de algo.
¿Qué problema intentas resolver con contraseñas almacenadas como un hash MD5? Como ya se sugirió, todo Internet parece estar de acuerdo en que MD5 no es cifrado y no es adecuado para almacenar contraseñas.
Necesito ayuda para encontrar una solución. Necesito cambiar un método de encriptación en ROR (Discourse). Actualmente, estoy usando encriptación MD5. Hice cambios a nivel de código en mi entorno local. ¿Cómo puedo reflejar esos cambios en el servidor en vivo sin la ayuda de Docker?
Actualmente, el entorno de producción está configurado usando la configuración de Docker.
Todavía no has dicho qué problema estás intentando resolver. ¿Puedes decir más sobre qué está resolviendo MD5?
Todavía necesitas implementar cualquier cambio que hagas en un plugin. ¿Has empezado a aprender cómo funcionan los plugins?
Pero apuesto a que lo que realmente quieres es que Discourse se autentique contra tu aplicación existente, en caso de que solo necesites implementar discourse_connect y Discourse no necesitará saber sobre tus elecciones en el almacenamiento de contraseñas.