pyxmpp.sasl

Package pyxmpp :: Package sasl |
[show private | hide private]
[frames | no frames]

## Package pyxmpp.sasl

SASL authentication implementaion for PyXMPP.

Normative reference:
  - RFC 2222

Submodules
`core`: Base classes for PyXMPP SASL implementation. `digest_md5`: DIGEST-MD5 authentication mechanism for PyXMPP SASL implementation. `plain`: PLAIN authentication mechanism for PyXMPP SASL implementation.

Function Summary
`sasl.core.ClientAuthenticator` | ``client_authenticator_factory`(mechanism, password_manager)` Create a client authenticator object for given SASL mechanism and password manager.
`sasl.core.ServerAuthenticator` | ``server_authenticator_factory`(mechanism, password_manager)` Create a server authenticator object for given SASL mechanism and password manager.

Variable Summary
`str` | `__revision__` = `'$Id: __init__.py 477 2004-12-29 13:25:42...`
`list` | `all_mechanisms` = `['DIGEST-MD5', 'PLAIN']`
`dict` | `all_mechanisms_dict` = `{'DIGEST-MD5': (<class pyxmpp.sasl...`
`list` | `safe_mechanisms` = `['DIGEST-MD5']`
`dict` | `safe_mechanisms_dict` = `{'DIGEST-MD5': (<class pyxmpp.sas...`
`list` | `unsafe_mechanisms` = `['PLAIN']`
`dict` | `unsafe_mechanisms_dict` = `{'PLAIN': (<class pyxmpp.sasl.p...`

Imported modules:
  `pyxmpp.sasl.core`, `pyxmpp.sasl.digest_md5`, `pyxmpp.sasl.plain`, `random`
Imported classes:
  `Challenge`, `DigestMD5ClientAuthenticator`, `DigestMD5ServerAuthenticator`, `Failure`, `PasswordManager`, `PlainClientAuthenticator`, `PlainServerAuthenticator`, `Reply`, `Response`, `Success`

Function Details

### client_authenticator_factory(mechanism, password_manager) Create a client authenticator object for given SASL mechanism and password manager. Parameters: `mechanism` - name of the SASL mechanism ("PLAIN" or "DIGEST-MD5"). (type=`str`) `password_manager` - name of the password manager object providing authentication credentials. (type=`PasswordManager`) Returns: new authenticator. (type=`sasl.core.ClientAuthenticator`)

### server_authenticator_factory(mechanism, password_manager) Create a server authenticator object for given SASL mechanism and password manager. Parameters: `mechanism` - name of the SASL mechanism ("PLAIN" or "DIGEST-MD5"). (type=`str`) `password_manager` - name of the password manager object to be used for authentication credentials verification. (type=`PasswordManager`) Returns: new authenticator. (type=`sasl.core.ServerAuthenticator`)

Variable Details

    ### __revision__ Type: `str` Value:
        '$Id: __init__.py 477 2004-12-29 13:25:42Z jajcus $'

    ### all_mechanisms Type: `list` Value:
        ['DIGEST-MD5', 'PLAIN']

    ### all_mechanisms_dict Type: `dict` Value:
        {'DIGEST-MD5': (<class pyxmpp.sasl.digest_md5.DigestMD5ClientAuthentic\
        ator at 0x404e8e0c>,
                        <class pyxmpp.sasl.digest_md5.DigestMD5ServerAuthentic\
        ator at 0x404e8e3c>),
         'PLAIN': (<class pyxmpp.sasl.plain.PlainClientAuthenticator at 0x404e\
        87ac>,
                   <class pyxmpp.sasl.plain.PlainServerAuthenticator at 0x404e\
        87dc>)}

    ### safe_mechanisms Type: `list` Value:
        ['DIGEST-MD5']

    ### safe_mechanisms_dict Type: `dict` Value:
        {'DIGEST-MD5': (<class pyxmpp.sasl.digest_md5.DigestMD5ClientAuthentic\
        ator at 0x404e8e0c>,
                        <class pyxmpp.sasl.digest_md5.DigestMD5ServerAuthentic\
        ator at 0x404e8e3c>)}

    ### unsafe_mechanisms Type: `list` Value:
        ['PLAIN']

    ### unsafe_mechanisms_dict Type: `dict` Value:
        {'PLAIN': (<class pyxmpp.sasl.plain.PlainClientAuthenticator at 0x404e\
        87ac>,
                   <class pyxmpp.sasl.plain.PlainServerAuthenticator at 0x404e\
        87dc>)}