BasicAuth am Zope Server

Django, Flask, Bottle, WSGI, CGI…
Antworten
shuu
User
Beiträge: 2
Registriert: Donnerstag 21. Dezember 2006, 15:34

Ich möchte mich über ein Python Script auf einen gesperrten Bereich auf einem Zope Server einloggen. Bzw ich versuche es. Ich möchte später in diesem Bereich Http POST anfragen an Zope Scripte usw senden.

Dazu benutze momentan den HTTPBasicAuthHandler() der urllib2 (vom ablauf ähnlich wie hier: http://aspn.activestate.com/ASPN/Cookbo ... ipe/267197 )

1. Rein vom Prinzip habe ich das Beispiel auf activestate.com (link oben) verstanden.

2. Meine Login Daten sind korrekt, da ich den gesperrten Bereich im Browser sehen kann nachdem ich Username und Password eingegeben habe ("This is the test Document in the Zope Folder.").

3. Mehr als realm, url bzw. domain, username, password brauche ich nicht so wie ich es sehe.

Code: Alles auswählen

        
handler = urllib2.HTTPBasicAuthHandler()
        handler.add_password(realm, domain, webuser, webpass)
        
        opener = urllib2.build_opener(handler)
        urllib2.install_opener(opener)
        
        try:
            urllib2.urlopen(url)
        except urllib2.HTTPError, e:
            if e.code == 401:
                print 'not authorized'
            elif e.code == 404:
                print 'not found'
            elif e.code == 503:
                print 'service unavailable'
            else:
                print 'unknown error: '
        else:
            print 'success'
Ich bekomme allerdings immer eine 401 Antwort. Es müsste im Grunde funktionieren da Zope eine Basic Authentification verlangt. Nach meinem Wissenstand :oops: Ich bin ziemlicher Zope Neuling und hab sicher irgendwas übersehen. Kann mir jemand eventuell weiterhelfen?

Ich bin über jede Hilfe dankbar

mfg shuu
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

shuu hat geschrieben:Ich möchte mich über ein Python Script auf einen gesperrten Bereich auf einem Zope Server einloggen.
Hi shuu!

Willkommen im Python-Forum!

Damit funktionierts: http://www.python-forum.de/topic-3157.html

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
shuu
User
Beiträge: 2
Registriert: Donnerstag 21. Dezember 2006, 15:34

Vielen dank gerold

Daran hat es tatsächlich gelegen. Ich hätte mir vorher vielleicht ein tieferes HTTP-Header Wissen aneignen sollen :oops:
Es macht natürlich mehr Sinn den ganzen Auth kram schon im Header zu übertragen. Auf diese Methode bin ich nicht gekommen.

Gruss SHuu
Antworten