def test_failure_getting_authorized_keys(self): """ If L{IAuthorizedKeysDB.getAuthorizedKeys} raises an exception, L{SSHPublicKeyChecker.requestAvatarId} fails with L{UnauthorizedLogin} """ def fail(_): raise _DummyException() self.keydb = _KeyDB(fail) self.checker = SSHPublicKeyChecker(self.keydb) self.failureResultOf(self.checker.requestAvatarId(self.credentials), UnauthorizedLogin) self.flushLoggedErrors(_DummyException)
def makeService(self, options): """ Construct a TCPServer from a factory defined in myproject. """ _portal = portal.Portal( essftp.EssFTPRealm(essftp.FilePath(options['root']).path), options.get('credCheckers', [SSHPublicKeyChecker(UNIXAuthorizedKeysFiles())])) if options['keyDirectory']: factory = OpenSSHFactory() factory.portal = _portal factory.dataRoot = options['keyDirectory'] factory.moduliRoot = options['moduli'] else: factory = ConchFactory(_portal) return internet.TCPServer(int(options["port"]), factory)
def setUp(self): self.credentials = SSHPrivateKey( 'alice', 'ssh-rsa', publicRSA_openssh, 'foo', Key.fromString(privateRSA_openssh).sign('foo')) self.keydb = _KeyDB(lambda _: [Key.fromString(publicRSA_openssh)]) self.checker = SSHPublicKeyChecker(self.keydb)