IWMSAuthenticationContext.GetImpersonationAccountName (Visual Basic .NET)

banner art

Previous Next

IWMSAuthenticationContext.GetImpersonationAccountName (Visual Basic .NET)

The server calls the GetImpersonationAccountName method to retrieve the name of the Windows 2000 security user or group account that the authentication context simulates if authentication succeeds.




This method takes no parameters.

Return Values

This method returns a String containing the account name. To report an error, the plug-in can throw a COMException object to the server. If the plug-in uses the IWMSEventLog object to log error information, it is recommended that it throw NS_E_PLUGIN_ERROR_REPORTED (0xC00D157D). 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 object to send custom error information to the Windows Event Viewer, throwing NS_E_PLUGIN_ERROR_REPORTED stops the server from also logging to the event viewer. For more information about plug-in error information, see Identifying Plug-in Errors.


To impersonate a logged on user, a plug-in must retrieve a token that represents the user. How you do this depends upon the authentication protocol that your plug-in is designed to implement. For example, a Digest Authentication plug-in can use the System.Security.Principal.WindowsIdentity.Impersonate method of the Microsoft® Windows® .NET Framework.

Example Code

Public Function GetImpersonationAccountName() As String _
    Implements IWMSAuthenticationContext.GetImpersonationAccountName

    Dim ImpContext As WindowsImpersonationContext
    Dim strIdentity As String

        ImpContext = WindowsIdentity.Impersonate(m_hToken)
        strIdentity = WindowsIdentity.GetCurrent.Name
        Return strIdentity

    Catch e As Exception
        ' Catch exceptions
    End Try
End Function


Reference: Add a reference to Microsoft.WindowsMediaServices.

Namespace: Microsoft.WindowsMediaServices.Interop.

Assembly: Microsoft.WindowsMediaServices.dll.

Library: WMSServerTypeLib.dll.

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

See Also

Previous Next