File security

martedì 06 luglio 2010 - 17.49

foxoscar Profilo | Newbie

Ciao a tutti,

ho qualche dubbio in merito alle impostazioni di protezione da configurare sui file che compongono una applicazione asp.net.

L'ambiente di sviluppo è il seguente:

Windows Server 2003 R2
Visual Studio 2005 Professional
Framework 2.0

Con le applicazioni asp 3.0, per limitare al massimo l'accesso ai file di un normale sito di commercio elettronico, impostavo come opzioni di protezione:

Administrators: full control
IUSR_BATTILAPESCA: lettura

Nell'ottica di integrare nella mia applicazione asp delle pagine aspx con il flag impersonate a false, come devo impostare le opzioni di protezione sui file? E' corretta la seguente configurazione?

Administrators: full control
IUSR_BATTILAPESCA: lettura
SERVIZIO DI RETE: lettura

Ho fatto delle prove e in questo modo funziona.

Per limitare maggiormente le opzioni di protezione sui file della mia applicazione, ho impostato il flag impersonate a true, in modo che l'accesso alle pagine venisse fatto con l'utente autenticato da IIS IUSR_BATTILAPESCA. A questo punto pensavo di poter togliere l'utente SERVIZIO DI RETE dalle opzioni di protezione, ma a quanto pare non è così. E' dovuto al fatto che anche se imposto il flag impersonate a true, il processo di asp.net gira comunque nell'ambito dell'utente impostato sul pool delle applicazioni SERVIZIO DI RETE?

Grazie mille in anticipo per ogni risposta.
Foxoscar

Gluck74 Profilo | Guru

purtroppo con questi nuovi server R2 e IIS7 ho perso un po' il filo anche io.....
ma ti dico che in una mia soluzione, non ho inserito "servizio di rete", ma infatti il pool utilizza un utente specifico.
Quindi, a meno che mi sfugga qualcosa, comanda il pool.

ciao

____________
Ricordati di utilizzare il tasto "Accetta" se i nostri consigli ti sono serviti a risolvere il problema.
È il modo per ringraziare chi ti ha aiutato.

foxoscar Profilo | Newbie

Quindi, a livello di file security per i file della mia applicazione:

-Administrator: full control
-Utente autenticato (nel mio caso IUSR_BATTELAPESCA): sola lettura
-Utente associato al pool delle applicazioni: sola lettura

Come impostazioni ti sembrano corrette?

Secondo te, perchè se imposto a vero il flag impersonate, che nel mio caso farebbe girare l'applicativo nel contesto dell'utente IUSR_BATTELAPESCA, devo comunque dare i diritti di lettura anche all'utente associato al pool delle applicazioni? E' corretto dire che anche se il flag impersonate è a vero, il processo di asp.net, w3wp.exe, comunque gira sempre nel contesto dell'utente associato al pool delle applicazioni?

Grazie per la tua risposta, anche per l'altro quesito sul debug che non parte!



Gluck74 Profilo | Guru

Ti riporto parte dell'articolo sul sito microsoft, per l'impostazione di IIS6.
Sinceramente non è che sia molto chiaro nella spiegazione..........
[...]
Quarta impostazione: Identity
Dallo screenshot potrebbe sembrare la maschera meno importante, in realtà è tra le opzioni più utili, perché permette di associare un utente all'application pool e quindi al worker process.
Di default è presente un nuovo utente, Network Service, con privilegi bassi, per evitare che uno script possa compiere operazioni potenzialmente dannose per il server.
Ciò che risulta interessante è lo stretto connubio che questa impostazione ha con il worker process di ASP.NET. Se non gira in emulazione IIS5 ma in ambiente nativo IIS 6 il file machine.config di ASP.NET viene totalmente ignorato per quanto riguarda la configurazione delle impostazioni che abbiamo analizzato finora. Molte di queste funzionalità, infatti, sono già utilizzabili relativamente al solo worker process ASP.NET, anche in ambiente IIS 5 nativo, ma assumono un valore nettamente più significativo se applicato all'intero web server, in quanto permettono di avere un controllo assoluto su ciò che l'applicazione sta effettuando da un punto di vista decisamente privilegiato quale è quello che il web server è in grado di garantirsi.

Dunque con questa impostazione anche ASP.NET utilizzerà l'utente specificato per l'accesso al file system ed alle risorse del sistema. Questo rappresenta una soluzione migliore dell'uso della cosiddetta impersonation, perché permette di gestire più facilmente il paradigma "un utente per sito", con relativi privilegi, alla base di un sistema di hosting basta su Windows Server System che voglia definirsi quanto meno decente.
Ovviamente bisognerà tenere a mente che una volta selezionato un utente in questa maschera, si dovrà poi provvedere a specificare in maniera corrispondente i permessi di accesso sul file system, eventualmente anche in scrittura, per i files su cui andrà lavorare, oltre che eventualmente creare un accesso a SQL Server qualora si utilizzi la trusted authentication.
[...]
L'intero articolo è http://technet.microsoft.com/it-it/library/cc678199.aspx

Inoltre ti consiglio di leggere:
http://msdn.microsoft.com/it-it/library/aa292118(VS.71).aspx
http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/f05a7c2b-36b0-4b6e-ac7c-662700081f25.mspx?mfr=true


____________
Ricordati di utilizzare il tasto "Accetta" se i nostri consigli ti sono serviti a risolvere il problema.
È il modo per ringraziare chi ti ha aiutato.

foxoscar Profilo | Newbie

Ciao Gluck,

mi stò leggendo tutta la documentazione e mi sono chiarito parecchi dubbi .

Grazie di tutto, ciao!
foxoscar
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5