Что означает код NTSTATUS 0x8000002F (STATUS_NO_ACE_CONDITION)?

 
Предыдущий Следующий
STATUS_CANNOT_GRANT_REQUESTED_OPLOCK STATUS_DEVICE_SUPPORT_IN_PROGRESS

STATUS_NO_ACE_CONDITION

В ACE отсутствует условие для вычисления

Условные правила доступа представлены ACE обратного вызова, данные приложения которых кодируют выражение. Это состояние означает, что выбранный ACE не содержит такого выражения. Оно отличается и от выражения, результат которого равен false, и от повреждённого условия, которое невозможно разобрать.

Перед интерпретацией результата проверьте тип ACE. Обычные разрешающие и запрещающие ACE никогда не содержат условного байт-кода, тогда как ACE обратного вызова может быть безусловным, если его прикладные данные пусты. Код, ожидающий динамического контроля доступа, не должен молча считать отсутствие условия успешным совпадением.

Что следует проверить

  • Выведите полную ACL и определите точный тип и флаги ACE.
  • Сопоставьте двоичное представление ACE с его SDDL или источником политики, а не восстанавливайте его по отображаемому тексту.
  • Определите, является ли безусловный ACE обратного вызова намеренным. В противном случае заново создайте дескриптор безопасности из авторитетного источника политики.

Ссылки


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