Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-02-2016
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
mostrar en dbgrid campos encriptados-desencriptados

Hola,
En mi afan de aprender, cada vez la lio mas .
El chiste es que, probando, encripte el usuario y contraseña de cada usuario. Hasta ahi bien, porque al crear un usuario nuevo, a la hora de guardar ya lo guarda con codigo encriptado (quiza no es el metodo mas seguro y era preferible un hash), cuando se pide el usuario y contraseña, se encripta lo que el usuario tecleo y se compara con lo que hay guardado dando paso o no al sistema.

el chiste de lo que me voy complicando la vida es que, si tengo un dbgrid de usuarios para seleccionar el que me interesa para moificar o no, me aparece efectivamente los campos con los codigos encriptados .
Lo que nose es si con un campo calculado puedo solucionar el problema y que afecte a todo el dbgrid. Metiendo en el modulo de datos dos funciones de encriptado y descriptado.

Me complico verdad?.
Responder Con Cita
  #2  
Antiguo 25-02-2016
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
No entiendo, encriptaste todos los campos? Por que?
Responder Con Cita
  #3  
Antiguo 25-02-2016
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
Nono, solo el, usuario y la contraseña
Responder Con Cita
  #4  
Antiguo 25-02-2016
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Y vas a mostrarle en un DBGrid un par de campos que encriptaste porque se supone que no pueden verlos?
Responder Con Cita
  #5  
Antiguo 25-02-2016
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
Si, solo los veo codificados
Responder Con Cita
  #6  
Antiguo 25-02-2016
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Si esos campos se guardaron cifrados, podes usar el evento OnGetText para descifrarlo y consecuentemente mostrarlos en el DBGrid.

Suponiendo que los campos se llamen NOMBRE y CLAVE sería:

Código Delphi [-]
...
type
  TForm1 = class(TForm)
    ...
    DBGrid1: TDBGrid;
    procedure FormCreate(Sender: TObject);
    ...
    procedure FormDestroy(Sender: TObject);
  private
    procedure DescifraGetText(Sender: TField; var Text: string; DisplayText: Boolean);
  public
  end;
...

implementation

procedure TForm1.FormCreate(Sender: TObject);
begin
  tuDataSet.FieldByName('NOMBRE').OnGetText := DescifraGetText;
  tuDataSet.FieldByName('CLAVE').OnGetText  := DescifraGetText;
end;

procedure TForm1.DescifraGetText(Sender: TField; var Text: string; DisplayText: Boolean);
begin
  Text := Descifra(Sender.AsString); // Donde "Descifra" sería tu función de descifrado
end;

...

procedure TForm1.FormDestroy(Sender: TObject);
begin
  tuDataSet.FieldByName('NOMBRE').OnGetText := nil;
  tuDataSet.FieldByName('CLAVE').OnGetText  := nil;
end;

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 25-02-2016 a las 03:09:59.
Responder Con Cita
  #7  
Antiguo 25-02-2016
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
Gracias por la respuesta.

Ya lo solucione, cree un campo calculado y ahi decodifique el usuario y ya lo puedo ver bien en un dbgrid .

Guardare tambien tu propuesta.
Responder Con Cita
  #8  
Antiguo 25-02-2016
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
Perdon, no me ha dejado editar el ultimo post.

Creo que de momento no me voy a complicar la vida, porque funcionar funciona pero mejor le he quitado el encriptado a los campos para facilitarme la vida..
Pero funcionar si funciona.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Datos encriptados en MySQL Angel.Matilla MySQL 2 15-06-2012 21:06:06
sumar columnas en un dbgrid y mostrar mas campos VNyes Firebird e Interbase 5 01-06-2007 19:32:10
Mostrar dos campos en un dblookupcombobox el_barto Conexión con bases de datos 3 25-07-2005 18:46:00
Como enviar mensajes encriptados por Internet JDNA Internet 6 18-05-2004 07:58:38
Mostrar determinados campos rmnart Firebird e Interbase 1 13-12-2003 00:05:07


La franja horaria es GMT +2. Ahora son las 04:16:03.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi