es.mcu.yingo.utils.certificado
Class CertificadoArrobaFirma

java.lang.Object
  extended by es.mcu.yingo.utils.certificado.CertificadoArrobaFirma
All Implemented Interfaces:
Certificado, java.io.Serializable

public class CertificadoArrobaFirma
extends java.lang.Object
implements java.io.Serializable, Certificado

Implementación de certificado que al validar realiza una consulta a \@Firma para comprobar que el certificado es válido.

Author:
miguel.esteban
See Also:
Serialized Form

Field Summary
protected  java.lang.String apellido1
          Atributo donde se almacena el primer apellido
protected  java.lang.String apellido2
          Atributo donde se almacena el segundo apellido
private static java.lang.String APELLIDOS
          Clave del campo de \@Firma para el los apellidos del responsable
protected  java.security.cert.X509Certificate caX509Certificate
          Atributo donde se almacena el objeto X509Certificate con el certificado de la entidad certificadora del certificado del usuario
protected  java.lang.String cif
          Atributo donde se almacena el cif
private static java.lang.String CIF
          Clave del campo de \@Firma para CIF
private static java.lang.String CLASIFICACION
          Clave del campo de \@Firma para el tipo de certificado
private static java.lang.String CLASIFICACION_TIPO_PERSONA_FISICA
          Clave del valor de \@Firma cuando el tipo de certificado para persona física
private static java.lang.String CLASIFICACION_TIPO_PERSONA_JURIDICA
          Clave del valor de \@Firma cuando el tipo de certificado para persona jurídica
protected  java.lang.String email
          Atributo donde se almacena la dirección de correo electrónico
private static java.lang.String EMAIL
          Clave del campo de \@Firma para el correo electrónico
private  java.lang.String idAplicacionValAfirma
          id de aplicación para la llamada a \@firma
protected  java.lang.String idEmisor
          Atributo donde se almacena el id de emisor
private static java.lang.String IDEMISOR
          Clave del campo de \@Firma para el identificador del emisor
protected  es.mcu.util.afirma.jaxb.InfoCertificadoInfo infoCertificadoInfo
          Atributo donde se almacena el objeto InfoCertificadoInfo con la información que devuelve \@Firma
protected  boolean isPersonaFisica
          Atributo donde se almacena si es persona física o jurídica.
protected  java.lang.String issuerDN
          Atributo donde se almacena la información del emisor en el objeto X509Certificate con el certificado del usuario
protected  org.apache.commons.logging.Log logger
          Clase de gestión de logs
protected  java.lang.String nif
          Atributo donde se almacena el nif
private static java.lang.String NIF
          Clave del campo de \@Firma para Nif del responsable
protected  java.lang.String nombre
          Atributo donde se almacena el nombre
private static java.lang.String NOMBRE
          Clave del campo de \@Firma para el nombre del responsable
protected  java.lang.String nombreEntidad
          Atributo donde se almacena el nombre de la entidad
private static java.lang.String PRIMERAPELLIDO
          Clave del campo de \@Firma para el primer apellido del responsable
private static java.lang.String RAZONSOCIAL
          Clave del campo de \@Firma para la razón social
private static java.lang.String SEGUNDOAPELLIDO
          Clave del campo de \@Firma para el segundo apellido del responsable
private static long serialVersionUID
           
protected  byte[] subjectPublicKey
          Atributo donde se almacena la clave pública del certificado
protected  java.lang.String subjectSnCertificate
          Atributo donde se almacena el número de serie del certificado
private  java.lang.String urlAplicacionValAfirma
          Url del servicio de \@firma
protected  java.security.cert.X509Certificate x509Certificate
          Atributo donde se almacena el objeto X509Certificate con el certificado del usuario
 
Constructor Summary
CertificadoArrobaFirma(java.security.cert.X509Certificate x509Certificate, java.lang.String idAplicacionValAfirma, java.lang.String urlAplicacionValAfirma)
          Constructor con los parámetros necesarios para validar el certificado x509Certificate
 
Method Summary
 java.lang.String getApellido1()
           
 java.lang.String getApellido2()
           
 java.security.cert.X509Certificate getCaX509Certificate()
           
 java.lang.String getCif()
           
 java.lang.String getEmail()
           
 java.lang.String getIdEmisor()
           
 es.mcu.util.afirma.jaxb.InfoCertificadoInfo getInfoCertificadoInfo()
           
 java.lang.String getIssuerDN()
           
 java.lang.String getNif()
           
 java.lang.String getNombre()
           
 java.lang.String getNombreEntidad()
           
 byte[] getSubjectPublicKey()
          Devuelve la clave pública del certificado
 java.lang.String getSubjectSnCertificate()
          Obtiene el asunto del cetificado
 java.security.cert.X509Certificate getX509Certificate()
           
