Bir rdp proxy uygulamak için rdpy
'un rdpy-rdpmitm
tanıtımını kullanıyorum, ancak hedefe bağlanmadan önce parolayı kontrol etmek ve istemciye yeniden izin vermek istiyorum -kullanıcı kullanıcı adı ve şifre. Benim kodum böyle; OnReady
yöntemini nasıl uygularım?rdpy-rdpmitm istemcisinin parola yanlış olduğunda kullanıcı adı ve parolayı yeniden girmesini sağlarım
class ProxyServer(rdp.RDPServerObserver):
def __init__(self, controller, target, clientSecurityLevel, rssRecorder):
"""
@param controller: {RDPServerController}
@param target: {tuple(ip, port)}
@param rssRecorder: {rss.FileRecorder} use to record session
"""
rdp.RDPServerObserver.__init__(self, controller)
self._target = target
self._client = None
self._rss = rssRecorder
self._clientSecurityLevel = clientSecurityLevel
def onReady(self):
"""
@summary: Event use to inform state of server stack
First time this event is called is when human client is connected
Second time is after color depth nego, because color depth nego
restart a connection sequence
@see: rdp.RDPServerObserver.onReady
"""
if self._client is None:
# try a connection
domain, username, password = self._controller.getCredentials()
self._rss.credentials(username, password, domain, self._controller.getHostname())
width, height = self._controller.getScreen()
self._rss.screen(width, height, self._controller.getColorDepth())
if checkPassword(username, password): #password ok
reactor.connectTCP('127.0.0.1', 3389, ProxyClientFactory(self, width, height, domain, username, password,self._clientSecurityLevel))
else:
pass
#how to make client re-input username and password in this place
dışarıdan olabilir kodunuzun sınıf içinde olmak zorunda ya mı doğrudur? –