[Python-de] User Folder für Zope (war: Re: telnetlib)

Sven Kirmess sven.kirmess at gmx.net
Thu Sep 16 01:33:07 EDT 1999


Wednesday, September 15, 1999, 10:38:10 AM, M.-A., wrote:

>> >         import pwd
>> >         pwd.getpwnam(name)
>> Das geht nur, wenn nicht das Shadow PW System aktiviert ist... ist es
>> aber (und der Sinn von /etc/shadow ist, dass nicht jeder das
>> verschlüsselte pw lesen kann, um brute Force zu erschweren...
> Kommt 'drauf an was Du nun wirklich vor hast ;-) Falls es
> nur darum geht herauszufinden, ob es einen Account unter dem
> angegebenen Namen gibt, ist der obige Ansatz vollkommen ausreichend.

Korrekt. Ich will aber auch das pw vergleichen.

> Willst Du allerdings Accountnamen *und* Paßwort prüfen, dann
> fährst Du natürlich mit POP3 besser, es sei denn das Skript
> läuft unter root: dann kannst Du natürlich einfach /etc/shadow
> parsen und die Überprüfung des Paßworts mittels dem Modul
> crypt vornehmen.

Nein, auf dieser Maschine habe ich keine Root-Rechte, deshalb der
Umweg.
 


Wednesday, September 15, 1999, 3:17:20 PM, Juerg, wrote:


>>> Ich hab noch eine kleine Frage. Kennt ihr euch auch mit Zope aus?
> welche Frage hast Du dazu? Ich habe gerade etwas praktische
> Erfahrung damit gesammelt, bzw. eine WWW-site damit gemacht,
> fuer den Einsatz in einer Beratungsstelle. Wenn's zu
> programmierspezifisch waere, muesste ich allerdings passen.

Es wird programmierspezifisch... Vielleicht hat ja zufällig jemand
damit Erfahrung...

Ich möchte einen "User Folder" erstellen, der genau wie der normale
funktioniert, mit der Ausnahme, dass das Passwort nicht gegen das
gespeicherte sondern gegen pop3 gerpüft wird. Grundsätzlich sollte ich
ja nur die folgende Methode ersetzen müssen... praktisch klappt es
aber einfach nicht... Ich hab nur gedacht, falls jemand von euch schon
an so einem ähnlichen Projekt gearbeitet hat, könnte er mir einen Tip
geben... ansonsten schau ich mal weiter... :-)

----------------------------------------------------------------
 def authenticate(self, password, request):
            """authenticate"""
            pop=poplib.POP3('localhost')
            pop.user(self.name)
            try:
                pop.pass_(password)
            except poplib.error_proto:
                        result=(2==1)
                        return result
            else:
                    # domains=self.getDomains()
                        result=(1==1)
            if domains:
                return result and domainSpecMatch(domains, request)
            return result
----------------------------------------------------------------


btw: Hat diese ML immer so wenig Traffic?



 Sven

-- 
PGP-Key-ID: 0x881BF222







More information about the Python-de mailing list