zope.authentication

Tela Software:
zope.authentication
Detalhes de Software:
Versão: 4.0.0
Data de upload: 20 Feb 15
Licença: Livre
Popularidade: 5

Rating: nan/5 (Total Votes: 0)

zope.authentication fornece uma definição de conceitos de autenticação para o uso em Zope Framework.
A documentação detalhada
Suporte Sair
Sair apoio é definido por um ILogout interface simples:
& Nbsp; >>> from zope.authentication.interfaces importar ILogout
que tem um único método 'Sair'.
O uso atual de ILogout é adaptar um componente IAuthentication para ILogout Para ilustrar, vamos criar uma implementação de logout simples que se adapta IAuthentication:
& Nbsp; >>>adapter (IAuthentication)
& Nbsp; ...implementer (ILogout)
& Nbsp; ... class SimpleLogout (objeto):
& Nbsp; ...
& Nbsp; ... def __init __ (self, auth):
& Nbsp; ... passe
& Nbsp; ...
& Nbsp; ... def sair (self, request):
& Nbsp; ... print 'usuário se desconectou'
& Nbsp; >>> provideAdapter (SimpleLogout)
e algo para representar um utilitário de autenticação:
& Nbsp; >>>implementer (IAuthentication)
& Nbsp; ... Authentication classe (objeto):
& Nbsp; ... passe
& Nbsp; >>> auth = Autenticação ()
Para executar um logout, adaptamos auth para ILogout e chamar 'Sair':
& Nbsp; >>> de logout = ILogout (auth)
& Nbsp; >>> logout.logout (TestRequest ())
& Nbsp; usuário se desconectou
O adaptador 'NoLogout'
A aula:
& Nbsp; >>> from zope.authentication.logout importação NoLogout
pode ser registrado como um provedor de fallback de ILogout para componentes IAuthentication que não são de outra maneira adaptável a ILogout. Método de logout do NoLogout é um não-op:
& Nbsp; >>> NoLogout (auth) .logout (TestRequest ())
Interface de Usuário Sair
Porque alguns protocolos de autenticação não apoiar formalmente logout, pode não ser possível para um usuário para sair uma vez que ele ou ela tenha identificado. Nesses casos, seria inapropriado para apresentar uma interface de usuário para fazer o logout.
Como o suporte de logout é local configurável, Zope fornece um adaptador que, quando registrados, indica que o site está configurado para o logout:
& Nbsp; >>> from importação zope.authentication.logout LogoutSupported
Esta classe serve apenas como uma bandeira, uma vez que implementa ILogoutSupported:
& Nbsp; >>> from zope.authentication.interfaces importar ILogoutSupported
& Nbsp; >>> ILogoutSupported.implementedBy (LogoutSupported)
& Nbsp; A verdadeira
& Nbsp; >>> pedido = objeto ()
& Nbsp; >>> ILogoutSupported.providedBy (LogoutSupported (request))
& Nbsp; A verdadeira
Termos Principais
Principais termos são usados ​​para suportar interfaces navegador para pesquisar fontes principais. Eles fornecem acesso a fichas e títulos para valores. Os principais termos vista utiliza um utilitário de autenticação para obter títulos principais. Vamos criar um utilitário de autenticação para demonstrar como isso funciona:
& Nbsp; >>> class Principal:
& Nbsp; ... def __init __ (self, id, título):
& Nbsp; ... self.id, self.title = id, título
& Nbsp; >>> from zope.interface importação implementador
& Nbsp; >>> from zope.authentication.interfaces importar IAuthentication
& Nbsp; >>> from zope.authentication.interfaces importar PrincipalLookupError
& Nbsp; >>>implementer (IAuthentication)
& Nbsp; ... class AuthUtility:
& Nbsp; ... data = {'Jim': 'Jim Fulton', 'Stephan': 'Stephan Richter'}
& Nbsp; ...
& Nbsp; ... def getPrincipal (self, id):
& Nbsp; ... title = self.data.get (id)
& Nbsp; ... que o título não é None:
& Nbsp; ... retorno Principal (id, title)
& Nbsp; ... levantar PrincipalLookupError
Agora precisamos instalar o utilitário de autenticação:
& Nbsp; >>> from zope.component provideUtility importação
& Nbsp; >>> provideUtility (AuthUtility (), IAuthentication)
Precisamos de uma fonte principal, de modo que possamos criar uma visão a partir dele.
& Nbsp; >>> from zope.component getUtility importação
& Nbsp; >>> class PrincipalSource:
& Nbsp; ... def __contains __ (self, id):
& Nbsp; ... auth = getUtility (IAuthentication)
& Nbsp; ... tente:
& Nbsp; ... auth.getPrincipal (id)
& Nbsp; ... exceto PrincipalLookupError:
& Nbsp; ... retornar False
& Nbsp; ... else:
& Nbsp; ... retornar True
Agora podemos criar uma visão termos:
& Nbsp; >>> from PrincipalTerms importação zope.authentication.principal
& Nbsp; >>> termos = PrincipalTerms (PrincipalSource (), None)
Agora podemos pedir os termos para exibir termos:
& Nbsp; >>> prazo = terms.getTerm ('Stephan')
& Nbsp; >>> term.title
& Nbsp; "Stephan Richter '
& Nbsp; >>> term.token
& Nbsp; "c3RlcGhhbg__ '
Se perguntarmos para um mandato que não existe, temos um erro de pesquisa:
& Nbsp; >>> terms.getTerm ('bob')
& Nbsp; Traceback (most recent call last):
& Nbsp; ...
& Nbsp; LookupError: bob
Se temos um token, podemos obter o principal id para ele.
& Nbsp; >>> terms.getValue ('c3RlcGhhbg__')
& Nbsp; "Stephan '

O que é novo nesta versão:

  • Quebrou inadequado testes dependência de zope.component.nextutility.
  • (Forward-compatibilidade com zope.component 4.0.0).
  • Substituído preterido uso zope.component.adapts com decorador zope.component.adapter equivalente.
  • Substituído preterido uso zope.interface.implements com decorador zope.interface.implementer equivalente.
  • retirou o suporte para Python 2.4 e 2.5.

Requisitos :

  • Python

Outro software de desenvolvedor Zope Corporation and Contributors

zope.traversing
zope.traversing

11 May 15

zope.error
zope.error

14 Apr 15

zope.location
zope.location

14 Apr 15

DocumentTemplate
DocumentTemplate

15 Apr 15

Comentário para zope.authentication

Comentários não encontrado
Adicionar comentário
Ligue imagens!