|Microsoft Internet Security and Acceleration Server 2000|
Creates a private session object for a given client.
HRESULT CreatePrivateSession( LPSOCKADDR ClientAddress, DWORD ClientAddressLength, LPSOCKADDR ProxyInternalAddress, DWORD ProxyInternalAddressLength, IFWXImpersonator *Impersonator, IFWXSession **ppPrivateSession );
A private session object allows a filter to use an application-level authentication scheme.
Private sessions may be needed in outbound and inbound scenarios.
Outbound scenario: Session objects are created automatically for Firewall service or SecureNAT client requests, but not when an application connects to an internal address of the ISA Server through an application filter. A filter that acts as an application-level proxy, may have to create a private session object by using the CreatePrivateSession method to have access to session-dependent functions.
Inbound Scenario: Inbound primary connections can be directed to a SecureNAT client by using the CreatePrivateSession or IFWXFirewall::GetNATSession method. Use IFWXFirewall::CreatePrivateSession when the inbound connection has been requested by an application, the SecureNAT client is not known by the Firewall service, and no session object has been created. Use IFWXFirewall::GetNATSession only if the filter can assert that the client is configured to be a SecureNAT client of that server.