Package flumotion :: Package twisted :: Module pb :: Class Authenticator
[hide private]

Class Authenticator

source code

                extern.log.log.Loggable --+
                                          |
 twisted.spread.jelly.Jellyable --+       |
                                  |       |
twisted.spread.flavors.Serializable --+   |
                                      |   |
   twisted.spread.flavors.Referenceable --+
                                          |
                                         Authenticator

I am an object used by FPB clients to create keycards for me and respond to challenges.

I encapsulate keycard-related data, plus secrets which are used locally and not put on the keycard.

I can be serialized over PB connections to a RemoteReference and then adapted with RemoteAuthenticator to present the same interface.

Instance Methods [hide private]
 
__init__(self, **kwargs) source code
twisted.internet.defer.Deferred firing keycards.Keycard
issue(self, keycardClasses)
Issue a keycard that implements one of the given interfaces.
source code
 
issue_KeycardUACPP(self) source code
 
issue_KeycardUACPCC(self) source code
 
issue_KeycardUASPCC(self) source code
twisted.internet.defer.Deferred firing a {keycards.Keycard}
respond(self, keycard)
Respond to a challenge on the given keycard, based on the secrets we have.
source code
 
respond_KeycardUACPCC(self, keycard) source code
 
respond_KeycardUASPCC(self, keycard) source code
 
remote_issue(self, interfaces) source code
 
remote_respond(self, keycard) source code

Inherited from extern.log.log.Loggable: __providedBy__, debug, doLog, error, info, log, logFunction, logObjectName, warning, warningFailure, writeMarker

Inherited from twisted.spread.flavors.Referenceable: jellyFor, remoteMessageReceived

Inherited from twisted.spread.flavors.Serializable: processUniqueID

Inherited from twisted.spread.jelly.Jellyable: getStateFor

Class Variables [hide private]
  logCategory = 'authenticator'
Implementors can provide a category to log their messages under.
str avatarId = None
the avatarId we want to request from the PB server
str username = None
a username to log in with
str password = None
a password to log in with
str address = None
an address to log in from
  ttl = 30

Inherited from extern.log.log.Loggable: __implemented__, __provides__

Inherited from twisted.spread.flavors.Referenceable: perspective

Method Details [hide private]

issue(self, keycardClasses)

source code 

Issue a keycard that implements one of the given interfaces.

Parameters:
  • keycardClasses (list of str) - list of fully qualified keycard classes
Returns: twisted.internet.defer.Deferred firing keycards.Keycard

respond(self, keycard)

source code 

Respond to a challenge on the given keycard, based on the secrets we have.

Parameters:
Returns: twisted.internet.defer.Deferred firing a {keycards.Keycard}
a deferred firing the keycard with a response set