C# Class RDSFactor.Handlers.RDSHandler

Show file Open project: oskarb/RDSFactor

Public Methods

Method Description
Cleanup ( ) : void
HasValidLaunchWindow ( string username ) : bool
HasValidSession ( string username ) : bool
ProcessAccessRequest ( ) : void
ProcessAppLaunchRequest ( ) : void

Process the RDS specific App Launch request. These requests are sent when an app is clicked in RD Web. It's checked whether the session is still valid.In which case, a window is opened for the user, where we allow the user to connect through the gateway, an Accept-Access is returned and the RD Web launches the RDP client. NOTE: Requests contain the session GUID in the password attribute of the packet.

ProcessGatewayRequest ( ) : void

Process the request from the Network Policy Server in the RDS Gateway. These are sent when an RDP client tries to connect through the Gateway. Accept-Access is returned when the user has a * valid session; and a * valid app launch window The launch window is closed after this request.

ProcessRequest ( ) : void
RDSHandler ( RADIUSPacket packet ) : System

Private Methods

Method Description
Accept ( ) : void
Authenticate ( ) : SearchResult
CleanUsername ( string userName ) : string
LdapGetEmail ( SearchResult result ) : string
LdapGetNumberCleaned ( SearchResult result ) : string
ProcessChallengeResponse ( ) : void
TwoFactorChallenge ( SearchResult ldapResult ) : void

Method Details

Cleanup() public static method

public static Cleanup ( ) : void
return void

HasValidLaunchWindow() public static method

public static HasValidLaunchWindow ( string username ) : bool
username string
return bool

HasValidSession() public static method

public static HasValidSession ( string username ) : bool
username string
return bool

ProcessAccessRequest() public method

public ProcessAccessRequest ( ) : void
return void

ProcessAppLaunchRequest() public method

Process the RDS specific App Launch request. These requests are sent when an app is clicked in RD Web. It's checked whether the session is still valid.In which case, a window is opened for the user, where we allow the user to connect through the gateway, an Accept-Access is returned and the RD Web launches the RDP client. NOTE: Requests contain the session GUID in the password attribute of the packet.
public ProcessAppLaunchRequest ( ) : void
return void

ProcessGatewayRequest() public method

Process the request from the Network Policy Server in the RDS Gateway. These are sent when an RDP client tries to connect through the Gateway. Accept-Access is returned when the user has a * valid session; and a * valid app launch window The launch window is closed after this request.
public ProcessGatewayRequest ( ) : void
return void

ProcessRequest() public method

public ProcessRequest ( ) : void
return void

RDSHandler() public method

public RDSHandler ( RADIUSPacket packet ) : System
packet RADIUSPacket
return System