class twisted.words.protocols.jabber.sasl.SASLInitiatingInitializer(xmlstream.BaseFeatureInitiatingInitializer): (source)
Stream initializer that performs SASL authentication.
The supported mechanisms by this initializer are DIGEST-MD5
, PLAIN
and ANONYMOUS
. The ANONYMOUS
SASL mechanism is used when the JID, set on the authenticator, does not have a localpart (username), requesting an anonymous session where the username is generated by the server. Otherwise, DIGEST-MD5
and PLAIN
are attempted, in that order.
Class Variable | feature | Undocumented |
Method | setMechanism | Select and setup authentication mechanism. |
Instance Variable | mechanism | Undocumented |
Method | start | Start SASL authentication exchange. |
Method | sendAuth | Initiate authentication protocol exchange. |
Method | sendResponse | Send response to a challenge. |
Method | onChallenge | Parse challenge and send response from the mechanism. |
Method | onSuccess | Clean up observers, reset the XML stream and send a new header. |
Method | onFailure | Clean up observers, parse the failure and errback the deferred. |
Instance Variable | _deferred | Undocumented |
Inherited from BaseFeatureInitiatingInitializer:
Instance Variable | required | whether the stream feature is required to be advertized by the receiving entity. |
Method | __init__ | Undocumented |
Instance Variable | xmlstream | The associated XML stream |
Method | initialize | Initiate the initialization. |
Select and setup authentication mechanism.
Uses the authenticator's jid
and password
attribute for the authentication credentials. If no supported SASL mechanisms are advertized by the receiving party, a failing deferred is returned with a SASLNoAcceptableMechanism
exception.
Initiate authentication protocol exchange.
If an initial client response is given in data
, it will be sent along.
Parameters | data | initial client response. (type: str or None .) |
Send response to a challenge.
Parameters | data | client response. (type: bytes .) |
Parse challenge and send response from the mechanism.
Parameters | element | the challenge protocol element. (type: domish.Element .) |
Clean up observers, reset the XML stream and send a new header.
Parameters | success | the success protocol element. For now unused, but could hold additional data. (type: domish.Element ) |
Clean up observers, parse the failure and errback the deferred.
Parameters | failure | the failure protocol element. Holds details on the error condition. (type: domish.Element ) |