SecurityIdentity
構造体サイズ=各フィールドのバイト数(x64/x86 で異なる場合は x64/x86 と併記)。x64/x86 列=フィールドのバイトオフセット(HSPで dupptr / lpoke / wpoke 等に使用)。
フィールド
(フィールドなし)
公式ドキュメント
呼び出し元の ID を表すセキュリティ情報のコレクションへのアクセスを提供します。このクラスを使用すると、セキュリティ呼び出しコンテキストの一部である呼び出し元のチェーンの中で、特定の呼び出し元に関する情報を取得できます。セキュリティ呼び出しコンテキストの情報にアクセスする方法の詳細については、「Programmatic Component Security」を参照してください。
SecurityIdentity クラスにアクセスできるのは、ロールベースのセキュリティを使用する COM+ アプリケーションのみです。ロールの詳細については、Role-Based Security Administration を参照してください。
解説(Remarks)
SecurityIdentity オブジェクトを直接作成することはできません。ISecurityIdentityColl のメソッドを使用するには、riid パラメーターに IID_ISecurityCallContext を指定して CoGetCallContext を呼び出し、その実装への参照を取得する必要があります。次に、ISecurityCallContext::get_Item を呼び出して、セキュリティ ID コレクションであるセキュリティ呼び出しコンテキスト項目 ("DirectCaller" や "OriginalCaller" など) を要求します。その後、ISecurityIdentityColl::get_Item を呼び出して、セキュリティ ID 項目 ("Name" や "AuthenticationService" など) を取得します。
Microsoft Visual Basic からこのクラスを使用するには、COM+ Services Type Library への参照を追加します。SecurityIdentity オブジェクトを直接作成することはできません。そのプロパティを使用するには、GetSecurityCallContext を使用してその実装への参照を取得する必要があります。次に、そのオブジェクトの Item プロパティを取得し、セキュリティ ID コレクションであるセキュリティ呼び出しコンテキスト項目 ("DirectCaller" や "OriginalCaller" など) を要求します。その後、SecurityIdentity オブジェクトの Item プロパティを使用して、セキュリティ ID 項目 ("Name" や "AuthenticationService" など) を取得します。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp)