Enum EnvVerifier

java.lang.Object
java.lang.Enum<EnvVerifier>
br.ufsc.labsec.utils.env.EnvVerifier
All Implemented Interfaces:
Serializable, Comparable<EnvVerifier>, Constable

public enum EnvVerifier
extends Enum<EnvVerifier>
Configurações que podem modificar o comportamento do Verificador na avaliação de arquivos assinados digitalmente via variáveis de ambiente.

O arquivo verifier/src/main/resources/.env.example é um exemplo da sintaxe utilizada pela aplicação.

O arquivo verifier/src/main/resources/.env é utilizado pela aplicação como fonte das variáveis caso exista.

Variáveis expostas pela diretiva Docker env_file têm prioridade em relação ao arquivo supracitado.

  • Nested Class Summary

    Nested classes/interfaces inherited from class java.lang.Enum

    Enum.EnumDesc<E extends Enum<E>>
  • Enum Constant Summary

    Enum Constants
    Enum Constant Description
    CLEAR_DATABASE
    Exclui o arquivo de banco de dados de âncoras de confiança a cada inicialização da aplicação.
    DATABASE_PATH
    Caminho absoluto do arquivo onde o banco de dados SQLite para âncoras de confiança é armazenado.
    EXTENSIONS_PROFILE
    Nível de visibilidade de informações do assinante no relatório de verificação, obtidas das extensões de certificado Subject Alternative Name e Certificate Policies.
    IMMEDIATE_ANCHOR_UPDATE
    Executa adições e remoções de âncoras de confiança imediatamente após a requisição.
    MAX_REQUEST_SIZE_MB
    Configura o tamanho máximo permitido de uma requisição (em MB).
    ONLY_VERIFY_ANCHORED
    Esconde do relatório de verificação as assinaturas cujo caminho de certificação do assinante não resolve para uma âncora de confiança conhecida.
    PATH_STORAGE
    Caminho absoluto do diretório para escrita de arquivos em cache.
    PROFILE_ONLY  
    REPORT_TIMEOUT_MS
    Tempo máximo de execução para a geração de um relatório de verificação.
    REQUEST_RATE_LIMIT_BUCKET_DURATION_SECONDS
    Especifica o período de tempo durante o qual um determinado número de solicitações é permitido.
    REQUEST_RATE_LIMIT_BUCKET_REQUESTS
    Define o número máximo de solicitações permitidas durante o intervalo de tempo especificado para o limite de taxa de solicitações.
    SIGNATURE_LIMIT
    Quantidade de assinaturas máxima que podem ser enviadas na mesma requisição para a aplicação.
    UNRESTRICTED_ATTRIBUTE_VERIFICATION
    Habilita verificação dos atributos da assinatura independentemente do caminho de certificação, assumindo o certificado do assinante como âncora de confiança.
    URL_BASE
    URL padrão para requisições através da documentação OpenAPI.
    URL_DESCRIPTION
    Texto de ajuda para identificação da variável URL_BASE, útil quando outros servidores são configurados na documentação OpenAPI.
    YKUE_API_URI
    URI base para requisições ao serviço do Ykue.
  • Method Summary

    Modifier and Type Method Description
    Object get()  
    static EnvVerifier valueOf​(String name)
    Returns the enum constant of this type with the specified name.
    static EnvVerifier[] values()
    Returns an array containing the constants of this enum type, in the order they are declared.

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait
  • Enum Constant Details

    • URL_BASE

      public static final EnvVerifier URL_BASE
      URL padrão para requisições através da documentação OpenAPI. Esta variável não tem valor padrão e deve ser configurada a priori.
    • URL_DESCRIPTION

      public static final EnvVerifier URL_DESCRIPTION
      Texto de ajuda para identificação da variável URL_BASE, útil quando outros servidores são configurados na documentação OpenAPI. Esta variável não tem valor padrão e deve ser configurada a priori.
    • PATH_STORAGE

      public static final EnvVerifier PATH_STORAGE
      Caminho absoluto do diretório para escrita de arquivos em cache. O usuário do sistema operacional ou contêiner executando a aplicação deve ter permissão de leitura e escrita de arquivos neste diretório.
    • ONLY_VERIFY_ANCHORED

      public static final EnvVerifier ONLY_VERIFY_ANCHORED
      Esconde do relatório de verificação as assinaturas cujo caminho de certificação do assinante não resolve para uma âncora de confiança conhecida. Os valores permitidos são true e false.
    • UNRESTRICTED_ATTRIBUTE_VERIFICATION

      public static final EnvVerifier UNRESTRICTED_ATTRIBUTE_VERIFICATION
      Habilita verificação dos atributos da assinatura independentemente do caminho de certificação, assumindo o certificado do assinante como âncora de confiança. Os valores permitidos são true e false.
    • SIGNATURE_LIMIT

      public static final EnvVerifier SIGNATURE_LIMIT
      Quantidade de assinaturas máxima que podem ser enviadas na mesma requisição para a aplicação.
    • REPORT_TIMEOUT_MS

      public static final EnvVerifier REPORT_TIMEOUT_MS
      Tempo máximo de execução para a geração de um relatório de verificação. Após este tempo de execução, a aplicação é parada e o relatório é devolvido incompleto, com as informações obtidas até aquele momento.
    • DATABASE_PATH

      public static final EnvVerifier DATABASE_PATH
      Caminho absoluto do arquivo onde o banco de dados SQLite para âncoras de confiança é armazenado. O usuário do sistema operacional ou contêiner executando a aplicação deve ter permissão de leitura e escrita de arquivos no diretório pai.
    • CLEAR_DATABASE

      public static final EnvVerifier CLEAR_DATABASE
      Exclui o arquivo de banco de dados de âncoras de confiança a cada inicialização da aplicação. Os valores permitidos são true e false.
    • EXTENSIONS_PROFILE

      public static final EnvVerifier EXTENSIONS_PROFILE
      Nível de visibilidade de informações do assinante no relatório de verificação, obtidas das extensões de certificado Subject Alternative Name e Certificate Policies. Os valores permitidos são:
    • IMMEDIATE_ANCHOR_UPDATE

      public static final EnvVerifier IMMEDIATE_ANCHOR_UPDATE
      Executa adições e remoções de âncoras de confiança imediatamente após a requisição. Caso contrário, as alterações são aplicadas apenas na próxima execução do Scheduler Os valores permitidos são true e false.
    • YKUE_API_URI

      public static final EnvVerifier YKUE_API_URI
      URI base para requisições ao serviço do Ykue. A URI deve ser finalizada com `/`, pois o método utilizado em YkueApi usa URI.resolve(URI), que necessita disso para resolver a URI base corretamente.
    • MAX_REQUEST_SIZE_MB

      public static final EnvVerifier MAX_REQUEST_SIZE_MB
      Configura o tamanho máximo permitido de uma requisição (em MB).
    • REQUEST_RATE_LIMIT_BUCKET_DURATION_SECONDS

      public static final EnvVerifier REQUEST_RATE_LIMIT_BUCKET_DURATION_SECONDS
      Especifica o período de tempo durante o qual um determinado número de solicitações é permitido. O período deve ser especificado em segundos.
    • REQUEST_RATE_LIMIT_BUCKET_REQUESTS

      public static final EnvVerifier REQUEST_RATE_LIMIT_BUCKET_REQUESTS
      Define o número máximo de solicitações permitidas durante o intervalo de tempo especificado para o limite de taxa de solicitações. Ou seja, determina quantas solicitações podem ser feitas dentro do intervalo de tempo definido.
    • PROFILE_ONLY

      public static final EnvVerifier PROFILE_ONLY
  • Method Details

    • values

      public static EnvVerifier[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static EnvVerifier valueOf​(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null
    • get

      public Object get()