GE - Como Fazer - Variação no ambiente CIGAM
Voltar
Como Fazer > Utilidades/Diversos > Variação no ambiente CIGAM
A partir da [Versão 191104 1], a implementação de restrições de visualização e criação de dados pode ser realizada por meio da combinação de nomes lógicos e da parametrização de variação do ambiente, considerando diferentes grupos de usuários.
- Importante: Este recurso não é atendido para as versões CIGAM e10 e nem para o integrador CIGAM.
Índice
- 1 Como restringir visualização de registros na base de dados através do CIGAM?
- 2 Como aplicar restrições de visualização sem a variação do ambiente no Grupo de usuários no CIGAM desktop?
- 3 Como utilizar restrição para visualização/criação de dados no Portais CIGAM, com validações de registros duplicados?
- 4 Como utilizar o assistente de atualização com variação diferente da estrutura indicada?
- 5 Como utilizar a variação de ambiente para ocultar dados sensíveis (LGPD)?
- 6 Versão 191104
- 7 Notas
Como restringir visualização de registros na base de dados através do CIGAM?
Para implementar restrições de registros na base, é necessário utilizar as variações do ambiente. Isso envolve a parametrização dos usuários em grupos que possuem os direitos necessários para acessar o CIGAM. Para realizar essa configuração, utilize o programa "Grupos de Direitos", que pode ser encontrado no seguinte caminho:
Menu: Utilidades/Diversos > Genéricos > Parâmetros > Usuários > Grupos de Direitos.
Parametrização no CIGAM desktop para todos os usuários
Na parametrização do grupo de direitos, é essencial preencher o campo “Variação do ambiente” com uma nomenclatura que identifique essa variação. Essa nomenclatura deve corresponder à utilizada em determinados objetos do banco de dados que serão empregados nas restrições. A estrutura recomendada para compor a tradução dos nomes lógicos é: %CGVARIACAOAMBIENTE%_TABELA.
- Exemplo de variação de ambiente:
- Desejo que certos usuários do CIGAM, ao abrirem o cadastro de empresa, visualizem apenas os dados da UN 001 (como Pedido, Cadastro de Empresa etc.). Da mesma forma, outros usuários devem ter acesso apenas aos dados da UN 002. Quando o Supervisor fizer login, ele deverá ter a permissão para visualizar todos os dados. Para implementar essa configuração, seguiremos os exemplos a seguir:
- Criação dos grupos de usuários: Crie grupos específicos, atribua valores na coluna "Variação do ambiente" e adicione os usuários correspondentes a cada grupo.
- Grupo "EXVW_TOTAL": Atribua todos os usuários que poderão visualizar todos os dados.
- Grupo "EXVW_UN001": Atribua os usuários que terão acesso apenas aos dados da UN 001.
- Grupo "EXVW_UN002": Atribua os usuários que poderão visualizar somente os dados da UN 002.
- Criação dos grupos de usuários: Crie grupos específicos, atribua valores na coluna "Variação do ambiente" e adicione os usuários correspondentes a cada grupo.
- Configuração no magic.ini e adendos para CIGAM desktop e Broker: No arquivo, informe o nome lógico da seguinte forma:
[MAGIC_LOGICAL_NAMES] GEEMPRESA = %CGVARIACAOAMBIENTE%_GEEMPRES
- Para aplicar em outras tabelas, siga conforme o exemplo:
[MAGIC_LOGICAL_NAMES] FAPEDIDO = %CGVARIACAOAMBIENTE%_FAPEDIDO GEACOMP = %CGVARIACAOAMBIENTE%_GEACOMP VECONTATO = %CGVARIACAOAMBIENTE%_VECONTAT
- Criação das views no banco de dados: Após realizar as configurações anteriores, será necessário criar as views[1] no banco de dados para garantir que as restrições de acesso sejam aplicadas corretamente.
- CREATE VIEW EXVW_TOTAL_GEEMPRES as
- select * from GEEMPRES
- CREATE VIEW EXVW_UN001_GEEMPRES as
- select * from GEEMPRES
- where cd_unidade_de_n='001' or
- exists (select * from GEUNIDNE UN where UN.Cd_Empresa=GEEMPRES.CD_EMPRESA)
- CREATE VIEW EXVW_UN002_GEEMPRES as
- select * from GEEMPRES
- where cd_unidade_de_n='002' or
- exists (select * from GEUNIDNE UN where UN.Cd_Empresa=GEEMPRES.CD_EMPRESA)
- Os objetos de banco ficarão organizados da seguinte forma:
- EXVW_TOTAL_GEEMPRES
- EXVW_UN001_GEEMPRES
- EXVW_UN002_GEEMPRES
- Os objetos de banco ficarão organizados da seguinte forma:
- Importante:
- 1 - Limite do campo: O campo "Variação do ambiente" permite a inserção de até 20 caracteres. O valor inserido é combinado com o nome da tabela para compor a identificação final.
- 2 - Vinculação a Grupos: O usuário pode estar associado a apenas um grupo que contenha a variação do ambiente. Se o usuário for adicionado a outro grupo com variação, o CIGAM exibirá a seguinte mensagem: CGM-5270, informando que a ação não é permitida para o grupo ao qual o usuário está posicionado.
- 3 - Cadastro de Usuários: Ao cadastrar um novo usuário ou não incluir um usuário existente em um grupo com variação do ambiente, o CIGAM exibirá a mensagem CGM-7172 quando esse usuário fizer login. Essa mensagem indica que o usuário não está vinculado a um grupo com variação de ambiente e alerta que algumas operações poderão apresentar inconsistências.
- Ao utilizar a variação no cadastro de Grupos de Usuários, é imperativo que os usuários sem vínculo a um grupo ou aqueles que têm vínculo, mas não possuem variação no grupo, não consigam acessar os registros. Isso se deve ao requisito essencial de ter um grupo com variação para identificar a tradução do nome lógico nas tabelas definidas no Magic.ini, Adendos ou Web.config. Esses grupos com variação devem ser configurados para corresponder aos tipos específicos de acesso aos dados, mantendo a tradução como o nome inicial da view, utilizando um underline como separador, seguido pela tradução da tabela (%VARIACAOAMBIENTE%_TABELA).
Restringindo apenas para um grupo de usuários
Para aplicar a variação de ambiente conforme o exemplo anterior, mas exclusivamente para um grupo específico de usuários, garantindo que os demais tenham acesso total ao CIGAM, você pode adicionar o nome lógico no arquivo magic.ini, sem o caractere de segurança '_'. A estrutura para compor a tradução dos nomes lógicos deve ser: %CGVARIACAOAMBIENTE%TABELA.
Essa configuração assegura que a restrição de dados se aplique apenas aos usuários do grupo designado. No entanto, não recomendamos essa abordagem, pois requer atenção redobrada ao adicionar novos usuários. É fundamental lembrar de incluí-los no grupo da variação; caso contrário, esses novos usuários terão acesso irrestrito a todos os dados.
- Exemplo de variação de ambiente:
- Suponha que você deseje que apenas um grupo de usuários do CIGAM, ao abrir o cadastro de empresa, visualize somente os dados da UN 001 (como Pedidos, Cadastro de Empresa etc.). Os demais usuários deverão ter permissão para acessar todos os dados. Para implementar essa configuração, siga os passos abaixo:
- Criação dos grupos de usuários: Crie um grupo específico, atribua valor na coluna "Variação do ambiente" e adicione os usuários correspondentes ao grupo.
- Grupo "EXVW_UN001": Inclua os usuários que terão acesso restrito apenas aos dados da UN 001.
- Criação dos grupos de usuários: Crie um grupo específico, atribua valor na coluna "Variação do ambiente" e adicione os usuários correspondentes ao grupo.
- Configuração no magic.ini e adendos para CIGAM desktop e Broker: No arquivo, informe o nome lógico da seguinte forma:
[MAGIC_LOGICAL_NAMES] GEEMPRESA = %CGVARIACAOAMBIENTE%GEEMPRES
- Criação da view no banco de dados: Após realizar as configurações anteriores, será necessário criar a view[1] no banco de dados para garantir que a restrição de acesso seja aplicada corretamente.
- CREATE VIEW EXVW_UN001_GEEMPRES as
- select * from GEEMPRES
- where cd_unidade_de_n='001' or
- exists (select * from GEUNIDNE UN where UN.Cd_Empresa=GEEMPRES.CD_EMPRESA)
- O objeto de banco ficará organizado da seguinte forma:
- EXVW_UN001_GEEMPRES
- O objeto de banco ficará organizado da seguinte forma:
- Assim, todos os usuários que não estiverem no grupo com variação de ambiente terão acesso total aos dados.
Parametrização no arquivo web.config dos Portais
Cada portal possui um arquivo web.config distintos em sua instalação (por exemplo, portalcrm\Web.config). Para utilizar a variação de ambiente no Portal, é necessário incluir nesse arquivo o respectivo nome lógico da tabela, juntamente com sua tradução que incorpora a variação.
Exemplo de aplicação no web.config:
<add key="NL_FAPEDIDO" value="%CGVARIACAOAMBIENTE%_FAPEDIDO"/>
<add key="NL_GEEMPRESA" value="%CGVARIACAOAMBIENTE%_GEEMPRES"/>
<add key="NL_GEACOMP" value="%CGVARIACAOAMBIENTE%_GEACOMP"/>
<add key="NL_VECONTATO" value="%CGVARIACAOAMBIENTE%_VECONTAT"/>
<add key="NL_GFLANCAMENTO" value="%CGVARIACAOAMBIENTE%_GFLANCAM"/>
<add key="NL_GERELUSUARIO" value="%CGVARIACAOAMBIENTE%_GERELUSU"/>
Parametrização no arquivo settings.config dos Portais
Para identificar as parametrizações e restrições, é necessário informar o nome lógico %CGVARIACAOAMBIENTE% dentro do arquivo settings.config. Isso se aplica às restrições de visões nos Portais CIGAM no IIS, e deve ser colocado no início das traduções das tabelas já existentes, respeitando o que está indicado no campo "Variação do ambiente".
Como aplicar restrições de visualização sem a variação do ambiente no Grupo de usuários no CIGAM desktop?
Para se ter uma restrição de visualização sem possuir o campo ‘Variação do ambiente’ no grupo, é necessário que no magic.ini, na tradução dos nomes lógicos se tenha ao invés da tradução padrão criada via Assistente de atualização a nomenclatura do objeto de banco com as restrições criadas.
[MAGIC_LOGICAL_NAMES] GEEMPRESA = EXVW_UN001_GEEMPRES
Como utilizar restrição para visualização/criação de dados no Portais CIGAM, com validações de registros duplicados?
Quando parametrizamos as restrições de visualização/criação de dados, alguns pontos de informações devem ser considerados, pois a validação é conforme acesso do usuário, validando somente os registros dentro dessas parametrizações indicadas na variação do ambiente. Para ter a possibilidade da validação dos registros independentemente das restrições, é necessário ter uma parametrização intermediária, para tal comunicação. Para isso devemos parametrizar na instalação do GigaSpace, no arquivo projectsStartup.xml na linha do CMDLineArgs o adendo com os nomes lógicos padrões criados via Assistente de atualização.
Importante: Para a implementação da variação do ambiente CIGAM, onde se faça necessário o acesso total para verificações, consultas e até mesmo cadastros em um ambiente com restrição, como por exemplo verificar a existência de uma empresa com CNPJ repetido, ou controles de entradas e saídas de estoque, tal implementação pode resultar em inconsistência de dados ou duplicidade de registros, portanto sua implementação é mais indicada para ambientes onde a camada de apresentação é distinta da camada de processamento.
Exemplo: Portais CIGAM
Como utilizar o assistente de atualização com variação diferente da estrutura indicada?
Para que seja possível utilizar o assistente de atualização, é necessário criar um adendo que aponte para a aplicação de atualização. Esse adendo deve ser configurado de modo que não inclua a variação das tabelas parametrizadas por visões (views).
- Exemplo:
DE Magic.ini | PARA adendo.ini |
---|---|
[MAGIC_LOGICAL_NAMES] FAPEDIDO = %CGVARIACAOAMBIENTE%FAPEDIDO OU FAPEDIDO = FAPEDIDO_%CGVARIACAOAMBIENTE% OU FAPEDIDO = FAPEDIDO%CGVARIACAOAMBIENTE% OU FAPEDIDO = VW_FAPEDIDO OU FAPEDIDO = FAPEDIDO_VW |
/[MAGIC_LOGICAL_NAMES] FAPEDIDO = FAPEDIDO |
- Para saber mais sobre a criação de adendos acessar: Como Fazer - Adendo.
Como utilizar a variação de ambiente para ocultar dados sensíveis (LGPD)?
Na parametrização do grupo de direitos, é essencial preencher o campo “Variação do ambiente” com uma nomenclatura que identifique essa variação. Essa nomenclatura deve corresponder à utilizada em determinados objetos do banco de dados que serão empregados nas restrições. A estrutura recomendada para compor a tradução dos nomes lógicos é: %CGVARIACAOAMBIENTE%_TABELA.
- Exemplo de variação de ambiente:
- Desejo ocultar determinados campos no cadastro de empresa (cadastro de material, pedido, cadastro de fornecedor, etc...). Para implementar essa configuração, seguiremos os exemplos a seguir:
- Criação dos grupos de usuários: Crie grupos específicos, atribua valores na coluna "Variação do ambiente" e adicione os usuários correspondentes a cada grupo.
- Grupo "EXVW_LGPD": Atribua os usuários que não poderão visualizar os dados sensíveis.
- Criação dos grupos de usuários: Crie grupos específicos, atribua valores na coluna "Variação do ambiente" e adicione os usuários correspondentes a cada grupo.
- Configuração no magic.ini e adendos para CIGAM desktop e Broker: No arquivo, informe o nome lógico da seguinte forma:
[MAGIC_LOGICAL_NAMES] GEEMPRESA = %CGVARIACAOAMBIENTE%_GEEMPRES
- Para aplicar em outras tabelas, siga conforme o exemplo:
[MAGIC_LOGICAL_NAMES] FAPEDIDO = %CGVARIACAOAMBIENTE%_FAPEDIDO GEACOMP = %CGVARIACAOAMBIENTE%_GEACOMP VECONTATO = %CGVARIACAOAMBIENTE%_VECONTAT
- Criação das views no banco de dados: Após realizar as configurações anteriores, será necessário criar as views[1] no banco de dados para garantir que as restrições de acesso sejam aplicadas corretamente.
- CREATE VIEW EXVW_LGPD_GEEMPRES as
- select Cd_empresa
- ,Nome_completo
- ,Contato
- ,'*' Fone
- ,'*' Fax_fone
- ,'**' Endereco
- ,'**' Bairro
- ,'**' Municipio
- ,'**' Uf
- ,0000000 Cep
- ,' ' CNPJ_CPF
- ,Inscricao
- ,Conceito
- ,Divisao
- ,Dt_aniversario
- ,Dt_ultimo_movim
- ,Dt_cadastro
- ,Cd_indicacao
- ,Cd_representant
- ,Pe_comis_baixa
- ,Cd_contabil_cli
- ,Cd_responsavel
- ,Fantasia
- ,Pessoa
- ,Cd_contabil_for
- ,Cd_condicao_pag
- ,Cd_tipo_de_paga
- ,Cd_tipo_operaca
- ,Inscrito
- ,Irrf_acumulado
- ,Tipo_de_empresa
- ,Atividade
- ,Funcionarios
- ,Faturamento
- ,Limite_de_credi
- ,Cd_mercado
- ,Usuario_modific
- ,Envia_cobranca
- ,Pr_tabela_de
- ,Agenda_interna
- ,Cd_pais
- ,Cd_centralizado
- ,Atraso_medio
- ,'*' Numero
- ,Complemento
- ,Inscricao_munic
- ,Suframa
- ,Tipo_frete
- ,Pe_comis_emissa
- ,Pe_desconto_1
- ,Pe_desconto_2
- ,Pe_juros_padrao
- ,Dt_ultima_atual
- ,Cd_unidade_de_n
- ,Cd_portador_pad
- ,Ativo
- ,Sessao
- ,Cd_ctb_adi_cli
- ,Cd_ctb_adi_for
- ,Cd_centro_armaz
- ,Cd_indice_credi
- ,Usuario_criacao
- ,Dt_modificacao
- ,Cd_regiao_entre
- ,Dt_validade_cre
- ,Cd_setor
- ,Campo67
- ,Campo68
- ,Campo69
- ,Campo70
- ,Campo71
- ,Campo72
- ,Campo73
- ,Campo74
- ,Campo75
- ,Campo76
- ,Campo77
- ,Campo78
- ,Campo79
- ,Campo80
- ,Campo81
- ,Campo82
- ,Campo83
- ,Campo84
- ,Campo85
- ,Campo86
- ,Campo87
- ,Campo88
- ,Campo89
- ,Campo90
- ,Campo1
- ,Campo92
- ,Campo93
- ,Campo94
- ,Usrempr1
- ,Usrempr2
- ,Usrempr3
- ,Usrempr4
- ,Usrempr5
- ,Conta_entrada
- ,Conta_saida
- from GEEMPRES
- O objeto de banco ficará organizado da seguinte forma:
- EXVW_LGPD_GEEMPRES
- O objeto de banco ficará organizado da seguinte forma:
Versão 191104
- ↑ Liberado a partir da OS 578202/3.