Go to the latest version of this document.

# ``twisted`.`conch`.`checkers`.`SSHProtocolChecker``

class documentation

`class SSHProtocolChecker: (source)`

Implements interfaces: `twisted.cred.checkers.ICredentialsChecker`

View In Hierarchy

SSHProtocolChecker is a checker that requires multiple authentications to succeed. To add a checker, call my registerChecker method with the checker and the interface.

After each successful authenticate, I call my areDone method with the avatar id. To get a list of the successful credentials for an avatar id, use `SSHProcotolChecker.successfulCredentials[avatarId]`. If `areDone` returns True, the authentication has succeeded.

Method | `__init__` | Undocumented
Method | `areDone` | Override to determine if the authentication is finished for a given avatarId.
Method | `registerChecker` | Undocumented
Method | `requestAvatarId` | Part of the `ICredentialsChecker` interface. Called by a portal with some credentials to check if they'll authenticate a user. We check the interfaces that the credentials provide against our list of acceptable checkers...
Instance Variable | `checkers` | Undocumented
Instance Variable | `successfulCredentials` | Undocumented
Property | `credentialInterfaces` | A list of sub-interfaces of `ICredentials` which specifies which I may check.
Method | `_cbGoodAuthentication` | Called if a checker has verified the credentials. We call our `areDone` method to see if the whole of the successful authentications are enough. If they are, we return the avatar ID returned by the first checker.

def __init__(self): (source)

Undocumented

def areDone(self, avatarId): (source)

Override to determine if the authentication is finished for a given avatarId.

Parameters
avatarId | the avatar returned by the first checker. For this checker to function correctly, all the checkers must return the same avatar ID.

def registerChecker(self, checker, *credentialInterfaces): (source)

Undocumented

def requestAvatarId(self, credentials): (source)
from `twisted.cred.checkers.ICredentialsChecker`

Part of the `ICredentialsChecker` interface. Called by a portal with some credentials to check if they'll authenticate a user. We check the interfaces that the credentials provide against our list of acceptable checkers. If one of them matches, we ask that checker to verify the credentials. If they're valid, we call our `_cbGoodAuthentication` method to continue.

Parameters
credentials | the credentials the `Portal` wants us to verify

checkers: `dict` = (source)

Undocumented

successfulCredentials: `dict` = (source)

Undocumented

@property
credentialInterfaces = (source)
from `twisted.cred.checkers.ICredentialsChecker`

A list of sub-interfaces of `ICredentials` which specifies which I may check.

def _cbGoodAuthentication(self, avatarId, credentials): (source)

Called if a checker has verified the credentials. We call our `areDone` method to see if the whole of the successful authentications are enough. If they are, we return the avatar ID returned by the first checker.