# VSSLInfo

Esta clase representa la conexión segura con el servidor y permite obtener información sobre el estado de la conexión y el certificado utilizado.

La clase [VApp](https://doc.velneo.com/26/velneo-vdevelop/scripts/lenguajes/javascript/clases/vapp) nos permite obtener con ayuda de la función correspondiente acceso a esta información:

theApp.sslInfo();

## Funciones

**Funciones**

| Retorno                                                                                                              | Función                                                       |
| -------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------- |
| [VSSLCertificate](https://doc.velneo.com/26/velneo-vdevelop/scripts/lenguajes/javascript/clases/vsslcertificate)     | [peerCertificateChain](#peercertificatechain)( nCertificate ) |
| Number                                                                                                               | [peerCertificateChainCount](#peercertificatechaincount)()     |
| [VSSLSessionCipher](https://doc.velneo.com/26/velneo-vdevelop/scripts/lenguajes/javascript/clases/vsslsessioncipher) | [sessionCipher](#sessioncipher)()                             |
| Array                                                                                                                | [sslErrors](#sslerrors)()                                     |

## Documentación de funciones

### Funciones

#### VSSLCertificate peerCertificateChain( nCertificate ) <a href="#peercertificatechain" id="peercertificatechain"></a>

Devuelve un objeto de la clase [VSSLCertificate](https://doc.velneo.com/26/velneo-vdevelop/scripts/lenguajes/javascript/clases/vsslcertificate) que contiene la información acerca del certificado que indicamos como parámetro.

Parámetros:

* nCertificado: entero que determina la posición del certificado en la cadena de certificados.

#### Number peerCertificateChainCount() <a href="#peercertificatechaincount" id="peercertificatechaincount"></a>

Devuelve el número de certificados que componen la cadena de certificados correspondientes a la conexión.

#### VSSLSessionCipher sessionCipher() <a href="#sessioncipher" id="sessioncipher"></a>

Devuelve un objeto de la clase [VSSLSessionCipher](https://doc.velneo.com/26/velneo-vdevelop/scripts/lenguajes/javascript/clases/vsslsessioncipher) que nos permite acceder a la información sobre la conexión.

#### Array sslErrors() <a href="#sslerrors" id="sslerrors"></a>

Devuelve un array de cadenas con los textos de mensaje correspondientes a los errores encontrados al establecer la conexión segura.

## Ejemplos

### Obtener información de la conexión segura TLS/SSL en curso

```javascript
var sslInfo = theApp.sslInfo();
var szSslInfo ="No TLS/SSL";

if ( sslInfo )
{
    szSslInfo ="Conexión TLS/SSL: ";
    var sslSession = sslInfo.sessionCipher();
    var separador = "\n";

    if ( !sslSession.isNull() )
    {

        szSslInfo += sslSession.authenticationMethod() + separador;
        szSslInfo += sslSession.encryptionMethod() + separador;
        szSslInfo += sslSession.isNull() + separador;
        szSslInfo += sslSession.keyExchangeMethod() + separador;
        szSslInfo += sslSession.name() + separador;
        szSslInfo += sslSession.protocolString() + separador;
        szSslInfo += sslSession.supportedBits().toString() + separador;
        szSslInfo += sslSession.usedBits().toString() + separador;
        szSslInfo += sslSession.name() + separador;

        for(var i=0; i < sslInfo.peerCertificateChainCount(); ++i)
        {
            szSslInfo += separador;

            var sslCert = sslInfo.peerCertificateChain(i);

            szSslInfo += sslCert.digest() + separador;
            szSslInfo += sslCert.digest( VApp.Sha1 ) + separador;
            szSslInfo += sslCert.effectiveDate() + separador;
            szSslInfo += sslCert.issuerInfo("O");
        }
    }

     alert(  szSslInfo  );
}
```
