|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
[.Net]autorizzazione navigazione internet
Ciao a tutti
![]() In ufficio abbiamo il firewall (ipcop) con dans guardian installato. Tutto ciò ci permette agevolmente di navigare soltanto nei siti presenti nella white list. Fra tutti i pc, soltanto uno ha la navigazione libera di cui è responsabile una sola persona. Il pc in questione è a sua volta protetto da password. Il problema è che, come credo in molti uffici... , fare in modo che la propria password resti totalmente riservata è un problema. Capita quindi che qualcun altro, in assenza della persona responsabile, utilizzi il suo pc per navigare dove gli pare. Fino ad ora, l'unico modo con cui avevo 'aggirato' il problema era di far scattare il salvaschermo dopo due minuti di fermo (con tutte le maledizioni da parte dell'utente che appena rispondeva al telefono doveva poi reinserire la password... ) Avevo anche provato a configurare dans guardian in modo da chiedere l'autenticazione dell'utente per la navigazione, e ci sono anche riuscito.... solo che l'autenticazione deve essere abilitata per tutti quanti con la conseguenza che, già gli altri hanno la navigazione limitata, devono poi inserire nome utente e password ogni volta che aprono il browser... nzomma... ho rischiato la vita ![]() Pensavo quindi di sfruttare il .net (vb o c#) dato che ci smanetto da un bel pò e qualcosa so fare, per fare un'applicazione, un servizio o similia che mi permettesse (solo per il pc dove la navigazione è libera) di ottenere un'autorizzazione ad usare il browser. Spero che qualcuno di voi possa indirizzarmi sulla buona strada ![]() RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek ![]() |
![]() |
![]() |
![]() |
#2 | ||
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Rapido ed indolore. Anche perchè suppongo ci sia dietro qualcosa come LDAP (Active Directory?), se qualcuno conosce la password di un altro potrebbe fare danni a nome di questa persona, non è una bella cosa. Quote:
Diciamo che senza l'aiuto del firewall sei obbligato a sviluppare un addon per ogni browser installato sulle macchine in modo che all'avvio chieda le credenziali e le verifichi (Active Directory? LDAP?), ma poi se l'utente conosce la password sei già fregato. Ed infine c'è sempre Firefox Portable. Portesti farti un applicativo stile client-server, dove in maniera molto semplice il client all'avvio del browser chiede delle credenziali (diverse da quelle di accesso) e le verfica con il server (un banale webservice con un metodo e un xml dove tenere le credenziali di accesso per farla semplice). Il client potrebbe essere o un addon di IE e/o FF (non so cosa avete installato) o un programma che monitora i processi e se trova iexplore.exe o firefox.exe chiede le credenziali per l'utilizzo, se dopo 30 secondi non sono state inserite potrebbe terminare il processo del browser. Il programma però potrebbe essere sempre terminato dall'utente e i servizi non dovrebbero avere interfacce grafiche. La soluzione si fa sempre più complessa. In alternativa usare i token usb per l'accesso alle macchine, soluzione tutt'altro che economica, ma così risolvi alla radice ogni problema. |
||
![]() |
![]() |
![]() |
#3 | |||
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
Quote:
![]() le volte che ho assegnato password un pelino più complesse per l'accesso al pc, la genialata dell'utente è stata di scriverle sul post-it e attaccarla al monitor ![]() ![]() Sono sicuro che riuscirei a scoraggiare questa pratica se come pagina iniziale mettessi il loro conto corrente on line... ![]() Quote:
1) Intercettare ogni chiamata ad iexplore.exe o firefox.exe e bloccarla (magari con un servizio) 2) L'utente deve eseguire "autorizza.exe" 2a) "autorizza.exe" stoppa il servizio di cui sopra 3) Al termine, "autorizza.exe" fa ripartire il servizio. Quote:
Tant'è che sto sopperendo io a qualcosa che invece dovrebbe fare un amministratore di sistema (che dovrebbero GIUSTAMENTE pagare)... ma su questa cosa è meglio che stendiamo un velo pietoso... ![]()
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek ![]() |
|||
![]() |
![]() |
![]() |
#4 | ||
Senior Member
Iscritto dal: Mar 2005
Città: Morimondo city
Messaggi: 5491
|
Quote:
![]() Quote:
__________________
Khelidan Ultima modifica di khelidan1980 : 17-10-2009 alle 18:26. |
||
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
Ho fatto una 'bozza' di ciò che avrei in mente:
Codice:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Diagnostics; using System.ServiceProcess; using System.Text; namespace BrowserAuth { public class AuthJobs { private List<string> applicationsList; private bool isAuthenticated; public void CheckUserAuth() { applicationsList = new List<string>(); applicationsList.Add("iexplore.exe"); applicationsList.Add("firefox.exe"); foreach (string appName in applicationsList) { Process[] processArray = Process.GetProcessesByName(appName); foreach (Process p in processArray) { if (!isAuthenticated) //e sicuramente al primo avvio lo è { ProgrammaEsternoDiLogin login = new ProgrammaEsternoDiLogin(); //login chiede l'autenticazione //l'utente si logga correttamente //login dovrà settare a true isAuthenticated p.Start(); } } } } public bool IsAutenticated { get { return isAuthenticated; } set { isAuthenticated = value; } } } } Grazie mille ![]() RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek ![]() |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Può funzionare fintanto che non scoprono l'eseguibile da terminare...
Io rigirerei la condizione: Codice:
while (!IsAuthenticated) { CheckUserAuth(); Sleep(30000); } |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Apr 2006
Messaggi: 22462
|
banale controllo del se è in esecuzione il taskmanager e in tal caso lo spiana
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
Ciao a tutti
![]() Sto cercando di impostare il tutto come servizio. Direte voi "e che cambia... un utente che sa terminare un eseguibile sa terminare anche un servizio" ![]() Il che, è vero... ma solo se l'utente ha privilegi di amministratore. P.S.: se siete a conoscenza di un plugin/addon per IpCop, sarei ancora più felice ![]() RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek ![]() |
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Scordati l'utilizzo di una interfaccia grafica integrata nel servizio.
![]() |
![]() |
![]() |
![]() |
#10 | |
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
Quote:
Mi sono documentato un pò e ho capito che è un approccio totalmente sbagliato .. Sono quindi al punto di partenza ![]()
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek ![]() |
|
![]() |
![]() |
![]() |
#11 | |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Se l'utente termina il client, il servizio terminerà tutte le volte il browser allo scadere del timeout, rendendo inutile il tentativo di terminare il client ![]() |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 07:42.