次の方法で共有


IHttpUser::GetUserName メソッド

ユーザー名を返します。

構文

virtual PCWSTR GetUserName(  
   VOID  
) = 0;  

パラメーター

このメソッドは、パラメーターを受け取りません。

戻り値

ユーザー名を含む定数 null で終わる Unicode 文字列へのポインター。

解説

返される値は、認証の種類によって異なります。 認証の種類は 、GetAuthenticationType メソッドから返されます。

次の表は、関連付けられたユーザー名の値またはパターンを持つ認証の種類を示しています。

認証の種類 ユーザー名
Anonymous 空の文字列
Basic ドメイン\
ダイジェスト domain\username または username
フォーム username
Windows ドメイン\

実装側の注意

IHttpUser実装者は、このデータを使用したメモリ管理を担当します。そのため、IHttpUser動的メモリ割り当てを使用する実装者は、不要になったときにポインターをPCWSTR解放または呼び出すdelete必要があります。

呼び出し元に関する注意事項

IHttpUser実装者は、このデータを使用したメモリ管理を担当します。そのため、クライアントは、IHttpUserこのデータが不要になった場合に、返されたPCWSTRポインターを解放したり、 を呼び出deleteしたりすることはできません。 さらに、クライアントは、このデータを ポインター const にキャストしたり、このポインターによって PCWSTR参照されるメモリの状態を変更したりしてはなりません。それ以外の場合は、アクセス違反がスローされるか、データが無効になります。

次のコード例では、応答ヘッダーと本文をクリアし、ユーザー情報を XML ドキュメントとしてクライアントに返す HTTP モジュールを作成する方法を示します。

上記のコードは、次のような応答ストリームに XML を書き込みます。

<?xml version="1.0" ?>  
<user userName="DOMAIN\user" />  

モジュールは RegisterModule 関数をエクスポートする必要があります。 この関数をエクスポートするには、プロジェクトのモジュール定義 (.def) ファイルを作成するか、スイッチを使用してモジュールを /EXPORT:RegisterModule コンパイルします。 詳細については、「 チュートリアル: ネイティブ コードを使用したRequest-Level HTTP モジュールの作成」を参照してください。

必要に応じて、各関数の呼び出し規約を __stdcall (/Gz) 明示的に宣言するのではなく、呼び出し規約を使用してコードをコンパイルできます。

要件

Type 説明
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
Header Httpserv.h

参照

IHttpUser インターフェイス
IHttpUser::GetPassword メソッド
IHttpUser::GetRemoteUserName メソッド