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 license
string Licença criada pelo método createLicense.
administratorPassword
string <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 licenseInfo
Object Dados da licença a ser criada.
Properties
Name Type Argument Description product
number Chave do produto que será licenciado.
licenserKey
number <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
licenserKey
do licenciamento original. Caso seja informado um valor diferente, o sistema entenderá como uma nova instalação e invalidará as senhas dos usuários cadastrados.licenseVersion
number <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.
licenseType
string 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.
quantity
number Quantidade máxima de acessos permitida. Seu significado irá variar de acordo com o parâmetro licenseType.
extensions
number | 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.
expiration
Date Data de validade da licença.
licenseeName
string Nome da empresa que está sendo licenciada.
licenseeId
string Identificação legal da empresa que está sendo licenciada.
userId
string <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.
password
string <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 data
string Dado a ser descriptografado.
product
number 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_extension
number <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 data
string Dado a ser criptografado.
requirements
Object Dados de licenciamento exigidos na base de dados para que o dado pode ser descriptografado.
Properties
Name Type Argument Description product
number Chave do produto que deverá estar licenciado para que o dado seja descriptografado.
extension
number <optional>
Chave da extensão de produto que deverá estar licenciado para que o dado seja descriptografado.
licenseeName
string <optional>
Nome da empresa licenciada que poderá descriptografar o dado.
licenseeId
string <optional>
Identificação legal da empresa licenciada que poderá descriptografar o dado.
licenserKey
number <optional>
Chave da licença que deve estar registrada na base licenciada.
licensedProducts
number | Array.<number> <optional>
Chaves dos produtos que devem estar licenciados além do produto utilizado para encriptar os dados.
productPrivateKey
string 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 userKey
number 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 userKey
number 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 product
number Chave do produto a verifica se encontra-se licenciado.
opt_extension
number <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 product
number Chave do produto licenciado.
administratorPassword
string <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 userKey
number Chave do usuário
productKeys
Array Array com as chaves dos produtos. Informe "null" para retirar o poder de licenciamento do usuário.
passwords
Array Array com as senhas dos produtos
- See: