08. september 2006 - 19:28Der er
8 kommentarer og 1 løsning
Servlet til at beskytte filer mod download - parse url
Hejsa Jeg vil gerne beskytte filer i en bestemt mappe(med navnet safe) mod download. Derfor har i web.xml konfigureret det sådan at alle requests mod denne mappe forwardes til en DownloadServlet. Det virker fint.
Det er dog sådan at brugere, der er logget ind godt må downloade, hvis den fil de vil downloade ligger i en bestemt undermappe til safe. Undermappen er et navn på et hold, og brugeren skal altså være medlem af dette hold (og logget ind), hvis han skal kunne downloade filen. Prøver en bruger fx at få fat i safe/hold1/test.jpg, da skal brugeren være logget ind og medlem af hold1 for at få lov til at downloade filen. Jeg har koden til at tjekke på om en bruger er logget ind og til at undersøge om han er medlem af et hold.
Og så til spørgsmålene... I DownloadServlet er jeg vel så nød til at parse request.getRequestURI() for at finde ud af, hvad det er for en fil brugeren forsøger at få fat i. Men hvordan hiver jeg holdnavnet og stien til billedet ud, så jeg kan bruge tjekke brugeren tilhørsforhold og bagefter læse filen(bufferedinputstream) og bagefter skrive filen ud (bufferedoutputstream) ?
Er det i øvrigt en ok måde at gribe problematikken an på?
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Hej Arne Beklager jeg lige har været væk lidt tid - den stod lige på et jyllandsophold...
Jeg styrer selv sikkerheden, og kan godt tjekke om en bruger er logget ind og om han tilhører en given gruppe. Mappen kommer til at ligger et offenligt tilgængeligt sted, og derfor skal jeg fange alle request til den og derigennem tjekke om en given person har ret til at downloade fra den.
Men jeg har som sagt behov for at hive oplysninger ud af requestet - nemlig om hvilken mappe brugeren prøver at få fat i. Fx skal jeg hive "hold1" ud af denne streng: safe/hold1/test.jpg og derfor må det vel blive regex jeg skal bruge? hvis brugeren så er logget ind og tilhører gruppen "hold1", da skal filen læses og sendes til ham.
Ja, det er da vist det nemmeste! Tak for hjælpen du
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.