Ver Mensaje Individual
  #2 (permalink)  
Antiguo 20/07/2009, 02:11
kurgari
 
Fecha de Ingreso: febrero-2009
Mensajes: 11
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Acceder al DNIe

Como que la aplicación va a estar en una arquitectura ASP.net, al final me he decantado por el uso de CAPICOM, a pesar de estar descontinuado:

var CAPICOM_STORE_OPEN_READ_ONLY = 0;
var CAPICOM_CURRENT_USER_STORE = 2;
var CAPICOM_E_CANCELLED = -2138568446;
var CAPICOM_INFO_SUBJECT_SIMPLE_NAME = 0;

function buscarAutentificacion()
{
try
{
var MyStore = new ActiveXObject("CAPICOM.Store");
MyStore.Open(CAPICOM_CURRENT_USER_STORE, "My", CAPICOM_STORE_OPEN_READ_ONLY);

var FilteredCertificates = MyStore.Certificates
for (i = 1; i <= FilteredCertificates.Count; i++)
{
if (FilteredCertificates.Item(i).GetInfo(CAPICOM_INFO _SUBJECT_SIMPLE_NAME).indexOf('AUTENTICACIÓN') != -1)
{
return FilteredCertificates.Item(i);
}
}

return null;
}
catch (e)
{
return null;
}
}

function IE()
{
try
{
var certificat = buscarAutentificacion();
if (certificat != null)
{
alert(certificat.GetInfo(CAPICOM_INFO_SUBJECT_SIMP LE_NAME));
}
else
{
alert("certificado no encontrado");
}
}
catch (e)
{
if (e.number != CAPICOM_E_CANCELLED)
{
alert("An error occurred when attempting to sign the content, the errot was: " + e.description);
}
}
}

Aún así, sigo sin saber cómo acceder a los datos personales de la persona... si alguien puede iluminar el camino sobre cómo conseguir los datos de dentro del certificado de autentificación.