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

Obtener datos de titular de DNI-e

Estas en el tema de Obtener datos de titular de DNI-e en el foro de .NET en Foros del Web. Buenos días señores. Estoy con un desarrollo de un proyecto web (aplicación –portal clientes- web ASP.NET Framework 3.5, con WXP en desarrollo, y W2003 en ...
  #1 (permalink)  
Antiguo 22/06/2009, 04:08
 
Fecha de Ingreso: marzo-2007
Mensajes: 38
Antigüedad: 17 años, 1 mes
Puntos: 0
Obtener datos de titular de DNI-e

Buenos días señores.

Estoy con un desarrollo de un proyecto web (aplicación –portal clientes- web ASP.NET Framework 3.5, con WXP en desarrollo, y W2003 en producción) en empresa de Seguros.

Mi aplicación requiere autenticación de clientes utilizando DNI-e.

Buscando documentación por Internet, no he visto nada de código en tecnología .Net para recuperar los datos del titular del DNI-electrónico que se conecta a la página aspx.

Entiendo que los pasos son los siguientes:

Primeramente, se requiere el certificado de AC RAIZ DNIE, el usuario tendrá que introducir el DNIe en el lector de tarjetas e introducir el PIN.

Después, en el código de servidor de la página, tendríamos que recuperar los datos del titular del DNI-e para saber qué persona se ha conectado. En mi caso, nombre Exxx Pxxxx Vxxxx, DNI: 50…..M

Este es el código C# para la página aspx (ASP.NET) que debe comprobar los datos del usuario que se ha conectado al portal de cliente con DNI electrónico.

public partial class ComprobarCertificado : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
HttpClientCertificate certificado = Request.ClientCertificate;
certificado = Context.Request.ClientCertificate;
certificado = HttpContext.Current.Request.ClientCertificate;

if (!this.IsPostBack)
{
HttpClientCertificate cs = certificado;

if (cs.IsPresent)
{
//'Get the Organization (O) field from the Subject section.
//' certData.Text = cert.Get("Subject O")

Response.Write("ClientCertificate Settings:
");
Response.Write("Certificate = " + cs.Certificate + "
");
Response.Write("Cookie = " + cs.Cookie + "
");
Response.Write("Flags = " + cs.Flags + "
");
Response.Write("IsPresent = " + cs.IsPresent + "
");
Response.Write("Issuer = " + cs.Issuer + "
");
Response.Write("IsValid = " + cs.IsValid + "
");
Response.Write("KeySize = " + cs.KeySize + "
");
Response.Write("SecretKeySize = " + cs.SecretKeySize + "
");
Response.Write("SerialNumber = " + cs.SerialNumber + "
");
Response.Write("ServerIssuer = " + cs.ServerIssuer + "
");
Response.Write("ServerSubject = " + cs.ServerSubject + "
");
Response.Write("Subject = " + cs.Subject + "
");
Response.Write("ValidFrom = " + cs.ValidFrom + "
");
Response.Write("ValidUntil = " + cs.ValidUntil + "
");
Response.Write("What's this = " + cs.ToString() + "
");
Response.Write("Codificacion = " + cs.CertEncoding + "
");

X509Certificate desc = new X509Certificate(cs.Certificate);

string resultsTrue = desc.ToString(true);
Response.Write("
despues de sacar flujo de bytes : " + resultsTrue);
Response.Write("
Hash string : " + desc.GetCertHashString());
Response.Write("
Algoritmo (parametros): " + desc.GetKeyAlgorithmParametersString());
Response.Write("
Clave publica: " + desc.GetPublicKeyString());

}
else if (!certificado.IsValid)
{
Response.Write("el certificado no es valido" + "
");
}
else
Response.Write("No se ha encontrado certificado" + "
");

Les agradecería que me enviaran cuanta información técnica puedan de la forma de recuperar los datos del titular de DNI-e.

Quedo a la espera de cualquier observación técnica que puedan aportarnos, será de gran ayuda en este momento del proyecto.

Muchas gracias de nuevo y saludos cordiales.

Última edición por alhambraeidos; 25/06/2009 a las 00:28
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 13:07.