Description
Queries whether a COM object running on COM+ is impersonating the client.
Applies to
TransactionServer objects
Syntax
transactionserver.IsImpersonating ( )
Return value
Boolean.
Returns true if the component is impersonating the client and false if it is not.
Usage
COM objects running on COM+ can use the ImpersonateClient function to run in the client's security context so that the server process has access to the same resources as the client. Use IsImpersonating to determine whether the ImpersonateClient function has been called without a matching call to RevertToSelf.
Examples
The following example creates an instance of the TransactionServer service and checks whether the COM object is currently running on the client's security context. If it is not, it impersonates the client, performs some processing using the client's security context, then reverts to the object's security context:
TransactionServer txninfo_test integer li_rc li_rc = GetContextService( "TransactionServer", & txninfo_test ) IF NOT txninfo_test.IsImpersonating() THEN txninfo_test.ImpersonateClient() END IF // continue processing as client txninfo_test.RevertToSelf()
See also