如何将Datasnap做得更安全些?
wuhs 2017-05-16 05:59:43 请教一个DataSnap的问题,那位高手帮忙指点一下:
datasnap如何获取客户端的请求报文,是这样,我希望将Datasnap做得更安全一些,希望在TDSTCPServerTransport或TDSAuthenticationManager的阶段就将非法连接过滤掉,最多到TDSServer的onConnect将非法连接过滤掉。但发现能获取的客户端信息都不一样。
TDSTCPServerTransport(Event: TDSTCPConnectEventObject),TDSAuthenticationManager只有(const Protocol, Context, User, Password: string)几个信息,且Context是空的。TDSServer.onConnecte(DSConnectEventObject: TDSConnectEventObject),三个地方获得的信息都不一样。我想应该是DataSnap在第一时间就把非法连接拦掉,按DataSnap的连接顺序,对于tcp/ip协议,先过TDSTCPServerTransport->TDSAuthenticationManager->TDSServer,而Http协议则直接到TDSAuthenticationManager->TDSServer,那么在TDSAuthenticationManager至少应拿到客户端的IP地址吧,最好是全部报文。
那位有办法,或者有其他保证安全的方式,请指教。