共用方式為


IHttpUser::IsInRole 方法

傳回值,指出使用者是否獲得具名角色的授權。

語法

virtual HRESULT IsInRole(  
   IN PCWSTR pszRoleName,  
   OUT BOOL* pfInRole  
) = 0;  

參數

pszRoleName
[IN]常數 Null 終止 Unicode 字串的指標,其中包含角色的名稱。

pfInRole
[OUT]的 BOOL 指標,指出使用者是否獲得 所 pszRoleName 指定角色的授權。

傳回值

HRESULT。 可能的值包括 (但不限於) 下表中的這些值。

定義
S_OK 表示作業成功。
E_NOTIMPL IsInRole表示方法未實作。

備註

IsInRole只有在SupportsIsInRole方法第一次在相同的IHttpUser指標上傳回 true 時,才呼叫 方法。

IsInRole 回值取決於實作。 您應該使用下列資訊作為指導方針,但在所有案例中可能都不正確:

  • IHttpUser如果實作者處理匿名驗證,則只有在參數為 Null 或空白時 pszRoleName ,才會將取 pfInRole 值參數設定 true 為 。 IsInRole 然後一律會傳回S_OK。

  • IHttpUser如果實作者處理基本、認證對應、SSPI 或自訂驗證, pfInRole 則參數未修改,並 IsInRole 立即傳回E_NOTIMPL。

  • IHttpUser如果實作者處理 Managed 驗證,則 pfInRole 參數未修改,如果任一參數為 Null,則會 IsInRole 立即傳回E_INVALIDARG。 否則, pfInRole 會設定為 true ,而且只有在使用者處於角色時,才會 IsInRole 傳回S_OK。

範例

下列程式碼範例示範如何建立 HTTP 模組,以清除回應標頭和本文,然後將使用者資訊傳回用戶端做為 XML 檔。

上述程式碼會撰寫類似下列回應資料流程的 XML。

<?xml version="1.0" ?>  
<user supportsRoles="true" isInRole="false" />  

您的模組必須匯出 RegisterModule 函式 。 您可以為專案建立模組定義 (.def) 檔案,或使用 參數編譯模組 /EXPORT:RegisterModule 來匯出此函式。 如需詳細資訊,請參閱逐步解說 :使用機器碼建立Request-Level HTTP 模組

您可以選擇性地使用呼叫慣例編譯器代碼, __stdcall (/Gz) 而不是明確宣告每個函式的呼叫慣例。

規格需求

類型 描述
Client - Windows Vista 上的 IIS 7.0
- Windows 7 上的 IIS 7.5
- Windows 8 上的 IIS 8.0
- Windows 10上的 IIS 10.0
伺服器 - Windows Server 2008 上的 IIS 7.0
- Windows Server 2008 R2 上的 IIS 7.5
- Windows Server 2012 上的 IIS 8.0
- Windows Server 2012 R2 上的 IIS 8.5
- Windows Server 2016上的 IIS 10.0
產品 - IIS 7.0、IIS 7.5、IIS 8.0、IIS 8.5、IIS 10.0
- IIS Express 7.5、IIS Express 8.0、IIS Express 10.0
標頭 Httpserv.h

另請參閱

IHttpUser 介面