private  void inicializar()
          Inicializa todos los atributos de la clase
 boolean isPersonaFisica()
           
 void setCaX509Certificate(java.security.cert.X509Certificate caX509Certificate)
           
private  void setInformacion(es.mcu.util.afirma.jaxb.InfoCertificadoInfo informacion)
          Carga los datos de los métodos con la info de la clase InfoCertificadoInfo
private  void setInformacionX509(java.security.cert.X509Certificate miX509)
          Carga los datos de los métodos con la info de la clase X509Certificate
 java.lang.String toString()
           
 void validaryCargar()
          Valida el certificado X509 y carga los métodos de la clase
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

NOMBRE

private static final java.lang.String NOMBRE
Clave del campo de \@Firma para el nombre del responsable

See Also:
Constant Field Values

RAZONSOCIAL

private static final java.lang.String RAZONSOCIAL
Clave del campo de \@Firma para la razón social

See Also:
Constant Field Values

PRIMERAPELLIDO

private static final java.lang.String PRIMERAPELLIDO
Clave del campo de \@Firma para el primer apellido del responsable

See Also:
Constant Field Values

SEGUNDOAPELLIDO

private static final java.lang.String SEGUNDOAPELLIDO
Clave del campo de \@Firma para el segundo apellido del responsable

See Also:
Constant Field Values

NIF

private static final java.lang.String NIF
Clave del campo de \@Firma para Nif del responsable

See Also:
Constant Field Values

CIF

private static final java.lang.String CIF
Clave del campo de \@Firma para CIF

See Also:
Constant Field Values

IDEMISOR

private static final java.lang.String IDEMISOR
Clave del campo de \@Firma para el identificador del emisor

See Also:
Constant Field Values

EMAIL

private static final java.lang.String EMAIL
Clave del campo de \@Firma para el correo electrónico

See Also:
Constant Field Values

APELLIDOS

private static final java.lang.String APELLIDOS
Clave del campo de \@Firma para el los apellidos del responsable

See Also:
Constant Field Values

CLASIFICACION

private static final java.lang.String CLASIFICACION
Clave del campo de \@Firma para el tipo de certificado

See Also:
Constant Field Values

CLASIFICACION_TIPO_PERSONA_FISICA

private static final java.lang.String CLASIFICACION_TIPO_PERSONA_FISICA
Clave del valor de \@Firma cuando el tipo de certificado para persona física

See Also:
Constant Field Values

CLASIFICACION_TIPO_PERSONA_JURIDICA

private static final java.lang.String CLASIFICACION_TIPO_PERSONA_JURIDICA
Clave del valor de \@Firma cuando el tipo de certificado para persona jurídica

See Also:
Constant Field Values

nombre

protected java.lang.String nombre
Atributo donde se almacena el nombre


nombreEntidad

protected java.lang.String nombreEntidad
Atributo donde se almacena el nombre de la entidad


apellido1

protected java.lang.String apellido1
Atributo donde se almacena el primer apellido


apellido2

protected java.lang.String apellido2
Atributo donde se almacena el segundo apellido


nif

protected java.lang.String nif
Atributo donde se almacena el nif


cif

protected java.lang.String cif
Atributo donde se almacena el cif


idEmisor

protected java.lang.String idEmisor
Atributo donde se almacena el id de emisor


email

protected java.lang.String email
Atributo donde se almacena la dirección de correo electrónico


x509Certificate

protected java.security.cert.X509Certificate x509Certificate
Atributo donde se almacena el objeto X509Certificate con el certificado del usuario


isPersonaFisica

protected boolean isPersonaFisica
Atributo donde se almacena si es persona física o jurídica.
Cuando el cif es diferente de nulo o cadena vacía es persona jurídica, en caso contrarrio es persona físca


infoCertificadoInfo

protected es.mcu.util.afirma.jaxb.InfoCertificadoInfo infoCertificadoInfo
Atributo donde se almacena el objeto InfoCertificadoInfo con la información que devuelve \@Firma


subjectSnCertificate

protected java.lang.String subjectSnCertificate
Atributo donde se almacena el número de serie del certificado


subjectPublicKey

