IFtpRoleProvider::IsUserInRole Method

Checks to see whether a user is a member of a specific role.

Syntax

HRESULT IsUserInRole( 
   LPWSTR pszSessionId, 
   LPWSTR pszSiteName, 
   LPWSTR pszUserName, 
   LPWSTR pszRole, 
   long * pfIsInRole 
) 

Parameters

Term Definition
pszSessionId [IN] A pointer to a string that contains the session ID.
pszSiteName [IN] A pointer to a string that contains the site name.
pszUserName [IN] A pointer to a string that contains the user name.
pszRole [IN] A pointer to a string that contains the role name.
pfIsInRole [OUT] A pointer to a long integer that is set to true if the user is in the role; otherwise, false.

Return Value

An HRESULT. Possible values include, but are not limited to, those in the following table.

Value Description
S_OK Indicates that the operation was successful.

Example

The following code example illustrates how to use the IFtpRoleProvider interface to create a custom authentication module for the FTP service that implements role checks.

public: 
   STDMETHOD(IsUserInRole)(LPWSTR pszSessionId, 
      LPWSTR pszSiteName, 
      LPWSTR pszUserName, 
      LPWSTR pszRole, 
      long * pfIsInRole) 
   { 
      // Note: You would add your own custom logic here. 
      CString strUserName = L"MyUser"; 
      CString strRoleName = L"MyRole"; 
 
      // Verify that the user name and role name are valid. 
      // In this example, both the user name and 
      // the role name are case-insensitive. 
      if ((strUserName.CompareNoCase(pszUserName)==0) && 
          (strRoleName.CompareNoCase(pszRole)==0)) 
      { 
         *pfIsInRole = TRUE; 
      } 
      else 
      { 
         *pfIsInRole = FALSE; 
      } 
 
      return S_OK; 
   } 

Requirements

Type Description
Client - IIS 7.5 on Windows 7
- IIS 8.0 on Windows 8
- IIS 10.0 on Windows 10
Server - IIS 7.5 on Windows Server 2008 R2
- IIS 8.0 on Windows Server 2012
- IIS 8.5 on Windows Server 2012 R2
- IIS 10.0 on Windows Server 2016
Product - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0
Reference ftpext.tlb

See Also

IFtpRoleProvider Interface