IBitsTokenOptions::SetHelperToken メソッド (bits4_0.h)
COM クライアントのトークンを偽装するヘルパー トークンを設定します。 アプリケーションは COM の偽装によってトークンを設定するため、トークンは永続的ではなく、セッションの有効期間中のみ有効です。 BITS サービスがログオフ通知を受信すると、BITS サービスは転送ジョブに関連付けられているヘルパー トークンをすべて破棄します。
構文
HRESULT SetHelperToken();
戻り値
次の値が返される場合があります。
リターン コード/値 | Description |
---|---|
|
クライアントの COM 設定では、クライアント トークンへの権限借用レベルのアクセスは許可されません。 |
|
|
注釈
ヘルパー トークンは、管理者を表す必要はありません。
プロキシ ブランケットの偽装レベルは、 RPC_C_IMP_LEVEL_IMPERSONATE または RPC_C_IMP_LEVEL_DELEGATEに設定する必要があります。 詳細については、「 セキュリティ 一括ネゴシエーション」を参照してください。
クローキング フラグは EOAC_DYNAMIC_CLOAKING に設定する必要があります。これにより、COM サーバーはクライアントの ID としてスレッド トークンを使用できます。 詳細については、「 クローキング と EOLE_AUTHENTICATION_CAPABILITIES列挙」を参照してください。
以前の実装では、ヘルパー トークンを設定するために BITS ユーザーに管理者権限が必要でした。 バージョン 1607 Windows 10以降、管理者以外の BITS ユーザーは IBitsTokenOptions::SetHelperToken を使用して、所有する BITS ジョブに管理者以外のヘルパー トークンを設定できます。 この変更により、管理者以外の BITS ユーザー ( NetworkService アカウントで実行されているバックグラウンド ダウンローダー サービスなど) がヘルパー トークンを設定できるようになります。
具体的には、 IBackgroundCopyJob::QueryInterface 呼び出し中に呼び出し元のスレッドのトークンの SID がジョブ所有者のユーザー アカウントの SID と同じであり、設定されているヘルパー トークンで管理者 SID (DOMAIN_ALIAS_RID_ADMINS) が有効になっていない限り、管理者特権のないユーザーがヘルパー トークンを設定できるように実装が変更されました。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 7 |
サポートされている最小のサーバー | Windows Server 2008 R2 |
対象プラットフォーム | Windows |
ヘッダー | bits4_0.h |
再頒布可能パッケージ | SP1 を使用した Windows Vista、SP2 を使用した Windows Vista、SP2 を使用した Windows Server 2008 のWindows Management Framework |