new LicenseManager()
Classe que permite criação e o controle das licenças de uso do sistema.
Members
-
<static> defaultLicenseVersion :number
-
Versão mais atual da geração de códigos de licença.
Type:
- number
Methods
-
<static> getInstance()
-
Obtém uma instância compartilhada desta classe.
Returns:
- Type
- LicenseManager
-
addLicense(license [, administratorPassword])
-
Adiciona uma licença de uso.
Parameters:
Name Type Argument Description licensestring Licença criada pelo método createLicense.
administratorPasswordstring <optional>
Senha do usuário administrator. Caso não seja informada, será verificado se o usuário da sessão corrente possui o escopo de autorização para adicionar licenças.
- See:
-
createLicense(licenseInfo [, userId] [, password])
-
Cria uma licença de uso para um produto.
Parameters:
Name Type Argument Description licenseInfoObject Dados da licença a ser criada.
Properties
Name Type Argument Description productnumber Chave do produto que será licenciado.
licenserKeynumber <optional>
Chave única do licenciador que identificará esta licença. É importante que ao atualizar o licenciamento de uma base de dados seja informado o mesmo valor de
licenserKeydo licenciamento original. Caso seja informado um valor diferente, o sistema entenderá como uma nova instalação e invalidará as senhas dos usuários cadastrados.licenseVersionnumber <optional>
Número inteiro que identifica o formato da licença a ser gerada. Deve ser informado apenas quando for necessário gerar licenças para bases de dados que não estejam utilizando a última versão da plataforma. Atualmente, são suportadas as seguintes versões de licença:
4: versão padrão, utilizada quando não é uma informada uma versão específica. Suportada pelo Engine 44 ou superior. 3: versão que utiliza chaves de 32 bits. Suportada pelo Engine 43 ou inferior.
licenseTypestring Flag que define como será controlado o uso do produto:
- "C" (connection): pela quantidade de conexões simultâneas ao banco de dados.
- "U" (user): pela quantidade de usuários nominais na base de dados.
- "S" (simultaneous user): pela quantidade de usuários simultâneos na base de dados.
- "P" (processor): pela quantidade de processadores dos Engine que possuam acesso direto ao banco de dados.
- "X" (custom): não será controlado pelo sistema. O produto deverá possuir um mecanismo próprio para controlar o uso da licença.
quantitynumber Quantidade máxima de acessos permitida. Seu significado irá variar de acordo com o parâmetro licenseType.
extensionsnumber | Array.<number> Chave ou uma lista de chaves das extensões do produto que devem ser habilitadas na base licenciada. Extensões são recursos opcionais de um produto que podem ser ativados ou não em um cliente dependendo da natureza da sua operação. Ver a documentação da classe "Extensões de produto" (-1898140325) para mais detalhes.
expirationDate Data de validade da licença.
licenseeNamestring Nome da empresa que está sendo licenciada.
licenseeIdstring Identificação legal da empresa que está sendo licenciada.
userIdstring <optional>
Nome ou e-mail do usuário que está criando a licença. O usuário tem que ter permissão de licenciar o produto informado. Caso não seja informado, será utilizado o usuário da sessão corrente.
passwordstring <optional>
Senha do usuário informado em userId.
Returns:
Texto codificado com a nova licença. Esta string deve ser passada como parâmetro para o método addLicense() na base de dados que será licenciada.
- Type
- string
-
decryptLicensedData(data, product [, opt_extension])
-
Descriptografa um dado previamente criptografado pelo método #encryptLicensedData apenas se a base de dados corrente satisfizer os requerimentos de licenciamento solicitados no momento da encriptação. Será gerado um erro caso a base não satisfaça os requerimentos de licenciamento.
Parameters:
Name Type Argument Description datastring Dado a ser descriptografado.
productnumber Produto ao qual os dados criptografados estão associados. Será gerado um erro se os dados tiverem sido criptografados pela chave de um outro produto.
opt_extensionnumber <optional>
Extensão do produto ao qual os dados criptografados estão associados. Será gerado um erro se os dados tiverem sido criptografados associados a uma outra extensão.
Returns:
Dado descriptografado.
- Type
- string
-
encryptLicensedData(data, requirements, productPrivateKey)
-
Criptografa uma string que somente poderá ser descriptografada em uma base de dados licenciada com os dados de licenciamento requeridos.
Parameters:
Name Type Description datastring Dado a ser criptografado.
requirementsObject Dados de licenciamento exigidos na base de dados para que o dado pode ser descriptografado.
Properties
Name Type Argument Description productnumber Chave do produto que deverá estar licenciado para que o dado seja descriptografado.
extensionnumber <optional>
Chave da extensão de produto que deverá estar licenciado para que o dado seja descriptografado.
licenseeNamestring <optional>
Nome da empresa licenciada que poderá descriptografar o dado.
licenseeIdstring <optional>
Identificação legal da empresa licenciada que poderá descriptografar o dado.
licenserKeynumber <optional>
Chave da licença que deve estar registrada na base licenciada.
licensedProductsnumber | Array.<number> <optional>
Chaves dos produtos que devem estar licenciados além do produto utilizado para encriptar os dados.
productPrivateKeystring Chave privada RSA associada ao produto. A chave é gerada na criação do produto e é de conhecimento exclusivo da empresa desenvolvedora do produto.
Returns:
Dado criptografado que poderá ser lido apenas em uma base de dados que satisfaça os requerimentos de licenciamento.
- Type
- string
-
getIssuableLicenses(userKey)
-
Obtém as chaves dos produtos que podem ser licenciados pelo usuário informado.
Parameters:
Name Type Description userKeynumber Chave do usuário
- See:
Returns:
Chaves dos produtos que podem ser licenciados.
- Type
- Array
-
getUsedProductsByUser(userKey)
-
Obtém as chaves do produtos utilizados por um usuário. Utilizado pelo controle de licenciamento para definir quais licenças devem ser consumidas quando o usuário realiza um login no sistema.
Este método verifica apenas se o usuário tem acesso de visão às classes filhas de "/products" o que é um conceito incompleto do que é o consumo de um produto. Há códigos mais relevantes no diretório "/Menu" quando o Web Framework é utilizado ou consumo de APIs HTTP que são desconsiderados por este método. Por esse motivo, o seu uso não é recomendado.
Parameters:
Name Type Description userKeynumber Chave do usuário
- Deprecated:
-
- Utilize lógicas especializadas para os produtos que terão o uso controlado.
Returns:
Chaves dos produtos que o usuário utiliza.
- Type
- Array
-
isLicensed(product [, opt_extension])
-
Determina se um produto e opcionalmente uma extensão foram licenciadas para uso na base corrente.
Parameters:
Name Type Argument Description productnumber Chave do produto a verifica se encontra-se licenciado.
opt_extensionnumber <optional>
Chave da extensão a verificar se encontra-se licenciada.
-
removeLicense(product [, administratorPassword])
-
Remove uma licença de uso.
Parameters:
Name Type Argument Description productnumber Chave do produto licenciado.
administratorPasswordstring <optional>
Senha do usuário administrator. Caso não seja informada, será verificado se o usuário da sessão corrente possui o escopo de autorização para remover licenças.
- See:
Returns:
Versão das alterações ou zero caso não existam licenças a serem removidas para aquele produto.
- Type
- number
-
setIssuableLicenses(userKey, productKeys, passwords)
-
Define os produtos que poderão ser licenciados pelo usuário informado.
Parameters:
Name Type Description userKeynumber Chave do usuário
productKeysArray Array com as chaves dos produtos. Informe "null" para retirar o poder de licenciamento do usuário.
passwordsArray Array com as senhas dos produtos
- See: