View Full Version : [JAVA] Monitoraggio login
franksisca
25-02-2019, 15:04
Ciao a tutti, è possibile scrivere un software che monitora gli accessi al pc???
Ovviamente deve darmi la possibilità di loggarmi al pc, fare determinate operazioni, e poi sloggarmi.
Ciao a tutti, è possibile scrivere un software che monitora gli accessi al pc???
Ovviamente deve darmi la possibilità di loggarmi al pc, fare determinate operazioni, e poi sloggarmi.
In windows c'è già e si trova nel registro eventi.
franksisca
26-02-2019, 16:34
In windows c'è già e si trova nel registro eventi.
devo farlo interfacciandomi con un database mio.
in pratica, per una associazione (ovviamente gli utenti ne sono consci) devo monitorare chi accede e per quanto tempo. Un JFrame full screen sena "resizable" è parte della soluzione, ma ci sono tutti gli shortcut di windows da disabilitare... per questo chiedevo se qualcuno avesse maggiori info!!!
devo farlo interfacciandomi con un database mio.
in pratica, per una associazione (ovviamente gli utenti ne sono consci) devo monitorare chi accede e per quanto tempo. Un JFrame full screen sena "resizable" è parte della soluzione, ma ci sono tutti gli shortcut di windows da disabilitare... per questo chiedevo se qualcuno avesse maggiori info!!!
Si ma... io la vedrei in modo diverso.
O crei una app che si avvia come servizio quindi hai tutto il controllo che vuoi.
O nelle impostazioni pianificate di windows metti il tuo programma all'avvio e al logout dell'utente così tracci l'evento
Oppure col tuo programma apri il registro eventi di windows e importi i dati che ti interessano.
Ovviamente ricorda che tutto questo non funziona se gli utenti sono amministratori (banalmente posso cancellare il database, l'eseguibile, ecc..)
franksisca
27-02-2019, 11:56
Si ma... io la vedrei in modo diverso.
O crei una app che si avvia come servizio quindi hai tutto il controllo che vuoi.
O nelle impostazioni pianificate di windows metti il tuo programma all'avvio e al logout dell'utente così tracci l'evento
Oppure col tuo programma apri il registro eventi di windows e importi i dati che ti interessano.
Ovviamente ricorda che tutto questo non funziona se gli utenti sono amministratori (banalmente posso cancellare il database, l'eseguibile, ecc..)
diciamo che vorrei fare una applicazione che si avvia automaticamente.
Una volta ci avevo già provato, ma poi per motivi universitari (quidni 12 ani fa) abbandonai... dovevo dedicarmi agli esami.
In pratica avevo fatto una desktop app che si metteva a fullscreen e non era nel "alt-tabbabile" ne iconizzabile. Una volta loggato restava in systry.
I problemi che all'epoca mi "bloccarono" erano:
Ovviamente era killabile da task manager.
gestione di un logout automatico (all'epoca non conoscevo i crontab e i thread, quindi si ovvia facilmente)
La combinazione ctrl+esc e altre (non ricordo di preciso) comunque mi facevano prendere il controllo del pc, cosa che vorrei ovviare.
Quindi pensavo semplicemente di disabilitare tramite registro i suddetti tasti, e riabilitarli al login.
Pensi che sia una cosa fattibile?
Non capisco la necessità di dover fare tutti questi giri,.
Hai detto che vuoi monitorare gli accessi..Quello che vuoi fare puoi farlo unicamente se fai girare la tua app come servizio e gli utenti non sono amministratori, altrimenti killano senza problemi.
Io le mie idee le ho date, quello che proponi tu mi sembra illogico (con tutto il rispetto eh)
franksisca
27-02-2019, 14:38
Non capisco la necessità di dover fare tutti questi giri,.
Hai detto che vuoi monitorare gli accessi..Quello che vuoi fare puoi farlo unicamente se fai girare la tua app come servizio e gli utenti non sono amministratori, altrimenti killano senza problemi.
Io le mie idee le ho date, quello che proponi tu mi sembra illogico (con tutto il rispetto eh)
forse non mi sono spiegato, io l'app la posso tranquillamente far girare come servizio. Il problema è come renderla "bloccante" al netto dell'accesso utente.
forse non mi sono spiegato, io l'app la posso tranquillamente far girare come servizio. Il problema è come renderla "bloccante" al netto dell'accesso utente.
Non capisco cosa vuol dire "bloccante".
Se gira come servizio sei a posto, tracci tutti gli eventi che ti interessano e fine..
franksisca
27-02-2019, 15:54
Non capisco cosa vuol dire "bloccante".
Se gira come servizio sei a posto, tracci tutti gli eventi che ti interessano e fine..
Con bloccante intendo che non si possa utilizzare il pc. Devo gestire gli accessi al pc, oltre che monitorarli.
Con bloccante intendo che non si possa utilizzare il pc. Devo gestire gli accessi al pc, oltre che monitorarli.
Eh vabbè ma allora se le cose non le dici io non posso inventarmele.
Il tuo quesito era " è possibile scrivere un software che monitora gli accessi al pc???"
Quindi riformuliamo il quesito
"Buongiorno,
è possibile in Java scrivere un applicativo (Windows) che permetta l'accesso al computer previo inserimento di una login e fare in modo che non sia bypassabile in alcun modo anche perchè devo tenere traccia del logout e del login della persona e, a volte, forzarci il logout?"
E' questo che ti serve?
franksisca
27-02-2019, 17:51
Eh vabbè ma allora se le cose non le dici io non posso inventarmele.
Il tuo quesito era " è possibile scrivere un software che monitora gli accessi al pc???"
Quindi riformuliamo il quesito
"Buongiorno,
è possibile in Java scrivere un applicativo (Windows) che permetta l'accesso al computer previo inserimento di una login e fare in modo che non sia bypassabile in alcun modo anche perchè devo tenere traccia del logout e del login della persona e, a volte, forzarci il logout?"
E' questo che ti serve?
Esattamente... in effetti ero stato molto poco chiaro e preciso...
Esattamente... in effetti ero stato molto poco chiaro e preciso...
Eh già..
comunque tornando al problema e penendolo a livello "didattico"...
Io lavorerei su due livelli:
Una app fullscreen e un servizio
Il servizio verifica che la app sia in esecuzione, e se non lo è la esegue.
La app fullscreen ha al centro il form di login. Se login corretto si mette nel systray in attesa del logoff (sia che sia tramite se stessa o intercetta il logoff di windows).
Ovviamente non è una cosa banale e IMHO non è la soluzione al problema che hai, per questo ho sottolineato il "Didattico"!
franksisca
28-02-2019, 10:25
Eh già..
comunque tornando al problema e penendolo a livello "didattico"...
Io lavorerei su due livelli:
Una app fullscreen e un servizio
Il servizio verifica che la app sia in esecuzione, e se non lo è la esegue.
La app fullscreen ha al centro il form di login. Se login corretto si mette nel systray in attesa del logoff (sia che sia tramite se stessa o intercetta il logoff di windows).
Ovviamente non è una cosa banale e IMHO non è la soluzione al problema che hai, per questo ho sottolineato il "Didattico"!
ok, affrontiamo il perchè secondo te non risolve il problema? Sono molto curioso di sentire. La soluzione da te proposta è la stessa che avevo pensato io, però, per i problemi elencati, la vedo by-passabile. tu invece perchè non la vedi come soluzione?
ok, affrontiamo il perchè secondo te non risolve il problema? Sono molto curioso di sentire
Non ho detto che non risolve il problema, ma che non è la soluzione, è leggermente diverso.
Per me una soluzione più funzionale è l'uso di Active Directory che impone delle regole direttamente al sistema operativo
La soluzione da te proposta è la stessa che avevo pensato io, però, per i problemi elencati, la vedo by-passabile. tu invece perchè non la vedi come soluzione?
Mi dici dove è bypassabile? A me non sembra.
franksisca
01-03-2019, 10:57
Non ho detto che non risolve il problema, ma che non è la soluzione, è leggermente diverso.
Per me una soluzione più funzionale è l'uso di Active Directory che impone delle regole direttamente al sistema operativo
Non conoscendolo, sapresti suggerirmi qualche guida sulla manipolazione (o controllo) di Active Directory???
Mi dici dove è bypassabile? A me non sembra.
beh le shortcut di windows rimarrebbero attive, quindi alcune operazioni potrei farle comunque, oppure dovrei manipolare il registro di sistema per disattivarle, ma non so se un software java possa farlo (come servizio di amministrazione dovrebbe averne i permessi).
Non conoscendolo, sapresti suggerirmi qualche guida sulla manipolazione (o controllo) di Active Directory???
La gestione acitve directory implica un server active directory. Localmente forse puoi fare qualcosa con le policy di sicurezza locale
beh le shortcut di windows rimarrebbero attive, quindi alcune operazioni potrei farle comunque, oppure dovrei manipolare il registro di sistema per disattivarle, ma non so se un software java possa farlo (come servizio di amministrazione dovrebbe averne i permessi).
Non comprendo cosa intendi con shortcut, puoi fare un esempio preciso?
franksisca
01-03-2019, 16:53
La gestione acitve directory implica un server active directory. Localmente forse puoi fare qualcosa con le policy di sicurezza locale
ok cercherò qualcosa in merito, anche se essendo una applicazione che dovrà interfacciarsi con un webserver già esistente, non so se sia possibile da fare.
Non comprendo cosa intendi con shortcut, puoi fare un esempio preciso?
tasto windows+D che manda tutto a desktop. oppure tasto windows + R che apre la finestra di inserimento comandi. ctrl+esc che apre il menu di windows.
Se riuscissi a disabilitare/abilitare questi tasti in modo veloce, dall'interno della mia applicazione (modificando il registro?) allora forse avrei una opportunità in più per realizzare questa applicazione.
spero di essere stato chiaro
franksisca
01-03-2019, 16:55
ho appena trovato qusto thread su stackoverflow (che deve essermi sfuggito nella precedente ricerca) che potrebbe fare al caso mio
https://stackoverflow.com/questions/6744535/use-java-to-lock-a-screen
ho appena trovato qusto thread su stackoverflow (che deve essermi sfuggito nella precedente ricerca) che potrebbe fare al caso mio
https://stackoverflow.com/questions/6744535/use-java-to-lock-a-screen
C'è solo un dettaglio: come avvii la app?
Se la metti in esecuzione automatica, se non ricordo male basta tenere premuto il tasto shift quando logghi per evitare ciò..
Dovresti metterla in operazioni pianificate probabilmente...
franksisca
04-03-2019, 09:24
C'è solo un dettaglio: come avvii la app?
Se la metti in esecuzione automatica, se non ricordo male basta tenere premuto il tasto shift quando logghi per evitare ciò..
Dovresti metterla in operazioni pianificate probabilmente...
beh avevo pensato proprio a quello, ma non sapevo che dello "shift". Mettendolo come servizio automatico?
beh avevo pensato proprio a quello, ma non sapevo che dello "shift". Mettendolo come servizio automatico?
Ah beh giusto se lo lanci come servizio non c'è problema, me ne ero dimenticato.
franksisca
04-03-2019, 10:41
Ah beh giusto se lo lanci come servizio non c'è problema, me ne ero dimenticato.
grazie ;)
vBulletin® v3.6.4, Copyright ©2000-2026, Jelsoft Enterprises Ltd.