NET API
HSM Dinamo
Cargando...
Buscando...
No se han encontrado entradas
atoken.cs

Ejemplo de uso de tokens de acceso.

Véase la nota sobre ejemplos.
utilizando Dinamo.Hsm;
usando System;
usando System.Text;
usando System.IO;
namespace ATokenExample
{
clase Programa
{
private static String strAddr = "127.0.0.1";
private static String strUsrId = "maestro";
private static String strPwd = "12345678";
static void Main(string[] args)
{
DinamoClient api = nuevo DinamoClient();
DinamoClient atokenApi = nuevo DinamoClient();
intentar {
/*
Conectar con HSM
*/
api.Connect(strAddr, strUsrId, strPwd);
/*
Crea un AToken sin límite de tiempo y otro con caducidad
de 1 hora.
*/
string atokenInfinite = api.IssueAToken(DinamoApi.DN_A_TOKEN_INFINITE);
Console.Out.WriteLine("¡Token de acceso creado correctamente!");
DateTime dt = DateTime.UtcNow.AddHours(1);
Console.WriteLine("Caducidad: " + dt.ToString());
string atokenExpiring = api.IssueAToken(dt);
/*
Conexión y desconexión mediante AToken
*/
atokenApi.ConnectToken(strAddr, strUsrId, atokenInfinite);
atokenApi.Disconnect(true);
Console.Out.WriteLine("¡Prueba de conexión ejecutada con éxito!");
uint atokenCounter = api.GetATokenCounter();
Console.Out.WriteLine("Contador ATokens: " + atokenCounter);
/*
Lista de ATokens
*/
Console.Out.WriteLine("Lista de ATokens:");
foreach(DinamoApi.DN_A_TOKEN_FULL atokenFull in atokenList)
{
Console.Out.WriteLine("\tToken: " +
atokenFull.GetFormattedAToken() +
" Usuario: " +
atokenFull.stAToken.pcNombreUsuario +
"Expiración: " +
(atokenFull.IsInfiniteExpirationDate() ?
"infinito": atokenFull.GetUtcExpirationDate().ToString());
}
/*
Ejecuta el recolector de basura HSM ATokens
*/
api.RunATokenGC();
Console.Out.WriteLine("¡La GC de los tokens de acceso se ha ejecutado correctamente!");
/*
Revocar el AToken
*/
api.RevokeAToken(atokenInfinite);
api.RevokeAToken(atokenExpiring);
Console.Out.WriteLine("¡Los tokens de acceso han sido revocados con éxito!");
} catch (DinamoException e) {
Console.Out.WriteLine(e.Mensaje);
} finally{
/*
Se desconecta del HSM
*/
}
}
}
}
Clase de bajo nivel para acceder al HSM. Para utilizar esta clase es necesario entender más ...
Definición DinamoApi.cs:15
const ulong DN_A_TOKEN_INFINITE
Definición DinamoApi.cs:1143
Clase API para acceder a las funcionalidades del HSM Dinamo. En esta clase se puede programar utilizando...
Definición DinamoClient.cs:93
Clase de excepción para errores de Dinamo.
Definición DinamoException.cs:10
override string Mensaje
Definición DinamoException.cs:42
void RunATokenGC()
Ejecuta el Recolector de Basura para los tokens de sesión HSM. Este método limpia todos los Access ...
Definición DinamoClient.cs:1492
uint GetATokenCounter()
Recupera el contador de tokens de acceso de todo el HSM.
Definición DinamoClient.cs:1505
DinamoApi.DN_A_TOKEN_FULL[] ListATokenFull()
Enumera los tokens de acceso del usuario en el HSM.
Definición DinamoClient.cs:1368
string EmisiónAToken(ulong expiración)
Emite un token de acceso para la sesión del usuario en el HSM. Esta funcionalidad es adecuada para el control a gran escala de...
Definición DinamoClient.cs:1308
void RevokeAToken(cadena aToken)
Revocar un token de autenticación HSM.
Definición DinamoClient.cs:1341
void ConnectToken(cadena Usuario, cadena Token)
Establece una conexión con el HSM utilizando un token temporal emitido por el usuario.
Definición DinamoClient.cs:747
void Conectar(cadena Usuario, cadena Contraseña)
Establece una conexión cifrada con el HSM utilizando los ajustes de equilibrio de carga.
Definición DinamoClient.cs:562
void Desconectar(bool flagCerrar)
Finaliza la conexión con el HSM.
Definición DinamoClient.cs:814
Espacio de nombres que denota un conjunto de funciones para acceder al HSM Dinamo y sus respectivas excepciones.
Definición DinamoClient.cs:12
Definición DinamoApi.cs:1568