Come controllare il livello di accesso dell’utente su qualsiasi sistema

Nella nostra applicazione RCP abbiamo aggiunto un menu come comando sotto i contributi del menu. Ora che vogliamo abilitare o disabilitare questo nuovo menu a seconda dell’utente che ha effettuato l’accesso al sistema. Fondamentalmente vogliamo abilitare il menu solo per il login dell’amministratore e non per nessun altro utente.

Come può essere realizzato?

Grazie in anticipo !!

Puoi recuperare il nome dell’utente registrato come:

String user=System.getProperty("user.name"); 

È ansible recuperare i dettagli dell’utente connesso come descritto in java-forums.org :

 public static void ntSystemDetails() { com.sun.security.auth.module.NTSystem NTSystem = new com.sun.security.auth.module.NTSystem(); System.out.println(NTSystem.getName()); System.out.println(NTSystem.getDomain()); System.out.println(NTSystem.getDomainSID()); System.out.println(NTSystem.getImpersonationToken()); System.out.println(NTSystem.getPrimaryGroupID()); System.out.println(NTSystem.getUserSID()); for (String group : NTSystem.getGroupIDs()) { System.out.println("Groups " + group); } } 

Se ricevi un errore come questo:

  NTSystem is not accessible due to restriction on required library ... 

quindi, segui i seguenti passaggi come descritto in https://stackoverflow.com/a/2174607/607637

Per conoscere gli identificatori di sicurezza noti nei sistemi operativi Windows, vedere questa pagina http://support.microsoft.com/kb/243330

Quindi spero che tu abbia abbastanza suggerimenti.

Puoi provare a utilizzare il meccanismo delle attività per questo. Dai un’occhiata a questo