protected byte[] subjectPublicKey
Atributo donde se almacena la clave pública del certificado


issuerDN

protected java.lang.String issuerDN
Atributo donde se almacena la información del emisor en el objeto X509Certificate con el certificado del usuario


caX509Certificate

protected java.security.cert.X509Certificate caX509Certificate
Atributo donde se almacena el objeto X509Certificate con el certificado de la entidad certificadora del certificado del usuario


idAplicacionValAfirma

private java.lang.String idAplicacionValAfirma
id de aplicación para la llamada a \@firma


urlAplicacionValAfirma

private java.lang.String urlAplicacionValAfirma
Url del servicio de \@firma


logger

protected final org.apache.commons.logging.Log logger
Clase de gestión de logs

Constructor Detail

CertificadoArrobaFirma

public CertificadoArrobaFirma(java.security.cert.X509Certificate x509Certificate,
                              java.lang.String idAplicacionValAfirma,
                              java.lang.String urlAplicacionValAfirma)
Constructor con los parámetros necesarios para validar el certificado x509Certificate

Parameters:
x509Certificate -
idAplicacionValAfirma -
urlAplicacionValAfirma -
Method Detail

getApellido1

public java.lang.String getApellido1()
Specified by:
getApellido1 in interface Certificado
Returns:
the apellido1

getApellido2

public java.lang.String getApellido2()
Specified by:
getApellido2 in interface Certificado
Returns:
devuelve el apellido2

getCif

public java.lang.String getCif()
Specified by:
getCif in interface Certificado
Returns:
devuelve el cif

getEmail

public java.lang.String getEmail()
Specified by:
getEmail in interface Certificado
Returns:
devuelve el email

getIdEmisor

public java.lang.String getIdEmisor()
Specified by:
getIdEmisor in interface Certificado
Returns:
devuelve el idEmisor

isPersonaFisica

public boolean isPersonaFisica()
Specified by:
isPersonaFisica in interface Certificado
Returns:
devuelve si el certificado es de persona física

getNif

public java.lang.String getNif()
Specified by:
getNif in interface Certificado
Returns:
devuelve el nif

getNombre

public java.lang.String getNombre()
Specified by:
getNombre in interface Certificado
Returns:
devuelve el nombre

getNombreEntidad

public java.lang.String getNombreEntidad()
Specified by:
getNombreEntidad in interface Certificado
Returns:
devuelve el nombreEntidad

validaryCargar

public void validaryCargar()
                    throws SeguridadYingoException
Description copied from interface: Certificado
Valida el certificado X509 y carga los métodos de la clase

Specified by:
validaryCargar in interface Certificado
Throws:
SeguridadYingoException

inicializar

private void inicializar()
Inicializa todos los atributos de la clase


setInformacionX509

private void setInformacionX509(java.security.cert.X509Certificate miX509)
Carga los datos de los métodos con la info de la clase X509Certificate

Parameters:
miX509 -

setInformacion

private void setInformacion(es.mcu.util.afirma.jaxb.InfoCertificadoInfo informacion)
                     throws SeguridadYingoException
Carga los datos de los métodos con la info de la clase InfoCertificadoInfo

Parameters:
informacion -
Throws:
SeguridadYingoException

getX509Certificate

public java.security.cert.X509Certificate getX509Certificate()
Specified by:
getX509Certificate in interface Certificado
Returns:
obtiene el certificado

getInfoCertificadoInfo

public es.mcu.util.afirma.jaxb.InfoCertificadoInfo getInfoCertificadoInfo()

getSubjectSnCertificate

public java.lang.String getSubjectSnCertificate()
Description copied from interface: Certificado
Obtiene el asunto del cetificado

Specified by:
getSubjectSnCertificate in interface Certificado
Returns:

getSubjectPublicKey

public byte[] getSubjectPublicKey()
Description copied from interface: Certificado
Devuelve la clave pública del certificado

Specified by:
getSubjectPublicKey in interface Certificado
Returns:

getIssuerDN

public java.lang.String getIssuerDN()
Specified by:
getIssuerDN in interface Certificado
Returns:
devuelve el issuerDN

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getCaX509Certificate

public java.security.cert.X509Certificate getCaX509Certificate()
Specified by:
getCaX509Certificate in interface Certificado
Returns:
Devuelve el atributo caX509Certificate

setCaX509Certificate

public void setCaX509Certificate(java.security.cert.X509Certificate caX509Certificate)
Parameters:
caX509Certificate - Carga el atributo caX509Certificate