Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
Все верно 20.05.09 20:00 Число просмотров: 2464
Автор: amirul <Serge> Статус: The Elderman
|
> Ну иначе как от "имени системы" драйвер и не запустится. > Или я что-то путаю? Ничего не путаешь. Есть вопрос: access denied случается даже если доступ к шаре (реальной) уже получен (net use \\server\share, или просто зайти туда напрямую)?
> Я понимаю о чем вы хотите сказать, что мол раз драйвер > запускается под SYSTEM аккаунтом, то и права он имеет соотв > и все его запросы тоже, но в запросе (запрос на дисковую > операцию) есть поле типа > IO_SECURITY_CONTEXT SecurityContext > так вот в нем есть токен и этот токен описывает именно того > юзера который стучится к этой шаре. И этот юзер имеет > нужные права. С редиректорами все чуть не так, насколько я помню. То есть совершенно по фигу какие права дала ЛОКАЛЬНАЯ система этому запросу, важно то, что об этом думает удаленная (собственно сервер).
> Вот и получаем: > приходит запрос с нужными правами, в запросе подменяеться > только путь и возвращается нужный код для репарза, но далее > "аксес денайд". Хотя после репарза в запросе > SecurityContext не отличается от изначального. В данном случае гораздо важнее смотреть на экстендед атрибуты (собственно SystemBuffer и Parameters.Create.EaLength), в которых передается инфа, необходимая СЕРВЕРУ для авторизации данного клиента. К сожалению с минифильтрами не работал никогда и понятия не имею как они реализуют репарс, но на уровне object manager-а open packet (с инфой об этих самых ea) @#$ится и репарснутое открытие уже происходит без них.
|
|
|