Itens de Menu x Segurança

O Módulo de segurança do SC parou de funcionar do “nada” no ambiente de desenvolvimento. Mesmo marcado a flag como “Esconder os itens de menu” os menus continuam aparecendo. Ainda não testei a nível servidor porque se não o cliente manda encomendar meu caixão.

O interessante que estava funcionando normal essa função.

Alguém ta passando pelo mesmo problema? Se não, como esta a configuração e o ambiente que esta trabalhando?

Versão: 8.0.022

O Meu esta normal feito nesta semana V8.0.22:

Os outros que foram gerados novamente que publiquei estão OK também.

Isso pode ser problema no ambiente. O seu ambiente é diferente do meu. Queria sugestões do que pode causar isso, ou seja, a APP menu mesmo marcado como “Esconder itens de menu” esta trazendo os itens. Cada item tem sua ligação com uma aplicação e cada aplicação tem sua permissão de acesso na segurança nativa do SC. Sabendo como funciona sua estrutura e sua lógica o que pode causar o seu mal funcionamento? A equipe da NM pode responder isso com autonomia.

Bom já tive um problema parecido, ao trocar de usuários os itens que ele não tinha acesso e que foram abertos antes abria para esse usuário.
Resolvi negando as permissões no onLoad:

$sql = "SELECT distinct
		app_name
	      FROM dbo.seg_apps";
	
sc_select(rs, $sql);
if ({rs} == false)
{
	sc_error_message("Erro ao selecionar todas aplicações, tente novamente");
	sc_error_exit();
}
else
{
	while (!$rs->EOF)
	{
		sc_apl_status($rs->fields[0], 'off');
		sc_apl_conf($rs->fields[0], 'access', 'off');
		sc_apl_conf($rs->fields[0], 'insert', 'off');
		sc_apl_conf($rs->fields[0], 'delete', 'off');
		sc_apl_conf($rs->fields[0], 'update', 'off');
		sc_apl_conf($rs->fields[0], 'btn_display_off', 'xls');
		sc_apl_conf($rs->fields[0], 'btn_display_off', 'word');
		sc_apl_conf($rs->fields[0], 'btn_display_off', 'pdf');
		sc_apl_conf($rs->fields[0], 'btn_display_off', 'xml');
		sc_apl_conf($rs->fields[0], 'btn_display_off', 'csv');
		sc_apl_conf($rs->fields[0], 'btn_display_off', 'rtf');
		sc_apl_conf($rs->fields[0], 'btn_display_off', 'print');
		$rs->MoveNext();	
	}
	$rs->Close();
}

onLoader de que aplicação? Menu ?

Isso não seria uma forma de “Burlar”, visto que se há a flag pra esconder os itens?
Fiquei confuso agora!

onLoad do controle (deve ser login) que abre o menu.

Rapaz, desculpa minha ignorância mas não consigo ver no código a lógica de ocultar ou não os “itens de menu”.

O que acontece no código é que independente do login, no onLoad da tela de login ele nega a acesso à todas aplicações.
Você deve ter uma tabela com o nomes das aplicações né?
No caso a minha que enviei é a seg_apps
Fiz um select com todos os nomes das aplicações (independente do acesso ou não) e neguei o acesso através do:
sc_apl_status((nomedaaplicacao), ‘off’);

Não funciona na minha onLoad. E pelo que vejo esta desabilitando o conteúdo como um todo. Como fica a segurança nesse caso? Obsoleta?

Não tive problemas com nenhum ambiente.
Manda um vídeo ou os prints para vermos o que pode ser.

Resolvido!

Para que essa função funcione 100%, a opção “Configuração” -> “Meu Scriptcase” e marcar a opção “Habilitar o uso da segurança”…
As aplicações que for ser controladas pela segurança terá que esta com a flag marcada em: “Segurança” -> e marcar a opção “Usar segurança: Sim”.

Resolvido. Obrigado pelo apoio e ajuda da equipe da NM e particularmente do Yuri.