Share via


IWMSAuthenticationContext::GetLogicalUserID

banner art

Previous Next

IWMSAuthenticationContext::GetLogicalUserID

The GetLogicalUserID method retrieves the logical user ID.

Syntax

  HRESULT GetLogicalUserID(
  BSTR*  UserID
);

Parameters

UserID

[out] Pointer to a BSTR containing the user ID.

Return Values

If the method succeeds, the plug-in must return S_OK. To report an error, the plug-in can return any HRESULT other than S_OK. If the plug-in uses the IWMSEventLog interface to log error information directly to the Windows Event Viewer, it is recommended that it return NS_E_PLUGIN_ERROR_REPORTED. Typically, the server attempts to make plug-in error information available to the server object model, the Windows Event Viewer, and the troubleshooting list in the details pane of the Windows Media Services MMC. However, if the plug-in uses the IWMSEventLog interface to send custom error information to the Windows Event Viewer, returning NS_E_PLUGIN_ERROR_REPORTED stops the server from also logging to the event viewer. For more information about retrieving plug-in error information, see Identifying Plug-in Errors.

Remarks

In many applications, the logical user ID and the impersonation account name will be the same. However, they can be different. For example, assume that user names and credentials are stored in a SQL Server database that is associated with an NT-based account. You can assign a user name to the LogicalUserID property and the name of the account to the ImpersonationAccountName property. You can use the impersonation account name to perform the access control list (ACL) check, and the logical user ID can be used to determine what access permissions the user has.

Example Code

The following example illustrates how to use the impersonation account name as a logical user ID:

HRESULT CAuthentContext::GetLogicalUserID( BSTR* bstrUserID )
{
    return ( GetImpersonationAccountName( bstrUserID) );
}

Requirements

Header: Include WmsBasicplugin.h, authen.h, wmsserver.h.

Library: WMSServerTypeLib.dll.

Platform: Windows Server 2003, Enterprise Edition; Windows Server 2003, Datacenter Edition; Windows Server 2008.

See Also

Previous Next