class documentation

class ServiceBindingProxy(proxy.Proxy): (source)

View In Hierarchy

An LDAP proxy that handles non-anonymous bind requests specially. BindRequests are intercepted and authentication is attempted against each configured service. This authentication is performed against a separate LDAP entry, found by searching for entries with - objectClass: serviceSecurityObject - owner: the DN of the original bind attempt - cn: the service name. starting at the identity-base as configured in the config file. Finally, if the authentication does not succeed against any of the configured services, the proxy can fallback to passing the bind request to the real server.

Method __init__ Initialize the object.
Method handle_LDAPBindRequest Undocumented
Method timestamp Undocumented
Instance Variable fallback Undocumented
Instance Variable services Undocumented
Method _loopIfBindError Undocumented
Method _loopIfNone Undocumented
Method _maybeFallback Undocumented
Method _startSearch Undocumented
Method _tryService Undocumented

Inherited from Proxy:

Method connectionLost Called when TCP connection has been lost
Method connectionMade TCP connection has opened
Method handle_LDAPUnbindRequest Undocumented
Method handleUnknown Undocumented
Class Variable waitingConnect Undocumented
Instance Variable client Undocumented
Instance Variable config Undocumented
Instance Variable unbound Undocumented
Method _cbConnectionMade Undocumented
Method _clientQueue Undocumented
Method _failConnection Undocumented
Method _gotResponse Undocumented
Method _handleUnknown Undocumented
Method _whenConnected Undocumented

Inherited from BaseLDAPServer (via Proxy):

Method checkControls Undocumented
Method dataReceived Undocumented
Method failDefault Undocumented
Method handle Undocumented
Method queue Undocumented
Method unsolicitedNotification Undocumented
Class Variable berdecoder Undocumented
Class Variable debug Undocumented
Instance Variable buffer Undocumented
Instance Variable connected Undocumented
Method _callErrorHandler Undocumented
Method _cbHandle Undocumented
Method _cbLDAPError Undocumented
Method _cbOtherError Undocumented
def __init__(self, services=None, fallback=None, *a, **kw): (source)

Initialize the object. @param services: List of service names to try to bind against. @param fallback: If none of the attempts to authenticate against a specific service succeeded, whether to fall back to the normal LDAP bind mechanism.

def handle_LDAPBindRequest(self, request, controls, reply): (source)

Undocumented

def timestamp(self): (source)

Undocumented

fallback = (source)

Undocumented

services = (source)

Undocumented

def _loopIfBindError(self, fail, *a, **kw): (source)

Undocumented

def _loopIfNone(self, r, *a, **kw): (source)

Undocumented

def _maybeFallback(self, entry, request, controls, reply): (source)

Undocumented

def _startSearch(self, request, controls, reply): (source)

Undocumented

def _tryService(self, services, baseEntry, request, controls, reply): (source)

Undocumented