API C/C
HSM Dinamo
Cargando...
Buscando...
No se han encontrado entradas
Usuarios

Descripción detallada

Gestión de usuarios HSM.

Gestión de usuarios HSM. Más...

Definiciones de tipo

typedef int(AAP_APIfuncListUsersCallback) (char *szNombreUsuario, void *pParam, BOOL bFinal)
 

Funciones

int AAP_API DCreateUser(HSESSIONCTX hSession, struct USER_INFO userInfo)
 
int AAP_API DRemoveUser(HSESSIONCTX hSession, char *szUserId)
 
int AAP_API DSetUserParam(HSESSIONCTX hSession, DWORD dwParam, BYTE *pbData, DWORD dwDataLen, DWORD dwFlags)
 
int AAP_API DGetUserParam(HSESSIONCTX hSession, DWORD dwParam, BYTE *pbData, DWORD *pdwDataLen, DWORD dwFlags)
 
int AAP_API DListUsers(HSESSIONCTX hSession, funcListUsersCallback fncallback, void *pParam)
 
int AAP_API DAssignToken (const HSESSIONCTX hSession, const char *szUserId, const DWORD dwParam, BYTE *pbData, const DWORD dwDataLen)
 
int AAP_API DUnassignToken (const HSESSIONCTX hSession, const DWORD dwParam, const char *szUserId)
 
int AAP_API DOATHResync (const HSESSIONCTX hSession, char *szUser, char *szOTP1, char *szOTP2, DWORD dwParam)
 

Definiciones de tipo

funcListUsersCallback

typedef int(AAP_API * funcListUsersCallback) (char *szNombreUsuario, void *pParam, BOOL bFinal)

#include <dinamo.h>

Puntero a la función de callback para listar usuarios.

Parámetros
[en]szNombreUsuarioNombre de usuario.
[en]pParamPuntero a un parámetro pasado a la función DListUsers().
[en]bFinalIndicador del último registro.
Devolución
0

Funciones

DCreateUser()

int AAP_API DCreateUser ( HSESSIONCTX hSesión,
struct USER_INFO userInfo )

#include <dinamo.h>

Cree un usuario en HSM de acuerdo con la información facilitada.

Parámetros
[en]hSesiónContexto adquirido a través de la función DOpenSession().
[en]userInfoEstructura que contiene información para la creación de usuarios. Para más detalles, consulte los comentarios.
Devolución
0 (CERO) si la función tiene éxito.
Consulte la sección Códigos de retorno para conocer otros valores.
Notas
La máscara de autorización del usuario, contenida en la estructura USER_INFOdebe ensamblarse concatenando los valores siguientes:
Valor Significado
ACL_NOP Usuario con autorizaciones ordinarias únicamente.
ACL_OBJ_CREATE Permiso para crear objetos. El permiso de lectura(ACL_OBJ_READ) se asigna implícitamente.
ACL_OBJ_DEL Permiso para eliminar objetos. El permiso de lectura(ACL_OBJ_READ) se asigna implícitamente.
ACL_OBJ_READ Permiso para leer el contenido de los objetos.
ACL_OBJ_UPDATE
ACL_OBJ_WRITE
Permiso para actualizar atributos de objetos.
ACL_OBJ_UPDATE = ACL_OBJ_WRITE
ACL_USR_CREATE
ACL_USR_DELETE
Permiso para crear y eliminar usuarios.
ACL_USR_CREATE = ACL_USR_DELETE
ACL_USR_REMOTE_INFO Permiso para recibir notificaciones de registro remoto.
ACL_USR_LIST Permiso para listar usuarios.
ACL_SYS_OPERATOR Permiso para operar como usuario "maestro".
ACL_SYS_BACKUP
ACL_SYS_RESTORE
Permiso para crear y restaurar copias de seguridad de los datos del HSM.
ACL_SYS_BACKUP = ACL_SYS_RESTORE
ACL_SYS_UDATE_HSM Permiso para actualizar el firmware.
ACL_NS_AUTHORISATION Habilita la partición M de N. La autorización de la partición se realiza mediante M de N a través de la consola local.
ACL_LOCAL_CRYPTO Activa Local-crypto. Las operaciones de cifrado de las claves de partición serán realizadas por la consola local.
Ejemplos
user_add_remove.c y user_otp.c.

DRemoveUser()

int AAP_API DRemoveUser ( HSESSIONCTX hSesión,
char * szUserId )

#include <dinamo.h>

Eliminar un usuario de HSM.

Parámetros
[en]hSesiónContexto adquirido a través de la función DOpenSession().
[en]szUserIdIdentificador de usuario dentro del HSM. Este identificador no debe contener espacios ni caracteres especiales. Los caracteres en mayúsculas y minúsculas distinguen entre mayúsculas y minúsculas.
Devolución
0 (CERO) si la función tiene éxito.
Consulte la sección Códigos de retorno para conocer otros valores.
Notas
La eliminación de usuarios también provoca la eliminación de todos los objetos en su posesión, incluidas llaves y archivos.
Atención
Esta función debe utilizarse con precaución, ya que todos los objetos propiedad del usuario eliminado también se borrarán permanentemente del HSM. Se recomienda crear una copia de seguridad antes de realizar esta función.
Ejemplos
user_add_remove.c y user_otp.c.

DSetUserParam()

int AAP_API DSetUserParam ( HSESSIONCTX hSesión,
DWORD dwParam,
BYTE * pbData,
DWORD dwDataLen,
DWORD dwFlags )

#include <dinamo.h>

DinamoCambiar la configuración de usuario en .

Parámetros
[en]hSesiónContexto adquirido a través de la función DOpenSession().
[en]dwParamEspecifica el parámetro de sesión que se va a configurar y, en consecuencia, la estructura de datos que se pasa en el parámetro pbData.
Valor Significado
UP_USER_NAME Tipo de pbData: char *
Nombre de usuario asociado al identificador actual. pbData debe ser un puntero a una cadena que contenga el nombre del usuario.
Aún no se admite.
UP_AUTH_MASK Tipo de pbData: USER_INFO *
Máscara de bits que contiene las autorizaciones del usuario actual. Ver API DCreateUser().
UP_ACCESS_TYPE Tipo de pbData: DWORD
Tipo de acceso permitido para el usuario actual.
Aún no se admite.
CONTRASEÑA_ARRIBA Tipo de pbData: char *
Cambia la contraseña del usuario actual. pbData debe ser un puntero a una cadena que contendrá la nueva contraseña del usuario.
CERTIFICADO_UP Tipo de pbData: USER_INFO_CERT *
La estructura puede rellenarse con un certificado X.509 v3 codificado en DER o PEM si está asociado al usuario actual.
Para la disociación de tokens no es necesario rellenar los campos de certificado en la estructura USER_INFO_CERT.
UP_BLOCK_USR Tipo de pbData: char *
Bloquea el usuario especificado en pbData. pbData debe apuntar a una cadena que contenga el usuario a bloquear.
UP_UNBLOCK_USR Tipo de pbData: char *
Desbloquea el usuario especificado en pbData. pbData debe apuntar a una cadena que contenga el usuario a desbloquear.
[en]pbDataPuntero a los datos o estructuras especificados en dwParam.
[en]dwDataLenTamaño de los datos o de la estructura especificada en dwParam.
[en]dwFlagsReservado para uso futuro (debe ser 0).
Devolución
0 (CERO) si la función tiene éxito.
Consulte la sección Códigos de retorno para conocer otros valores.
Notas
En dwParam es igual a UP_PASSWORD, la nueva contraseña del usuario entra en vigor en cuanto la función retorna, por lo que todas las autenticaciones posteriores deben realizarse con el nuevo valor.
La máscara de autorización del usuario debe ensamblarse concatenando los valores de la tabla descrita en DCreateUser().

DGetUserParam()

int AAP_API DGetUserParam ( HSESSIONCTX hSesión,
DWORD dwParam,
BYTE * pbData,
DWORD * pdwDataLen,
DWORD dwFlags )

#include <dinamo.h>

DinamoRecuperar la configuración de usuario de .

Parámetros
[en]hSesiónContexto adquirido a través de la función DOpenSession().
[en]dwParamConsulte dwParam en DSetUserParam(). En la tabla siguiente se describen los indicadores específicos de esta API.
Valor Significado
UP_BLOCK_USR Tipo de pbData: USER_BLOCK
Estructura que recibirá los datos de bloqueo del usuario. Rellene el miembro szUserId de la estructura de entrada. El miembro nBlocked será rellenado por la API.
UP_INVALID_LOGIN_ATTEMPTS Tipo de pbData: USER_BLOCK
Estructura que recibirá los datos del intento de inicio de sesión inválido del usuario. Rellene el miembro szUserId de la estructura para la entrada. El miembro dwAttempts será rellenado por la API. Este valor se devolverá cuando se establezca la opción de intentos de inicio de sesión no válidos en la política de contraseñas.
UP_USR_PA_STATE Tipo de pbData: USER_PA_INFO
Estructura que recibirá los datos de autorización de división. Rellene el miembro szUserId de la estructura para la entrada. Los demás miembros los rellenará la API.
[en]pbDataPuntero a los datos o estructuras especificados en dwParam.
[en]pdwDataLenTamaño de los datos o de la estructura especificada en dwParam.
[en]dwFlagsReservado para uso futuro (debe ser 0).
Devolución
0 (CERO) si la función tiene éxito.
Consulte la sección Códigos de retorno para conocer otros valores.

