viernes, 29 de junio de 2012

Seguridad del Adempiere

En la versión 3.6.0 LTS, el sistema Adempiere permite en la pantalla del login guardar el usuario y la clave de inicio de sesión y cuando vuelve a ingresar siempre aparece la información dejando al sistema  débil en cuanto a la seguridad. Por ejemplo, el usuario se entro al adempiere y se levanta por una tasa de café; en eso se acerca otra persona a su máquina y entra al adempiere sin ningún problema porque le aparecen el usuario y clave digitado por defecto, este puede cambiar alguna información ya sea intencional o no intencional; pero siempre afecta al usuario dentro de la auditoría propia del sistema, es por eso que es necesario hacer cambio en las siguientes clases:

org.compiere.apps.ALogin.java

/**
* Set Initial & Ini Parameters
* Optional Automatic login
* @return true, if connected & parameters set
*/
public boolean initLogin()
{
m_cc = CConnection.get(Adempiere.getCodeBaseHost());
hostField.setValue(m_cc);
if ( Ini.isPropertyBool(Ini.P_VALIDATE_CONNECTION_ON_STARTUP)) {
validateConnection();

//  Application/PWD
userTextField.setText(Ini.getProperty(Ini.P_UID));
if (Ini.isPropertyBool(Ini.P_STORE_PWD))
passwordField.setText(Ini.getProperty(Ini.P_PWD));
else
passwordField.setText("");
passwordField.setText("");
passwordField.requestFocus();
//
languageCombo.setSelectedItem(Ini.getProperty(Ini.P_LANGUAGE));

// AutoLogin - assumes that connection is OK
if (Ini.isPropertyBool(Ini.P_A_LOGIN))
{
connectionOK ();
defaultsOK ();
if (m_connectionOK) // simulate
m_okPressed = true;
return m_connectionOK;
}
return false;
} // initLogin

Una vez hecho este cambio, actualizamos nuestro sistema en el servidor utilizando customization.jar
como se indica en este post.

2 comentarios:

  1. Para realizar esto no es necesario modificar el codigo actual, lo puedes hacer de dos formas:
    1. Cada usuario puede ir por el menu "herramientas", luego "preferencia" y alli desactivar la opción "guardar contraseña".
    2. Como administrador del sistema debes entrar como usuario System buscar la ventana "Configurador del sistema" y allí modificar el registro "SWING_LOGIN_ALLOW_REMEMBER_ME" colocando el codigo "U"

    John Agudelo
    www.osgroup.co

    ResponderEliminar
    Respuestas
    1. Excelente aporte Daison, gracias por tus comentarios, espero que no sea el último. :D

      Eliminar