Sitter på toppen av zope.pluggableauth pakken, utvider dolmen.authentication app det å legge gjenbrukkomponentbeskrivelser og implementeringer.
Oversikt
dolmen.authentication gir grensesnitt og komponenter:
>>> Import dolmen.authentication
>>> Fra dolmen.authentication import IAuthenticationInterfaces
>>> Fra dolmen.authentication import IAuthenticationEvents
>>> Fra dolmen.authentication import IAuthenticationAPI
>>> IAuthenticationAPI.isOrExtends (IAuthenticationInterfaces)
Sann
>>> IAuthenticationAPI.isOrExtends (IAuthenticationEvents)
Sann
>>> Fra zope.interface.verify import verifyObject
>>> VerifyObject (IAuthenticationAPI, dolmen.authentication)
Sann
Beskrivende grensesnitt
dolmen.authentication gir et sett av base grensesnitt som kan brukes til å normalisere et autentiseringssystem:
>>> Utskrifts IAuthenticationInterfaces .__ doc__
Dette grensesnittet beskriver og eksponerer menings grensesnitt
av autentiseringsmodulen.
>>> interfaceDescription (IAuthenticationInterfaces)
IPrincipalFolder: En container spesialisert seg på lagring av prinsipielle uttalelser.
IAccountStatus: Abstraction komponent tillater å sjekke status på en rektor.
IPrincipal: En rektor representasjon, direkte arve fra zope.security IPrincipal, men omdefinerer flere felt for en brukervennlig måte displayet.
IGroup: En logisk gruppering av oppdragsgivere. Denne komponenten er et IPrincipal seg selv.
IPasswordProtected: Dette grensesnittet definerer enhver komponent beskyttet av et passord
IPasswordChecker: Abstraction komponent ansvaret for å løse en principal'scredentials.
>>> IAuthenticationInterfaces.providedBy (dolmen.authentication.interfaces)
Sann
>>> VerifyObject (IAuthenticationInterfaces, dolmen.authentication.interfaces)
Sann
Arrangementer grensesnitt og implementeringer
dolmen.authentication gir et sett av grunnleggende hendelser som kan brukes og falt, for å håndtere og spore oppdragsgivernes livssykluser:
>>> Utskrifts IAuthenticationEvents .__ doc__
Dette grensesnittet beskriver og eksponerer meningsfulle hendelser
beskrivelser og komponenter til godkjenningsmodulen.
>>> interfaceDescription (IAuthenticationEvents)
IUserLoggedOutEvent: IObjectEvent utvide hendelse: en bruker har logget ut.
IUserLoggedInEvent: IObjectEvent utvide hendelse: en bruker har logget inn.
UserLogoutEvent: En IUserLoggedOutEvent gjennomføring.
UserLoginEvent: En IUserLoggedInEvent gjennomføring.
>>> IAuthenticationEvents.providedBy (dolmen.authentication.events)
Sann
>>> VerifyObject (IAuthenticationEvents, dolmen.authentication.events)
Sann
Principal relaterte komponenter
Til slutt gir dolmen.authentication komponenter som kan brukes til å samvirke med zope.pluggableauth.
Locatable PrincipalInfo
Hvis rektor er faste i en container, er det locatable. Rektor representasjon (IPrincipalInfo), håndteres av zope.pluggableauth, kan ha nytte av rektor informasjon om steder.
Dette er hva LocatablePrincipalInfo komponenten inneholder:
>>> Fra zope.location import ILocation
>>> Fra dolmen.authentication import LocatablePrincipalInfo
>>> 'LocatablePrincipalInfo' i IAuthenticationAPI
Sann
>>> ILocation.implementedBy (LocatablePrincipalInfo)
Sann
Den kan brukes til å knytte en bruker til sin egen representasjon i området eller til et objekt, som en homefolder eller en preferanse ark.
Denne komponenten er registrert en adapter, for de IPrincipal komponenter. La oss lage en vedvart rektor, for å kontrollere atferd:
>>> Fra zope.interface import redskaper
>>> Klasse Bruker (objekt):
... redskaper (dolmen.authentication.IPrincipal)
...
... Def __init __ (selv, id, tittel):
... Self.id = id
... Self.title = tittel
... Self.description = u "En testbruker"
... self.groups = []
>>> Mydatabase = Bruker ('Manfred', u "En fin mammut")
>>> VerifyObject (dolmen.authentication.IPrincipal, gammelbruker)
Sann
Foreløpig er mydatabase ikke gi ILocation. Tilpasse det vil fungere, men plasseringen informasjonen vil være unexistant:
>>> Fra zope.pluggableauth.interfaces importere IPrincipalInfo
>>> Adapter = IPrincipalInfo (mydatabase)
>>> Adapter
>>> IPrincipalInfo.providedBy (adapter)
Sann
>>> Print adapter .__ name__
None
>>> Print adapter .__ parent__
None
Nå, hvis vi gjør rektor en gyldig ILocation, kan vi utnytte resultatene:
>>> Fra zope.interface import alsoProvides
>>> Klasse MyParent (objekt):
... Pass
>>> Mydatabase .__ name__ = u "Manfred mammuten"
>>> Mydatabase .__ parent__ = MyParent ()
>>> AlsoProvides (mydatabase, ILocation)
>>> Adapter = IPrincipalInfo (mydatabase)
>>> Print adapter .__ name__
Manfred mammuten
>>> Print adapter .__ parent__
Nå kan rektor info løses inn en URL og brukes som en praktisk fremstilling av te rektor
Hva er nytt i denne utgaven:.
< ul>
Krav :
- Python
Kommentarer ikke funnet