Foros del Web » Programación para mayores de 30 ;) » .NET »

Encriptar Contraseña desde SQL 2005

Estas en el tema de Encriptar Contraseña desde SQL 2005 en el foro de .NET en Foros del Web. Hola, gracias de antemano, tengo esta situación, desde una clase en asp.net llamo a un procedimiento almacenado para cargar un gridview con los datos del ...
  #1 (permalink)  
Antiguo 22/10/2010, 11:11
 
Fecha de Ingreso: octubre-2010
Mensajes: 24
Antigüedad: 13 años, 5 meses
Puntos: 0
Pregunta Encriptar Contraseña desde SQL 2005

Hola, gracias de antemano, tengo esta situación, desde una clase en asp.net llamo a un procedimiento almacenado para cargar un gridview con los datos del usuario, por razones conocidas la clave no se muestra por lo de su propiedad textmode password, he pensado si desde sql encripto la contraseña y el TextMode de campo texto del gridview donde la despliego lo cambio a SingleLine, no se si esto resuelve mi necesidad, si hay una mejor opción o un código que tome el dato que vienes desde sql y encriptarlo y luego mostrarlo. En realidad cuando le quito el textmode de Password, la contraseña se despliega pero no deseo que el administrador ni nadie pueda ver la contraseña de un usuario, por eso necesito buscar la manera de desplegar la contraseña en el grid pero encriptada...
Mil gracias
  #2 (permalink)  
Antiguo 22/10/2010, 12:28
Avatar de mvazquez  
Fecha de Ingreso: octubre-2004
Ubicación: Monterrey - México
Mensajes: 875
Antigüedad: 19 años, 5 meses
Puntos: 8
Respuesta: Encriptar Contraseña desde SQL 2005

Hola, al campo de tu tabla donde guardes el password ponlo como tipo "varbinary" y luego cuando guardes en pass guardalo asi:
Código:
CONVERT(VARBINARY(255), PwdEncrypt('''+ @Pass+ '''))
y cuando valides lo haces de la siguiente manera:
Código:
	WHERE strUsuario = 'mvazquez'
	And 1 = PwdCompare('myPass',strPass,0)
donde mvazquez es el usuario y myPass es el password que se teclea y lo comparara contra strPass, si te regresa 0 es que no es correcto y si te regresa 1 es que es correcto.

Espero que te funcione.
__________________
http://vazquezvega.wordpress.com/
"La paciencia nos da el privilegio de compartir el refrescante fruto de Dios con los demás."
  #3 (permalink)  
Antiguo 22/10/2010, 16:15
 
Fecha de Ingreso: octubre-2010
Mensajes: 24
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Encriptar Contraseña desde SQL 2005

Gracias mvazquez por tu respuesta, deseo saber si con esto que me recomiendas, a lo hora de llenar mi grid, la celda del password estará encriptada, tambien quisiera saber si debo cambiarle el texmode del itemtemplate de password a SingleLine de la celda donde despliego la contraseña en mi grid. Debo utilizar algun código en especial para llenar mi grid dado que en el sql estoy encriptando?. Mil gracias
  #4 (permalink)  
Antiguo 26/10/2010, 09:00
 
Fecha de Ingreso: octubre-2010
Mensajes: 24
Antigüedad: 13 años, 5 meses
Puntos: 0
Pregunta Respuesta: Encriptar Contraseña desde SQL 2005

Cita:
Iniciado por mvazquez Ver Mensaje
Hola, al campo de tu tabla donde guardes el password ponlo como tipo "varbinary" y luego cuando guardes en pass guardalo asi:
Código:
CONVERT(VARBINARY(255), PwdEncrypt('''+ @Pass+ '''))
y cuando valides lo haces de la siguiente manera:
Código:
	WHERE strUsuario = 'mvazquez'
	And 1 = PwdCompare('myPass',strPass,0)
donde mvazquez es el usuario y myPass es el password que se teclea y lo comparara contra strPass, si te regresa 0 es que no es correcto y si te regresa 1 es que es correcto.

Espero que te funcione.
Gracias mvazquez por tu respuesta, deseo saber si con esto que me recomiendas, a lo hora de llenar mi grid, la celda del password estará encriptada, tambien quisiera saber si debo cambiarle el texmode del itemtemplate de password a SingleLine de la celda donde despliego la contraseña en mi grid. Debo utilizar algun código en especial para llenar mi grid dado que en el sql estoy encriptando?. Mil gracias
  #5 (permalink)  
Antiguo 26/10/2010, 09:16
Avatar de mvazquez  
Fecha de Ingreso: octubre-2004
Ubicación: Monterrey - México
Mensajes: 875
Antigüedad: 19 años, 5 meses
Puntos: 8
Respuesta: Encriptar Contraseña desde SQL 2005

Cita:
a la hora de llenar mi grid, la celda del password estará encriptada,
La respuesta es si, si lo seleccionas tal cual esta en tu tabla parecerá, por ejemplo el password "123" aparecerá asi:
0x01002B34C075BA31FEFAB4107836DC57DA42285177DD7612 A38FBA31FEFAB4107836DC57DA42285177DD7612A38F


Cita:
tambien quisiera saber si debo cambiarle el texmode del itemtemplate de password a SingleLine de la celda donde despliego la contraseña en mi grid.
La respuesta es que eso depende de ti si quieres ver todo en una sola linea o multiliena.

Cita:
Debo utilizar algun código en especial para llenar mi grid dado que en el sql estoy encriptando
No, si la hace un Select al campo tal cual esta asi es como te lo pondrá en el grid o donde tu quieras, cuando lo desencriptas es cuando te pondría el password desencriptado.

espero te sea de utilidad.
__________________
http://vazquezvega.wordpress.com/
"La paciencia nos da el privilegio de compartir el refrescante fruto de Dios con los demás."
  #6 (permalink)  
Antiguo 29/10/2010, 06:54
 
Fecha de Ingreso: octubre-2010
Mensajes: 24
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Encriptar Contraseña desde SQL 2005

Cita:
Iniciado por mvazquez Ver Mensaje
cuando lo desencriptas es cuando te pondría el password desencriptado.

espero te sea de utilidad.

Disculpa mi ignorancia pero es que por primera vez utilizo esto de encriptar la clave....cómo la desencripto?...

Aprovecho la oportunidad para preguntarte si sabes cómo usar los tabs o pestañas para mostrar información relacionada en una sola pantalla pero en diferntes tabs y asi evitar saturar las pantallas...se con ajax se puede usar pero no quiero usar por ahora ajax, pues tengo una mala experiencia y prefiero documentarme más....por lo tanto si sabes de algo sobre el uso de tabs, desde ya te la agradezco

hasta pronto y gracias por tu ayuda....

Etiquetas: contraseña, encriptar, sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:59.