Что означает код HRESULT 0x80010123 (CO_E_FAILEDTOIMPERSONATE)?

 
Предыдущий Следующий
RPC_E_INVALID_STD_NAME CO_E_FAILEDTOGETSECCTX

CO_E_FAILEDTOIMPERSONATE

Что именно проверять

CO_E_FAILEDTOIMPERSONATE фиксирует состояние Не удалось выполнить олицетворение клиента DCOM. В COM/DCOM полезно считать его маркером стадии «COM/DCOM security», а не общим признаком повреждения всей конфигурации.

Минимальный набор фактов

  • соберите для сравнения CLSID, caller/server SID, access token, RunAs, launch/access ACL и authentication context. Для условия «Не удалось выполнить олицетворение клиента DCOM» это позволяет восстановить исходный объект и не спутать его с последующим состоянием.
  • соберите для сравнения технические маркеры RPC_E_UNSECURE_CALL, RPC, HRESULT, sid, SID с теми значениями, которые были видны до очистки/rollback; они привязывают «Не удалось выполнить олицетворение клиента DCOM» к реальному вызову.
  • сохраните момент первого результата и один исправный запуск, сохранив одинаковыми входные данные; различие должно появиться именно на стадии COM/DCOM security.

Безопасное воспроизведение

сравните сравнить effective token и security descriptor на точной границе access check или impersonation. Изменяйте только предпосылку, связанную с «Не удалось выполнить олицетворение клиента DCOM», а регистрацию, identity, входной объект и окружение по возможности оставляйте прежними.

не ослаблять LaunchPermission/AccessPermission глобально: сначала подтвердить конкретный SID и denied right; для результата «Не удалось выполнить олицетворение клиента DCOM» широкая переустановка, очистка каталога или ослабление безопасности не считается доказательством причины.

Для соседних результатов RPC_E_UNSECURE_CALL сравнивайте первую различающуюся операцию. Исправление подтверждено только тогда, когда исходная граница проходит при прежних входах и следующий ожидаемый шаг получает корректное состояние.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.