Connect with us

Tutoriales Varios

¿Como permito que los usuarios puedan modificar su propia contraseña?

La manera más sencilla es hacer un GRANT UPDATE a la tabla USERS para que sea una tabla PUBLICA, además de crear u TRIGGER para prevenir que los usuarios puedan cambiar la contraseña de otros usuarios, a excepción de SYSDBA.

Debes conectarte a la base de datos de seguridad de Interbase (isc4.gdb) …

En windows …

CONNECT ‘C:Archivos de programaBorlandInterBaseisc4.gdb’

USER ‘SYSDBA’

PASSWORD ‘masterkey’;

En Linux …

CONNECT /opt/interbase/isc4.gdb

USER ‘SYSDBA’

PASSWORD ‘masterkey’;

Creamos el TRIGGER, para que los usuarios no se cambién la contraseña entre sí, a excepción de SYSDBA.

CREATE EXCEPTION E_NO_RIGHT

‘No estás autorizado para modificar a éste usuario.’;

SET TERM !!;

CREATE TRIGGER user_name_bu

FOR USERS

BEFORE UPDATE

AS

BEGIN

IF (NOT (USER=’SYSDBA’ OR USER=OLD.USER_NAME))

THEN EXCEPTION E_NO_RIGHT;

END !!

SET TERM ;!!

Y finalmente realizamos el GRANT UPDATE sobre la table USERS, para que sea una tabla PUBLICA.

GRANT UPDATE(PASSWD, GROUP_NAME, UID, GID, FIRST_NAME, MIDDLE_NAME, LAST_NAME)

ON USERS

TO PUBLIC;

Esta modificación tiene una gran falencia, todos los usuarios y sus contraseñas encriptadas, quedarán visibles al PUBLICO, de esta manera es más fácil descargar la lista de usuarios y intentar romperlas a fuerza bruta.

Diginota Es una Revista On-line, Internet, tecnologías, con los trucos y Notas insólitas, extrañas y mucho más... . Proporcionamos Noticias Técnicas, Revisiones, consejos, Cómo Hacer, todo esto y mucho más. Desde el 2005. Si quieres saber más de diginota En mis redes sociales a pesar de estar en varias, Soy mas activo en Twitter y de allí dispuesto a ayudarte en lo que pueda.