El sentarse en la parte superior del paquete zope.pluggableauth, la aplicación dolmen.authentication la extiende para añadir descripciones de componentes reutilizables e implementaciones.
Descripción
dolmen.authentication proporciona interfaces y componentes:
>>> Dolmen.authentication importación
>>> From IAuthenticationInterfaces importación dolmen.authentication
>>> From IAuthenticationEvents importación dolmen.authentication
>>> From dolmen.authentication IAuthenticationAPI importación
>>> IAuthenticationAPI.isOrExtends (IAuthenticationInterfaces)
Verdadero
>>> IAuthenticationAPI.isOrExtends (IAuthenticationEvents)
Verdadero
>>> From verifyObject importación zope.interface.verify
>>> VerifyObject (IAuthenticationAPI, dolmen.authentication)
Verdadero
Interfaces descriptivos
dolmen.authentication proporciona un conjunto de interfaces base que se pueden utilizar para normalizar un sistema de autenticación:
>>> Impresión IAuthenticationInterfaces .__ doc__
Esta interfaz describe y expone las interfaces significativas
del módulo de autenticación.
>>> interfaceDescription (IAuthenticationInterfaces)
IPrincipalFolder: Un contenedor especializada en el almacenamiento de las representaciones principales.
IAccountStatus: componente de abstracción que permite comprobar el estado de un director.
IPrincipal: Una representación director, heredando directamente de zope.security IPrincipal, pero redefiniendo varios campos de una pantalla de forma fácil de usar.
IGroup: Una agrupación lógica de los directores. Este componente es un sí IPrincipal.
IPasswordProtected: Esta interfaz define cualquier componente protegido por una contraseña
IPasswordChecker: Abstracción componente encargado de resolver un principal'scredentials.
>>> IAuthenticationInterfaces.providedBy (dolmen.authentication.interfaces)
Verdadero
>>> VerifyObject (IAuthenticationInterfaces, dolmen.authentication.interfaces)
Verdadero
Eventos de interfaces e implementaciones
dolmen.authentication proporciona un conjunto de acontecimientos básicos que se pueden utilizar y declinaron, con el fin de manejar y rastrear ciclos de vida de los directores:
>>> Impresión IAuthenticationEvents .__ doc__
Esta interfaz describe y expone los eventos significativos
descripciones y componentes del módulo de autenticación.
>>> interfaceDescription (IAuthenticationEvents)
IUserLoggedOutEvent: IObjectEvent evento se extiende: un usuario ha cerrado la sesión.
IUserLoggedInEvent: IObjectEvent evento se extiende: un usuario ha iniciado sesión.
UserLogoutEvent: Una implementación IUserLoggedOutEvent.
UserLoginEvent: Una implementación IUserLoggedInEvent.
>>> IAuthenticationEvents.providedBy (dolmen.authentication.events)
Verdadero
>>> VerifyObject (IAuthenticationEvents, dolmen.authentication.events)
Verdadero
Componentes Relacionado Principales
Finalmente, dolmen.authentication proporciona componentes que se pueden utilizar para interactuar con zope.pluggableauth.
Localizable PrincipalInfo
Si el director se conserva en un recipiente, es localizable. La representación director (IPrincipalInfo), manejado por zope.pluggableauth, podría beneficiarse de la información del director ubicación.
Esto es lo que ofrece el componente LocatablePrincipalInfo:
>>> From zope.location ILocation importación
>>> From dolmen.authentication LocatablePrincipalInfo importación
>>> 'LocatablePrincipalInfo' en IAuthenticationAPI
Verdadero
>>> ILocation.implementedBy (LocatablePrincipalInfo)
Verdadero
Se puede utilizar para vincular un usuario a su propia representación en el sitio o a cualquier objeto, como un homefolder o una hoja de preferencias.
Este componente se ha registrado un adaptador, para los componentes IPrincipal. Vamos a crear un director insistió, para comprobar el comportamiento:
>>> De implementos de importación zope.interface
>>> Clase de usuario (objeto):
... implementos (dolmen.authentication.IPrincipal)
...
... Def __init __ (self, id, título):
... Self.id = id
... Self.title = título
... Self.description = u "Un usuario de prueba"
... self.groups = []
>>> MiUsuario = Usuario ("Manfred", u "Un bonito mamut")
>>> VerifyObject (dolmen.authentication.IPrincipal, miUsuario)
Verdadero
Actualmente, miUsuario no está proporcionando ILocation. Adaptándolo funcionará, pero la información de ubicación será unexistant:
>>> From zope.pluggableauth.interfaces importan IPrincipalInfo
>>> Adaptador = IPrincipalInfo (miUsuario)
>>> Adaptador
>>> IPrincipalInfo.providedBy (adaptador)
Verdadero
>>> Adaptador de impresión .__ name__
Ninguno
>>> Adaptador de impresión .__ parent__
Ninguno
Ahora, si hacemos el director una ILocation válida, podemos explotar los resultados:
>>> From alsoProvides importación zope.interface
>>> Myparent clase (objeto):
... Pasar
>>> MiUsuario .__ name__ = u "Manfred mamut"
>>> MiUsuario .__ parent__ = myparent ()
>>> AlsoProvides (miUsuario, ILocation)
>>> Adaptador = IPrincipalInfo (miUsuario)
>>> Adaptador de impresión .__ name__
Manfred mamut
>>> Adaptador de impresión .__ parent__
¿Qué hay de nuevo en esta versión:.
< ul>
Requisitos :
- Python
Comentarios que no se encuentran