Tema: Login-Delphi
Ver Mensaje Individual
  #28  
Antiguo 20-08-2007
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Reputación: 20
cHackAll Va por buen camino
Cita:
Empezado por Caral
Código Delphi [-]
       If ADLoginClave.AsString = EClave.Text then
Como comentario para el hilo, la clave es algo "sagrado".
Alguien mal intencionado podría utilizar la API GetWindowText(Edit1.Handle, Buffer); para obtener la clave del TEdit, lo que significa que PasswordChar no oculta completamente la contraseña. Por lo que aconsejo utilizar un código parecido a éste:


Código Delphi [-]
var Clave: string;
 
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var Temp: string;
begin
 if Key = #8 then
  begin
   if Length(Clave) <> 0 then
    SetLength(Clave, Length(Clave) - 1);
  end
 else
  if Key in ['0'..'9', 'a'..'z', 'A'..'Z'{etc}] then
   begin
    Clave := Clave + Key;
    Key := Edit1.PasswordChar;
   end
  else
   Key := #0;  
end;

Lo que le da un nivel mayor a la seguridad de la aplicación.
Es muy importante tambien NO realizar comparaciones directas con la clave; alguien puede lograr abrir la BD y ver las contraseñas. Lo óptimo es siempre encriptarla o en su defecto se puede sacar la CRC o Hash de la contraseña y guardar ése valor en ves de la contraseña como tal.

Saludos.

Última edición por cHackAll fecha: 20-08-2007 a las 18:34:37.
Responder Con Cita