Package nbxmpp :: Module auth_nb
[hide private]
[frames] | no frames]

Module auth_nb

source code

Provides plugs for SASL and NON-SASL authentication mechanisms. Can be used both for client and transport authentication

See client_nb.py

Classes [hide private]
  SASL
Implements SASL authentication. Can be plugged into NonBlockingClient to start authentication
  NonBlockingNonSASL
Implements old Non-SASL (JEP-0078) authentication used in jabberd1.4 and transport authentication
  NonBlockingBind
Bind some JID to the current connection to allow router know of our location. Must be plugged after successful SASL auth
Functions [hide private]
 
HH(some) source code
 
H(some) source code
 
C(some) source code
 
challenge_splitter(data)
Helper function that creates a dict from challenge string
source code
 
scram_parse(chatter) source code
Variables [hide private]
  log = logging.getLogger('nbxmpp.auth_nb')
  kerberos = __import__('kerberos')
  have_kerberos = False
  GSS_STATE_STEP = 0
  GSS_STATE_WRAP = 1
  SASL_FAILURE_IN_PROGRESS = 'failure-in-process'
  SASL_FAILURE = 'failure'
  SASL_SUCCESS = 'success'
  SASL_UNSUPPORTED = 'not-supported'
  SASL_IN_PROCESS = 'in-process'
  __package__ = 'nbxmpp'

Imports: NS_SASL, NS_SESSION, NS_STREAMS, NS_BIND, NS_AUTH, NS_STREAM_MGMT, Node, NodeProcessed, isResultNode, Iq, Protocol, JID, PlugIn, Smacks, base64, random, itertools, dispatcher_nb, hmac, hashlib, logging


Function Details [hide private]

HH(some)

source code 

H(some)

source code 

C(some)

source code 

challenge_splitter(data)

source code 

Helper function that creates a dict from challenge string

Sample challenge string:
  • username="example.org",realm="somerealm", nonce="OA6MG9tEQGm2hh",cnonce="OA6MHXh6VqTrRk", nc=00000001,qop="auth,auth-int,auth-conf",charset=utf-8
Expected result for challan:
  • dict['qop'] = ('auth','auth-int','auth-conf')
  • dict['realm'] = 'somerealm'

scram_parse(chatter)

source code 

Variables Details [hide private]

log

Value:
logging.getLogger('nbxmpp.auth_nb')

kerberos

Value:
__import__('kerberos')

have_kerberos

Value:
False

GSS_STATE_STEP

Value:
0

GSS_STATE_WRAP

Value:
1

SASL_FAILURE_IN_PROGRESS

Value:
'failure-in-process'

SASL_FAILURE

Value:
'failure'

SASL_SUCCESS

Value:
'success'

SASL_UNSUPPORTED

Value:
'not-supported'

SASL_IN_PROCESS

Value:
'in-process'

__package__

Value:
'nbxmpp'