Class: PermissionMaintenance

@nginstack/engine/lib/security/PermissionMaintenance~ PermissionMaintenance


new PermissionMaintenance()

O objeto PermissionMaintenance tem a finalidade de realizar manutenções nas permissões de acesso do sistema.

Deprecated:

Members


iPermissionChanged :DataSet

Este dataset mantém um 'log' de todas as alterações realizadas nos registros de permissão durante a execução das correções. Este dataset é um espelho da tabela 'iPermission', porém contém um o campo a mais que identifica o tipo da alteração realizada. O nome do campo é '_change' e; pode ser preenchido com os seguintes valores: "I" (insert - novo registro), "U" (update - registro alterado); e "D" (delete - registro excluído).

Type:

Methods


_replicatePermissionsToMother()

Replica a permissão informada no dataset iPermission na classe-mãe informada.


commit()

Grava as correções na base de dados.

Returns:
Type
number

fixAll()

Aplica todas as correções de permissão.


fixInitialPermissions()

Algumas classes podem ficar órfãs quando um upgrade é interrompido entre a criação dessas classes e a criação de suas permissões. O objetivo desta função é identificar quais classes estão sem quaisquer permissões e, então, criar as primeiras permissões delas com base numa cópia de permissões da classe mãe.


fixMissingPermissions()

Exclui os registros de permissão cujo campo "iParent" não é chave de uma classe ou de um registro da tabela iVfs, e/ou cujo grupo ou usuário não exista na base de dados.


fixPermissionsClasses()

Altera as permissões cujas classes sejam diferentes da chave da classe Sistema > Permissões.


fixReplicatedPermissions()

O objetivo desta função é Corrige situações em que uma filha possui uma permissão que exige replicação para a mãe e esta não possui a permissão. Por exemplo, uma classe é visível e sua mãe não. Situações como estas ocorrem quando se muda a mãe de uma classe, pois a nova mãe pode não ter as mesmas permissões da antiga.