DListUsers()

int AAP_API DListUsers ( HSESSIONCTX hSesión,
funcListUsersCallback fncallback,
vacío * pParam )

#include <dinamo.h>

DinamoEnumera los usuarios de .

Parámetros
[en]hSesiónContexto adquirido a través de la función DOpenSession().
[en]fncallbackPuntero a una función de callback utilizada para listar nombres de usuario (identificadores).
[en]pParamPuntero a cualquier parámetro que se pasará a la función de devolución de llamada
Devolución
0 (CERO) si la función tiene éxito.
Consulte la sección Códigos de retorno para conocer otros valores.
Ejemplos
user_add_remove.c.

DAssignToken()

int AAP_API DAssignToken ( const HSESSIONCTX hSesión,
const char * szUserId,
const DWORD dwParam,
BYTE * pbData,
const DWORD dwDataLen )

#include <dinamo.h>

Asocia un token OTP estándar (hora o evento) OATH con un usuario. Tras esta llamada, el usuario solo se autenticará con usuario, contraseña y OTP.

Parámetros
[en]hSesiónContexto adquirido a través de la función DOpenSession().
[en]dwParamSe acepta la siguiente tabla:
Valor Significado
AT_OATH_TOKEN Asociar un token HOTP(evento) al usuario. Pasa OATH_SA_v1 en pbData.
AT_OATH_TOKEN_TOTP Asociar un token TOTP(tiempo) al usuario. Pasa OATH_SA_v2 en pbData.
[en]szUserIdNombre del usuario que tendrá asociado el token.
[en]pbDataDatos que contienen los parámetros del token. Debe especificarse como se define en el parámetro dwParam.
[en]dwDataLenTamaño, en bytes, de los datos pasados en pbData.
Devolución
0 (CERO) si la función tiene éxito.
Consulte la sección Códigos de retorno para conocer otros valores.
Notas
A partir de la versión de firmware 4.0.2, el tamaño de la ventana de espera de autenticación se establece por defecto en 10 intervalos más o menos. En el caso de los tokens HOTP, los intervalos se contarán por el número de eventos, mientras que en el caso de los tokens TOTP se contarán por el número de pasos de tiempo.
Ejemplos
user_otp.c.

DDesasignarToken()

int AAP_API DUnassignToken ( const HSESSIONCTX hSesión,
const DWORD dwParam,
const char * szUserId )

#include <dinamo.h>

Desvincula la autenticación OTP de un usuario. Después de esta llamada, el usuario sólo se autenticará con nombre de usuario y contraseña.

Parámetros
[en]hSesiónContexto adquirido a través de la función DOpenSession().
[en]dwParamSe acepta la siguiente tabla:
Valor Significado
AT_OATH_TOKEN Desvincula un token HOTP(evento) o TOTP(hora) del usuario.
[en]szUserIdNombre del usuario al que se le disociará el token.
Devolución
0 (CERO) si la función tiene éxito.
Consulte la sección Códigos de retorno para conocer otros valores.
Ejemplos
user_otp.c.

DOATHResync()

int AAP_API DOATHResync ( const HSESSIONCTX hSesión,
char * szUsuario,
char * szOTP1,
char * szOTP2,
DWORD dwParam )

#include <dinamo.h>

Vuelve a sincronizar un testigo de evento, estándar OATH, asociado a un usuario HSM. Recibe dos OTP consecutivos, generados por el token, para sincronizar el estado del token en el usuario HSM.

Parámetros
[en]hSesiónContexto adquirido a través de la función DOpenSession().
[en]szUsuarioNombre del usuario cuyo token será resincronizado.
[en]szOTP1Primera OTP, para la sincronización, generada por el token.
[en]szOTP2Segunda OTP, para sincronización, generada por el token.
[en]dwParamReservado para uso futuro (debe ser 0).
Devolución
0 (CERO) si la función tiene éxito.
Consulte la sección Códigos de retorno para conocer otros valores.
Ejemplos
user_otp.c.