134 messaggi dal 31 ottobre 2003
Ciao, ho sviluppato un web application con form authentication dove viene fatto upload e download di documenti. faccio controllare l'estensione dei documenti dal motore di aspnet per cui chi non è loggato non può puntare il link dei documenti conoscendone il percorso fisico; a me interessa anche che una volta loggati non riescano a fare questo, ma possano scaricare il documento solamente da apposito link

Grazie

JK
678 messaggi dal 12 maggio 2001
www.idioteca.it
io ho risolto gestendo il link da database.
I documenti vengono memorizzati direttamente in un db e di conseguenza non esite nessun link diretto ai file, ma tramite la logica che ho implementato, mostro e consento visione e download dei singoli documenti.
ciao
17 messaggi dal 03 aprile 2012
Basta che verifichi il referer (lo trovi sotto l'http request corrente), ed eventualmente lo blocchi con un "response end".
Puoi mettere il codice di verifica in global asax nell'evento che ti avvisa di un nuovo request.
134 messaggi dal 31 ottobre 2003
cmsaspnet.com ha scritto:
Basta che verifichi il referer (lo trovi sotto l'http request corrente), ed eventualmente lo blocchi con un "response end".
Puoi mettere il codice di verifica in global asax nell'evento che ti avvisa di un nuovo request.


E' una prova che avevo fatto, il problema è che anche quando si clicca sul link che punta ad un handler generico per il download del file, il referer me lo ritrovo vuoto !!

mi è venuto in mente che posso utilizzare Context.Request.AppRelativeCurrentExecutionFilePath che mi dice quale pagina è stata chiamata, e se l'estensione è quella di un documento (pdf, doc etc..) bloccarlo, funziona ma non è elegantissimo.
Modificato da Jk il 15 giugno 2012 14.46 -
134 messaggi dal 31 ottobre 2003
no, in effetti il referer lo posso usare, lo avevo nullo perchè invocavo l'handler attraverso window.location.href che ho cambiato in document.forms[0].submit()

Ciao

Jk
134 messaggi dal 31 ottobre 2003
giangi_77 ha scritto:
io ho risolto gestendo il link da database.
I documenti vengono memorizzati direttamente in un db e di conseguenza non esite nessun link diretto ai file, ma tramite la logica che ho implementato, mostro e consento visione e download dei singoli documenti.
ciao


la soluzione di salvare i documenti nel DB è sicuramente migliore di quella sul file system, il fatto è che tali documenti vengono inseriti attraverso internet dai nostri fornitori e devono essere accessibili anche in modalità veloce da alcuni utenti dalla nostra lan aziendale verso la dmz.

grazie

Jk
678 messaggi dal 12 maggio 2001
www.idioteca.it
se il problema è solo quello, puoi gestire un'interfaccia semplice per gli "interni" e in questo modo, se servisse, hai anche modo di controllare chi utilizza i documenti internatmente.
Devi decidere qual è l'aspetto più delicato da gestire e valutare se dare priorità a chi viene da fuori (e quindi meno controllabile) o chi accede dall'interno.
ciao
10 messaggi dal 28 aprile 2006
Contributi
Forse non ho capito bene, perché la risposta mi sembra troppo semplice. Quando fai l'upload salvi i dati nella cartella App_Data. La cartella App_Data è inaccessibile via URL.

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.