01. OBJETIVO
O objetivo dos Dados Protegidos em cadastros MVC é realizar a ofuscação de conteúdos restritos.
Para tanto são usadas as informações dos campos associados com o programa MVC, os campos cadastrados na rotina de Dados Protegidos e o usuário fazendo uso do programa MVC para decidir quais e se os dados devem ser ofuscados.
Os programas MVC possuem a definição da tabela e também dos campos que serão utilizados no cadastro, esta é a informação base para que aconteça a decisão de ofuscar ou não.
Para casos excepcionais essas informações não são suficientes para determinar o ofuscamento e nestes casos, foram liberados recursos para definir diretamente quais os campos devem ser ofuscados, desconsiderando as avalições de campo e usuário feitas por padrão (a única avaliação mantida é ter binários de Smartclient e Appserver atualizados).
Para força um comportamento de ofuscamento em programa MVC é necessário alterar informações da estrutura de campos carregada ou criada na função VIEWDEF.
Ao criar a estrutura para uso em tela utilize o método SetProperty com a propriedade MVC_VIEW_OBFUSCATED e valor verdadeiro (.T.) ou falso (.F.), esta definição tem os seguintes comportamentos:
- verdadeiro (.T.): irá fazer o ofuscamento independente das configurações de usuário e dados protegidos.
- false (.F.): irá fazer a exibição do conteúdo independente das configurações de usuário e dados protegidos.
Este recurso foi desenvolvido considerando algumas rotinas que não representam diretamente relações com tabelas e campos e que iriam exigir que os desenvolvedores destes programas façam adaptações e consultas para deixar estes programas adequados a legislação.
Para criar os recursos fundamentais no sistema é necessário a aplicação da lib, atualizada com label mínimo 20200214, e atualização do sistema com upddistr.
A aplicação do UPDDISTR pode acontecer com:
<style> div.theme-default .ia-splitter #main { margin-left: 0px; } .ia-fixed-sidebar, .ia-splitter-left { display: none; } #main { padding-left: 10px; padding-right: 10px; overflow-x: hidden; } .aui-header-primary .aui-nav, .aui-page-panel { margin-left: 0px !important; } .aui-header-primary .aui-nav { margin-left: 0px !important; } .aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after { background: #FF9900; !important } .menu-item.active-tab { border-bottom: none !important; } </style> |