zope.authentication

Software skärmdump:
zope.authentication
Mjukvaruinformation:
Version: 4.0.0
Ladda upp dagen: 20 Feb 15
Licens: Gratis
Popularitet: 5

Rating: nan/5 (Total Votes: 0)

zope.authentication ger en definition av autentiseringskoncept för användning i Zope Work.
Detaljerad dokumentation
Logga ut Support
Logga ut stöd definieras av ett enkelt gränssnitt ILogout:
& Nbsp; >>> från zope.authentication.interfaces importera ILogout
som har en enda "logout" metoden.
Den nuvarande användningen av ILogout är att anpassa en IAuthentication komponent till ILogout att illustrera, skapar vi en enkel utloggning genomförande som anpassar IAuthentication:
& Nbsp; >>>adapter (IAuthentication)
& Nbsp; ...implementer (ILogout)
& Nbsp; ... klass SimpleLogout (objekt):
& Nbsp; ...
& Nbsp; ... def __init __ (self, auth):
& Nbsp; ... pass
& Nbsp; ...
& Nbsp; ... def logga (själv, begäran):
& Nbsp; ... print "Användaren har loggat ut"
& Nbsp; >>> provideAdapter (SimpleLogout)
och något att representera en autentiserings verktyg:
& Nbsp; >>>implementer (IAuthentication)
& Nbsp; ... klass Authentication (objekt):
& Nbsp; ... pass
& Nbsp; >>> auth = Autentisering ()
För att utföra en utloggning, vi anpassar auth till ILogout och kallar "logout":
& Nbsp; >>> utloggning = ILogout (auth)
& Nbsp; >>> logout.logout (TestRequest ())
& Nbsp; Användaren har loggat ut
Den "NoLogout 'Adapter
Klassen:
& Nbsp; >>> från zope.authentication.logout import NoLogout
kan registreras som ett reserv leverantör av ILogout för IAuthentication komponenter som inte annars anpassas till ILogout. NoLogout s utloggning metod är en no-op:
& Nbsp; >>> NoLogout (auth) .logout (TestRequest ())
Logga ut användargränssnitt
Eftersom vissa autentiseringsprotokoll inte formellt stöder utloggning, kan det inte vara möjligt för en användare att logga ut när han eller hon har loggat in. I sådana fall skulle det vara olämpligt att lägga fram ett användargränssnitt för att logga ut.
Eftersom utloggning support är site-konfigurerbar, ger Zope en adapter som när registrerade, visar att platsen är konfigurerad för utloggning:
& Nbsp; >>> från zope.authentication.logout import LogoutSupported
Denna klass tjänar endast som en flagga som det genomför ILogoutSupported:
& Nbsp; >>> från zope.authentication.interfaces importera ILogoutSupported
& Nbsp; >>> ILogoutSupported.implementedBy (LogoutSupported)
& Nbsp; Sann
& Nbsp; >>> begäran = objekt ()
& Nbsp; >>> ILogoutSupported.providedBy (LogoutSupported (begäran))
& Nbsp; Sann
Huvudsakliga villkor
Huvudsakliga villkor används för att stödja gränssnitt webbläsare för sökning huvudsakliga källor. De ger tillgång till polletter och titlar för värden. Den huvudsakliga termer vyn använder en autentiserings verktyg för att få huvudtitlar. Låt oss skapa en autentiserings verktyg för att visa hur det fungerar:
& Nbsp; >>> klass Principal:
& Nbsp; ... def __init __ (self, id, titel):
& Nbsp; ... self.id, self.title = id, titel
& Nbsp; >>> från zope.interface importgenomförare
& Nbsp; >>> från zope.authentication.interfaces importera IAuthentication
& Nbsp; >>> från zope.authentication.interfaces importera PrincipalLookupError
& Nbsp; >>>implementer (IAuthentication)
& Nbsp; ... klass AuthUtility:
& Nbsp; ... uppgifter = {'jim': 'Jim Fulton', 'stephan': 'Stephan Richter'}
& Nbsp; ...
& Nbsp; ... def getPrincipal (själv, id):
& Nbsp; ... title = self.data.get (id)
& Nbsp; ... om titeln inte är Ingen:
& Nbsp; ... retur Principal (id, titel)
& Nbsp; ... höja PrincipalLookupError
Nu måste vi installera verifieringsverktyget:
& Nbsp; >>> från zope.component import provideUtility
& Nbsp; >>> provideUtility (AuthUtility (), IAuthentication)
Vi behöver en huvudkälla, så att vi kan skapa en vy från den.
& Nbsp; >>> från zope.component import getUtility
& Nbsp; >>> klass PrincipalSource:
& Nbsp; ... def __contains __ (self, id):
& Nbsp; ... auth = getUtility (IAuthentication)
& Nbsp; ... prova:
& Nbsp; ... auth.getPrincipal (id)
& Nbsp; ... förutom PrincipalLookupError:
& Nbsp; ... return false
& Nbsp; ... annars:
& Nbsp; ... return true
Nu kan vi skapa en villkor vy:
& Nbsp; >>> från zope.authentication.principal import PrincipalTerms
& Nbsp; >>> termer = PrincipalTerms (PrincipalSource (), None)
Nu kan vi fråga villkoren visa för termer:
& Nbsp; >>> term = terms.getTerm ('stephan')
& Nbsp; >>> term.title
& Nbsp; 'Stephan Richter "
& Nbsp; >>> term.token
& Nbsp; 'c3RlcGhhbg__'
Om vi ​​ber om en term som inte existerar, får vi en lookup error:
& Nbsp; >>> terms.getTerm ("bob")
& Nbsp; återsöknings (senaste samtal sist):
& Nbsp; ...
& Nbsp; LookupError: bob
Om vi ​​har en token, kan vi få den huvudsakliga id för det.
& Nbsp; >>> terms.getValue ('c3RlcGhhbg__')
& Nbsp; "stephan"

Vad är nytt i den här versionen:

  • Broke olämpligt tester beroende zope.component.nextutility.
  • (Forward-kompatibilitet med zope.component 4.0.0).
  • Ersatt föråldrat zope.component.adapts användning med likvärdig zope.component.adapter dekoratör.
  • Ersatt föråldrat zope.interface.implements användning med likvärdig zope.interface.implementer dekoratör.
  • Tappat stöd för Python 2.4 och 2.5.

Krav :

  • Python

Annan programvara för utvecklare Zope Corporation and Contributors

zope.app.server
zope.app.server

11 May 15

zope.index
zope.index

14 Apr 15

zope.fanstatic
zope.fanstatic

11 May 15

zope.app.http
zope.app.http

11 May 15

Kommentarer till zope.authentication

Kommentarer hittades inte
Kommentar
Slå på bilder!