» »

Apache + Tomcat + (LDAP?)... avtorizacija

Apache + Tomcat + (LDAP?)... avtorizacija

betaX ::

Ojla.

Mam eno vprašanje. Zafrkavam se z eno aplikacijo, ki laufa na Tomcatu 5.5. Avtentiokacija je SSL cetrifikat (Apache 2.2).
Aplikacijo uporabljajo različni userji, zato moram (zgolj pri galeriji slik) narediti avtorizacijo - določen certifikat ne sme videti resource-ov v določenem folderju.
Zdaj pa nikjer na netu ne najdem kakšnega tutoriala, kako "zakleniti" folder slik, da ne bodo vidni za določenega uporabnika (tudi če sam vnese url v browser...). Zadevo je treba sistemsko rešit, a ne vem, kako...

Prosim za pomoč!
lp, betaX

b ::

Predvidevam, da imaš Tomcat postavljen za Apachejem, da je dosegljiv s kakšnim ProxyPass ali pa RewriteRule s [P] flagom.

Po mojem imaš dve možnosti:

1. V aplikacijo dodaš še čekiranje avtorizacije, katere imenike lahko vidi določeni uporabnik. Kateri uporabnik je na strani pa preveriš iz DN-ja certifikata.

2. Dodaš še avtentikacijo userjev z uporabniškim imenom in geslom. Tu imaš več možnosti, od htpasswd datotek do LDAP-a in še vse vmes. Nato spet na podlagi tega avtoriziraš dostop do folderjev.

Pri prvi možnosti je treba spreminjat aplikacijo, drugo pa se da morda narediti tudi preko konfiguracije Apacheja. Morda je še kakšna varianta v Tomcatu, ampak ga ne poznam dovolj dobro.


Če pa so folderji vidni v URL-ju, lahko narediš v Apachejevi konfiguraciji:

* HTTP avtentikacija (popup z uporabniškim imenom in geslom). Vir podatkov o uporabnikih je lahko htpasswd datoteka, LDAP, SQL,...
* ko uporabnik pride prek tega pa lahko za določene folderje skonfiguriraš, da jih lahko vidi samo določen uporabnik oz. uporabniki (avtorizacija). Tudi za to je več možnosti, lahko se podatki poberejo iz LDAP-a, meni je to osebno najljubše, sploh če že imaš LDAP imenik.

Poglej si Authentication and Authorization - Apache HTTP Server Version 2.2

betaX ::

>> ko uporabnik pride prek tega pa lahko za določene folderje skonfiguriraš, da jih lahko vidi samo določen uporabnik oz. uporabniki (avtorizacija). Tudi za to je več možnosti, lahko se podatki poberejo iz LDAP-a, meni je to osebno najljubše, sploh če že imaš LDAP imenik.<<

Ja, ravno to rabim, pa ne znam. Kaj konkretno moram narediti? Rad bi zadevo rešil popolnoma sistemsko (brez dodatnega programiranja).
lp, betaX

b ::

Poglej si link, ki sem ga podal zgoraj.

Na nivoju Apacheja lahko to narediš tako, da rečeš recimo (primer bo za avtentikacijo in avtorizacijo iz datotek, za LDAP boš moral predelat)

<Location /slike>
AuthUserFile xxx
AuthGroupFile xxx
Require valid-user
</Location>

<Location /slike/folder1>
Require group dostop_do_folder1
</Location>

<Locaton /slike/folder2>
Requrire group dostop_do_folder2
</Location>

in tako naprej.

Ta primer ne dela, napisal sem na hitro da dobiš občutek, kaj te čaka.

Če URL-ji aplikacije niso tako lepo narejeni, lahko morda uporabiš kakšen LocationMatch namesto Location, tako da lahko uporabiš regexe. Če tudi to ni možno, ker so URL-ji aplikacije nagravžni, potem ti preostane samo to, da sprogramiraš omejevanje dostopa preko aplikacije same.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Prijava z certifikatorm sigen-ca, custom

Oddelek: Izdelava spletišč
196464 (6100) jkreuztzfeld
»

Apache - localhost JA, IP naslov NE

Oddelek: Omrežja in internet
186596 (6455) ManDriver
»

.htpasswd

Oddelek: Izdelava spletišč
91402 (1215) pizdarija1
»

[Apache] htaccess in certifikat

Oddelek: Programska oprema
122033 (1830) MasterBlaster
»

pomoč pri spletni strani

Oddelek: Izdelava spletišč
61019 (864) AljoOo

Več podobnih tem