[zorp-hu] /private csak ssl-lel, http/1.1
Balazs Scheidler
zorp-hu@lists.balabit.hu
Mon, 15 Sep 2003 12:42:52 +0200
On Sun, Sep 14, 2003 at 08:18:53PM +0200, Daniel VASARHELYI wrote:
> class VirtualHttp(HttpProxy):
> def config(self):
> HttpProxy.config(self)
> self.request["GET"] = (HTTP_REQ_POLICY, self.filterURL)
> self.request["POST"] = (HTTP_REQ_POLICY, self.filterURL)
>
> def filterURL(self, method, url, version):
> log("http.info", 3, "GET: \"%s\" \"%s\"" % (self.session.session_id, url))
> if re.search("http://[^/]+/private.*", url):
> self.error_info = "This page (/private/) is not accessible in non-secure mode."
> log("http.info", 3, "GET: private")
> return HTTP_REQ_REJECT;
> return HTTP_REQ_ACCEPT;
>
>
> class VirtualHttpS(PsslProxy):
> def config(self):
> PsslProxy.config(self)
> self.stack_proxy = VirtualHttp
>
>
> Az a bajom, hogy ennek felig-meddig ganyolas szaga van, trukkos esetben
> elofordulhat, hogy http keresnel is https van a "url" valtozoban. Van erre
> ennel jobb megoldas? Pl valami valtozo beallitasa lehetne, de a
> VirtualHttpS.stack_proxy-ja egy memoriaban valo hivatkozas (ugysejtem), hogyan
> lehetne abban az objektumban egy valtozot (client_using_ssl, pl)
> beallitani, ha a VirtualHttp felett a VirtualHttpS van es nem a
> Listener...
probald esetleg a self.request_url_file-t hasznalni, ebben nem a teljes url
van benne, hanem csak a file resz. (a proxy feldarabolja az URL-t es
publikalja a request_url_* attributumokban, ezek le vannak irva a Http proxy
docstring-jeben)
--
Bazsi
PGP info: KeyID 9AF8D0A9 Fingerprint CD27 CFB0 802C 0944 9CFD 804E C82C 8EB1