Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.18;
Скачать: CL | DM;

Вниз

SECURITY ATTRIBUTES   Найти похожие ветки 

 
Ермак ©   (2004-02-11 12:36) [0]

Добрый день, уважаемые!

Подскажите пожалуйста, как работать c SECURITY ATTRIBUTES, или ссылку на инфу русскоязычную, а то в хелпе СДК так запутанно все, и Рихтер тоже отделался парой фраз...

Конкретнее: у меня есть программа-сервис под НТ. Она создает проецируемый в память файл. Какие нужно указать атрибуты, чтобы можно было его открыть из а)проги, работающей от админа
б)проги, работающей от любого логина? При указании 0 - не прокатывает, хотя Рихтер пишет, что админы могут открывать любой такой объект ядра.

Заранее огромное спасибо.


 
Игорь Шевченко ©   (2004-02-12 11:27) [1]

Как раз у Рихтера и Кларка очень подробно расписано, как работать с SECURITY_ATTRIBUTES, "Программирование серверных приложений для Windows 2000"


 
Alexander1966 ©   (2004-02-13 10:29) [2]

Джеффри РИХТЕР

"Создание эффективных WIN32-приложений
с учетом специфики 64-разрядной версии Windows"

Там и кроме этого масса полезной информации


 
Ермак ©   (2004-02-14 10:51) [3]

У Рихтера в "Создание эффективных Вин32 приложений..." ничего подробно не пишется. Там только то, как сделать нормальный средний случай. Об остальном он отговаривается, что дескать это все равно очень редко используется. А "Прог СЕрвер Прил" очень дорогая и купить возможности нет.
Может кто в Инете натыкался на электронную версию книги или просто подходящую инфу?

Если нет, то может подскажете, как для этого конкретного случая написать? Был бы чрезвыяайно благодарен. Хотя б общий принцип, как там устанавливается привилегия.


 
ZZ ©   (2004-02-14 22:40) [4]

a) 0 (или что значт "от админа"?)
б) MSDN

Creating a Null DACL
The following example creates a mutex with a null DACL.

If you are creating one of these objects in an application and the object will be shared with a service, you could also use a null DACL to grant everyone access. As an alternative, you could add an access-control entry (ACE) to the DACL that grants access to the user account that the service is running under. This would restrict access to the object to the service.

PSECURITY_DESCRIPTOR pSD;
SECURITY_ATTRIBUTES sa;

pSD = (PSECURITY_DESCRIPTOR) LocalAlloc(LPTR,
     SECURITY_DESCRIPTOR_MIN_LENGTH);

if (pSD == NULL)
  Error(...);

if (!InitializeSecurityDescriptor(pSD, SECURITY_DESCRIPTOR_REVISION))
  Error(...);

// Add a null DACL to the security descriptor.
if (!SetSecurityDescriptorDacl(pSD, TRUE, (PACL) NULL, FALSE))
   Error(...);

sa.nLength = sizeof(sa);
sa.lpSecurityDescriptor = pSD;
sa.bInheritHandle = TRUE;


 
Ермак ©   (2004-02-15 14:50) [5]

Спасибо, работает.

Но... Я хотел бы сделать различный доступ для различных пользователей. КАК это сделать В ПРИНЦИПЕ я уже разобрался. Решил написать библиотечку на VisualC++. Короче говоря, прочитал, что для SECURITY_ATTRIBUTES есть удобные классы в какой-то стандартной библиотеке ATL. Только как эту библиотеку подключить, я не дотумкал. ATL.H - такого нет. ИСкал в папке Висуал С файл с CSecurityAttributes - тоже нет. По ходу, эта библиотека вообще в VC не входит.

Может кто знает, где ее достать можно? Подскажите, плз.



Страницы: 1 вся ветка

Текущий архив: 2004.04.18;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.034 c
1-1080337442
garry79
2004-03-27 00:44
2004.04.18
Как принудительно закрыть Excel евский файл?


1-1081066809
DADUD
2004-04-04 12:20
2004.04.18
Показать картинки в TWebBrowser


1-1080682818
uncoder
2004-03-31 01:40
2004.04.18
Delphi + Winamp skin


7-1076956738
Gopnik
2004-02-16 21:38
2004.04.18
Как определить на каком com порту сидит модем?


8-1073153451
SaM[87]
2004-01-03 21:10
2004.04.18
24-х битное изображение