API JavaScript HSM Dinamo
    theme_preparing_search_index
    interface Management {
        getShadow(pin: string, path?: string): Promise<GetShadowResponse>;
        setNsAuthState(
            aclMask: ACL_MASK,
            state: NSAUTH_STATE,
            share: string[],
        ): Promise<boolean>;
        generateSVMK(
            m: number,
            n: number,
            secret: null | string,
            version?: SVMK_VERSION,
        ): Promise<genSVMKResponse>;
        recoverSVMK(parts: string[]): Promise<string>;
        getScInfo(path?: string): Promise<ScInfo | ErrorResponseNH>;
        getScLabel(pin: string, path?: string): Promise<ErrorResponseNH | ScLabel>;
        setScLabel(
            pin: string,
            label: string,
            path?: string,
        ): Promise<ErrorResponseNH | SucessResponseNH>;
        changeScPin(
            oldPin: string,
            newPin: string,
            path?: string,
        ): Promise<ErrorResponseNH | SucessResponseNH>;
        writeScSVMK(
            pin: string,
            shadow: string,
            overwrite: boolean,
            path?: string,
        ): Promise<ErrorResponseNH | SucessResponseNH>;
        eraseSmartCard(
            pin: string,
            path?: string,
        ): Promise<ErrorResponseNH | SucessResponseNH>;
        listObjs(): Promise<string[] | null[]>;
        setTlsBundle(key?: string, cert?: string): Promise<SucessResponse>;
        setUserParam(user: string, der: Buffer): Promise<SucessResponse>;
        deleteAuthSA(user: string, tfaType: TFA_TYPE): Promise<SucessResponse>;
        getUserAcl(user: string): Promise<AclList>;
        setUserAcl(user: string, acl: ACL_MASK[]): Promise<SucessResponse>;
        listBlobs(): Promise<string[]>;
        getObjectInfo(objId: string): Promise<ObjectInfo>;
        getObjectInfoModprobe(objId: string): Promise<ObjectInfo>;
    }
    theme_index

    kind_plural_method

    • Lê a shadow de um cartão Smart-card M de N Dinamo.

      kind_plural_parameter

      • pin: string

        PIN do cartão. Deve ser uma string numérica ASCII com tamanho máximo de 8.

      • flag_optionalpath: string

        Atributo opcional com o path para o utilitário dinamonh.exe.

      theme_returns Promise<GetShadowResponse>

      • Dados da shadow lida.

      exceptions.HsmError Caso ocorra algum erro na operação.

      OBS: Para realizar esta operação, é necessário instalar o HSM Client na opção Completa no dispositivo. Você pode fazer o download do HSM Client através do link. Além disso, é necessário utilizar uma leitora de smartcards certificada pela Dinamo Networks.

      OBS:Embora seja possível indicar o path do Dinamo Native Host manualmente por meio do atributo path, a Dinamo Networks recomenda seu uso apenas em casos de restrição severa ao registro do Windows ou alterações no método default de instalação do cliente Dinamo

      Código de exemplo: Recuperando a shadow de um smartcard

    • Gera um Segredo e o divide em partes usando o esquema de compartilhamento secreto de Shamir.

      kind_plural_parameter

      • m: number

        Número mínimo de partes necessárias para reconstruir o segredo. Deve ser maior ou igual a 2 e menor ou igual a n.

      • n: number

        Número total de partes geradas. Deve ser maior ou igual a m e menor ou igual a 255.

      • secret: null | string

        Segredo a ser dividido. Se nulo ou não fornecido, um segredo aleatório será gerado. Se fornecido, deve ser uma string ASCII com tamanho fixo dependendo da versão do SVMK.

      • flag_optionalversion: SVMK_VERSION

        Versão do SVMK que determina o tamanho do segredo. (Opcional. Valor padrão é 2)

      theme_returns Promise<genSVMKResponse>

      • Um objeto contendo o segredo original (se fornecido ou gerado), a entropia usada (se o segredo foi gerado), os parâmetros m e n, e as partes geradas pelo esquema de Shamir.

      exceptions.HsmError Se ocorrer um erro durante a operação, como parâmetros inválidos ou erro de comunicação com o HSM.

      O esquema de Shamir permite dividir um segredo em n partes, de forma que pelo menos m partes sejam necessárias para reconstruir o segredo original. Nenhuma combinação de m-1 partes revela qualquer informação sobre o segredo.

      A versão do SVMK define o tamanho do segredo e o formato das partes. A versão 2 introduz melhorias de segurança em relação à versão 1.

      Se secret for nulo, um novo segredo aleatório com o tamanho apropriado (determinado pela versão) será gerado. A entropia usada para gerar o segredo será incluída na resposta.

      Se secret for fornecido, ele será usado como o segredo a ser dividido. Certifique-se de que o segredo tenha o tamanho correto para a versão especificada.

    • Recupera o SVMK (SVMK - Server Master Key) a partir de um conjunto de partes geradas pelo esquema de compartilhamento secreto de Shamir.

      kind_plural_parameter

      • parts: string[]

        Array de strings hexadecimais representando as partes do SVMK. Deve conter pelo menos m partes válidas, onde m é o número mínimo de partes definido durante a geração do SVMK.

      theme_returns Promise<string>

      • O segredo original reconstruído, como uma string hexadecimal.

      exceptions.HsmError Se ocorrer um erro durante a operação, como partes inválidas, número insuficiente de partes ou erro de comunicação com o HSM.

      Este método recupera o SVMK original a partir das partes fornecidas. As partes devem ter sido geradas previamente pelo método generateSVMK. O número de partes fornecidas deve ser igual ou superior ao valor de m definido na geração. A ordem das partes não importa.

      Se as partes fornecidas forem inválidas (formato incorreto, tamanhos diferentes, etc.) ou se o número de partes for insuficiente, um erro será lançado.

    • Obtém informações sobre o smart card.

      Este método se obtem informações detalhadas sobre o smart card inserido na leitora.

      kind_plural_parameter

      • flag_optionalpath: string

        Atributo opcional com o path para o utilitário dinamonh.exe.

      theme_returns Promise<ScInfo | ErrorResponseNH>

      Uma Promise que resolve com um objeto ScInfo contendo as informações do smart card em caso de sucesso, ou rejeita com um objeto ErrorResponseNH em caso de erro.

      Se ocorrer um erro durante a comunicação com o Native Host, como:

      • Executável do Native Host não encontrado.
      • Erro ao iniciar o processo do Native Host.
      • Erro ao analisar a resposta JSON do Native Host.
      • Timeout na operação.
      • Native Host encerrado com código de erro.

      OBS: Para realizar esta operação, é necessário instalar o HSM Client na opção Completa no dispositivo. Você pode fazer o download do HSM Client através do link. Além disso, é necessário utilizar uma leitora de smartcards certificada pela Dinamo Networks.

      OBS:Embora seja possível indicar o path do Dinamo Native Host manualmente por meio do atributo path, a Dinamo Networks recomenda seu uso apenas em casos de restrição severa ao registro do Windows ou alterações no método default de instalação do cliente Dinamo

      As informações do smart card são retornadas em um objeto ScInfo, que contém detalhes como ATR, CSN, versão do chip, etc. Em caso de erro, um objeto ErrorResponseNH é retornado, contendo o status e o código de erro.

    • Obtém o label do smart card.

      kind_plural_parameter

      • pin: string

        O PIN do smart card.

      • flag_optionalpath: string

        Atributo opcional com o path para o utilitário dinamonh.exe.

      theme_returns Promise<ErrorResponseNH | ScLabel>

      Uma Promise que resolve com um objeto ScLabel contendo o label do smart card em caso de sucesso, ou rejeita com um objeto ErrorResponseNH em caso de erro.

      Se ocorrer um erro.

      O label do smart card é retornado em um objeto ScLabel. Em caso de erro, um objeto ErrorResponseNH é retornado, contendo o status e o código de erro.

      OBS: Para realizar esta operação, é necessário instalar o HSM Client na opção Completa no dispositivo. Você pode fazer o download do HSM Client através do link. Além disso, é necessário utilizar uma leitora de smartcards certificada pela Dinamo Networks.

      OBS:Embora seja possível indicar o path do Dinamo Native Host manualmente por meio do atributo path, a Dinamo Networks recomenda seu uso apenas em casos de restrição severa ao registro do Windows ou alterações no método default de instalação do cliente Dinamo

      Código de exemplo: Recuperando o label de um smartcard

    • Define o label do smart card.

      kind_plural_parameter

      • pin: string

        O PIN do smart card.

      • label: string

        O novo label a ser definido.

      • flag_optionalpath: string

        Atributo opcional com o path para o utilitário dinamonh.exe.

      theme_returns Promise<ErrorResponseNH | SucessResponseNH>

      Uma Promise que resolve com um objeto SucessResponseNH em caso de sucesso, ou rejeita com um objeto ErrorResponseNH em caso de erro.

      Se ocorrer um erro.

      OBS: Para realizar esta operação, é necessário instalar o HSM Client na opção Completa no dispositivo. Você pode fazer o download do HSM Client através do link. Além disso, é necessário utilizar uma leitora de smartcards certificada pela Dinamo Networks.

      OBS:Embora seja possível indicar o path do Dinamo Native Host manualmente por meio do atributo path, a Dinamo Networks recomenda seu uso apenas em casos de restrição severa ao registro do Windows ou alterações no método default de instalação do cliente Dinamo

    • Altera o PIN do smart card.

      kind_plural_parameter

      • oldPin: string

        O PIN atual do smart card.

      • newPin: string

        O novo PIN a ser definido.

      • flag_optionalpath: string

        Atributo opcional com o path para o utilitário dinamonh.exe.

      theme_returns Promise<ErrorResponseNH | SucessResponseNH>

      Uma Promise que resolve com um objeto SucessResponseNH em caso de sucesso, ou rejeita com um objeto ErrorResponseNH em caso de erro.

      Se ocorrer um erro.

      OBS: Para realizar esta operação, é necessário instalar o HSM Client na opção Completa no dispositivo. Você pode fazer o download do HSM Client através do link. Além disso, é necessário utilizar uma leitora de smartcards certificada pela Dinamo Networks.

      OBS:Embora seja possível indicar o path do Dinamo Native Host manualmente por meio do atributo path, a Dinamo Networks recomenda seu uso apenas em casos de restrição severa ao registro do Windows ou alterações no método default de instalação do cliente Dinamo

    • Grava o SVMK (Server Master Key) no smart card.

      kind_plural_parameter

      • pin: string

        O PIN do smart card. Deve ser uma string numérica com exatamente 8 dígitos.

      • shadow: string

        O shadow a ser gravado, em formato hexadecimal. Deve ter o tamanho correto de acordo com a versão do SVMK.

      • overwrite: boolean

        Indica se deve sobrescrever um shadow existente. Se false e já existir um shadow, a operação falhará.

      • flag_optionalpath: string

        Atributo opcional com o path para o utilitário dinamonh.exe.

      theme_returns Promise<ErrorResponseNH | SucessResponseNH>

      Uma Promise que resolve com um objeto SucessResponseNH em caso de sucesso, ou rejeita com um objeto ErrorResponseNH em caso de erro.

      Se ocorrer um erro, como:

      • PIN inválido.
      • Shadow inválido (formato incorreto, tamanho incorreto).
      • Tentativa de sobrescrever um shadow existente quando overwrite é false.

      OBS: Para realizar esta operação, é necessário instalar o HSM Client na opção Completa no dispositivo. Você pode fazer o download do HSM Client através do link. Além disso, é necessário utilizar uma leitora de smartcards certificada pela Dinamo Networks.

      OBS:Embora seja possível indicar o path do Dinamo Native Host manualmente por meio do atributo path, a Dinamo Networks recomenda seu uso apenas em casos de restrição severa ao registro do Windows ou alterações no método default de instalação do cliente Dinamo

      O shadow fornecido será gravado no smart card, permitindo que ele seja usado para autenticação e outras operações. Certifique-se de que o shadow seja válido e tenha o tamanho correto de acordo com a versão do SVMK.

    • Apaga o conteúdo de um smart card.

      kind_plural_parameter

      • pin: string

        O PIN do smart card. Deve ser uma string numérica com exatamente 8 dígitos.

      • flag_optionalpath: string

        Atributo opcional com o path para o utilitário dinamonh.exe.

      theme_returns Promise<ErrorResponseNH | SucessResponseNH>

      Uma Promise que resolve com um objeto SucessResponseNH em caso de sucesso, ou rejeita com um objeto ErrorResponseNH em caso de erro.

      Se ocorrer um erro, como:

      • PIN inválido.
      • Erro de comunicação com o HSM.
      • Smart card não encontrado ou não acessível.

      OBS: Para realizar esta operação, é necessário instalar o HSM Client na opção Completa no dispositivo. Você pode fazer o download do HSM Client através do link. Além disso, é necessário utilizar uma leitora de smartcards certificada pela Dinamo Networks.

      OBS:Embora seja possível indicar o path do Dinamo Native Host manualmente por meio do atributo path, a Dinamo Networks recomenda seu uso apenas em casos de restrição severa ao registro do Windows ou alterações no método default de instalação do cliente Dinamo

      Atenção: Esta operação é irreversível e apagará todos os dados do smart card. Certifique-se de que deseja apagar o smart card antes de chamar este método.

    • Lista os objetos armazenados no HSM.

      theme_returns Promise<string[] | null[]>

      Uma Promise que resolve para um array de strings, contendo lista dos objetos contidos na partição do HSM.

      Se ocorrer um erro durante a comunicação com o HSM, como problemas de conexão ou erros na resposta do HSM.

    • Habilita o TLS Bundle no HSM

      kind_plural_parameter

      • flag_optionalkey: string

        Id da chave privada em string.

      • flag_optionalcert: string

        Id do certificado em string.

      theme_returns Promise<SucessResponse>

      Uma promessa que resolve com um objeto SuccessResponse em caso de sucesso, ou rejeita com um erro em caso de falha.

      Se key e cert forem omitidos, o TLS Bundle será resetado para o estado padrão OEM.

      HsmError Se ocorrer um erro durante a comunicação com o HSM.

    • Habilita segundo fator de autenticação (TFA) para um usuário

      kind_plural_parameter

      • user: string

        Identificador do usuário

      • der: Buffer

        Certificado utilizado para habilitar x509.

      theme_returns Promise<SucessResponse>

      Uma promessa que resolve com um objeto SuccessResponse em caso de sucesso, ou rejeita com um erro em caso de falha.

      HsmError Se ocorrer um erro durante a comunicação com o HSM.

    • Remove Segunda Fator de Autenticação (TFA) atribuído a um usuário

      kind_plural_parameter

      • user: string

        Identificador do usuário

      • tfaType: TFA_TYPE

        Identificador do TFA a ser removido.

      theme_returns Promise<SucessResponse>

      Uma promessa que resolve com um objeto SuccessResponse em caso de sucesso, ou rejeita com um erro em caso de falha.

      HsmError Se ocorrer um erro durante a comunicação com o HSM.

    • Recupera o ACL de um usuário.

      kind_plural_parameter

      • user: string

        Identificador do usuário

      theme_returns Promise<AclList>

      Uma promessa que resolve com um objeto com lista de acls em caso de sucesso, ou rejeita com um erro em caso de falha.

      HsmError Se ocorrer um erro durante a comunicação com o HSM.

    • Lista Blobs armazenados na partição do HSM.

      theme_returns Promise<string[]>

      • Promessa resolvida com um array de strings contendo uma lista de blobs armazenada na partição do HSM.

      exceptions.HsmError - Retornado caso um erro seja encontrado.

    • Retorna informações sobre um objeto armazenado no HSM, evitando possíveis ruídos no log ao tentar consultar objetos não existentes na partição.

      kind_plural_parameter

      • objId: string

        O identificador do objeto na partição do HSM.

      theme_returns Promise<ObjectInfo>

      • Promessa resolvida com um objeto ObjectInfo contendo informações sobre o objeto.

      exceptions.HsmError - Retornado caso um erro seja encontrado.