Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход. Новые регистрации запрещены.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline IK  
#1 Оставлено : 3 апреля 2008 г. 16:15:13(UTC)
IK

Статус: Активный участник

Группы: Участники
Зарегистрирован: 18.03.2008(UTC)
Сообщений: 60
Откуда: Москва

А возможно ли в принципе открытие хранилища сертификатов по сети

CertOpenSystemStore(0,"\\server\MY")
выдает ошибку E_INVALIDARG

а
CertOpenSystemStore(0,"MY")
отрабатывет без ошибок

Может надо использовать CertOpenStore?

Offline Kirill Sobolev  
#2 Оставлено : 3 апреля 2008 г. 19:05:03(UTC)
Кирилл Соболев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 25.12.2007(UTC)
Сообщений: 1,733
Мужчина
Откуда: КРИПТО-ПРО

Поблагодарили: 177 раз в 168 постах
Да, надо использовать CertOpenStore.
И еще важное замечание из MSDN
Цитата:

The following system store locations can be opened remotely:

CERT_SYSTEM_STORE_LOCAL_MACHINE
CERT_SYSTEM_STORE_LOCAL_MACHINE_GROUP_POLICY
CERT_SYSTEM_STORE_SERVICES
CERT_SYSTEM_STORE_USERS

System store locations are opened remotely by prefixing the store name in the string passed to pvPara with the computer name. Examples of remote system store names are:

ComputerName\Ca
\\ComputerName\Ca
ComputerName\ServiceName\Trust
\\ComputerName\ServiceName\Trust
Техническую поддержку оказываем тут
Наша база знаний
Offline IK  
#3 Оставлено : 3 апреля 2008 г. 19:20:55(UTC)
IK

Статус: Активный участник

Группы: Участники
Зарегистрирован: 18.03.2008(UTC)
Сообщений: 60
Откуда: Москва

Kirill Sobolev написал:
Да, надо использовать CertOpenStore.


Спасибо!

Заработало...

Отредактировано пользователем 3 апреля 2008 г. 21:48:15(UTC)  | Причина: Не указана

Offline AlexeevGena  
#4 Оставлено : 8 декабря 2008 г. 15:30:37(UTC)
AlexeevGena

Статус: Новичок

Группы: Участники
Зарегистрирован: 03.12.2008(UTC)
Сообщений: 8
Откуда: Екатеринбург

Kirill Sobolev написал:
Да, надо использовать CertOpenStore.
И еще важное замечание из MSDN
Цитата:

The following system store locations can be opened remotely:

CERT_SYSTEM_STORE_LOCAL_MACHINE
CERT_SYSTEM_STORE_LOCAL_MACHINE_GROUP_POLICY
CERT_SYSTEM_STORE_SERVICES
CERT_SYSTEM_STORE_USERS

System store locations are opened remotely by prefixing the store name in the string passed to pvPara with the computer name. Examples of remote system store names are:

ComputerName\Ca
\\ComputerName\Ca
ComputerName\ServiceName\Trust
\\ComputerName\ServiceName\Trust


А не подскажете почему при открытие хранилища пользователя (личные) на удалённом компьютере в нём не видно сертификатов?
Причём туда можно добавить сертификат и он будет виден в стандартной оснастке...
Открываю так:
Код:
IntPtr handleS = CertOpenStoreStringPara(CERT_STORE_PROV_REGISTRY, 0, 0, CERT_SYSTEM_STORE_USERS, @"\\ComputerName\UserSID\MY")


P.S. Если открывать личные сертификаты удалённого компьютера, то всё видно...
Offline Виктор Свириденков  
#5 Оставлено : 7 августа 2009 г. 23:53:19(UTC)
Виктор Свириденков

Статус: Новичок

Группы: Участники
Зарегистрирован: 07.08.2009(UTC)
Сообщений: 4
Откуда: Угра

Пытаюсь удалить списки отзыва на удаленном компьютере:

Код:

WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
   HCERTSTORE hStoreHandleCheck;
   hStoreHandleCheck=CertOpenStore(
   CERT_STORE_PROV_SYSTEM,
   0,
   NULL,
   CERT_SYSTEM_STORE_LOCAL_MACHINE,
   L"MAIL\CA");

   DWORD dwFlagsCheck=CERT_STORE_BASE_CRL_FLAG;
   PCCRL_CONTEXT pCRLContext=0;
  do
      {
       pCRLContext=CertGetCRLFromStore(
       hStoreHandleCheck,
       NULL,
       NULL,
       &dwFlagsCheck);
       
       if (pCRLContext!=NULL)
          {
             CertDeleteCRLFromStore(pCRLContext);
           } 
       }
   while (pCRLContext!=NULL);
CertCloseStore(hStoreHandleCheck,0);
return 0;
}


Почему то pCRLContext всегда NULL. Подскажите в чем дело...
Уже всю голову сломал Brick wall
Offline Kirill Sobolev  
#6 Оставлено : 10 августа 2009 г. 16:26:44(UTC)
Кирилл Соболев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 25.12.2007(UTC)
Сообщений: 1,733
Мужчина
Откуда: КРИПТО-ПРО

Поблагодарили: 177 раз в 168 постах
Может быть их там и нет?
Техническую поддержку оказываем тут
Наша база знаний
Offline Виктор Свириденков  
#7 Оставлено : 12 августа 2009 г. 2:18:51(UTC)
Виктор Свириденков

Статус: Новичок

Группы: Участники
Зарегистрирован: 07.08.2009(UTC)
Сообщений: 4
Откуда: Угра

Kirill Sobolev написал:
Может быть их там и нет?


Разобрался сам. В строке L"MAIL\CA" надо было указать два слеша - L"MAIL\\CA"
Offline Виктор Свириденков  
#8 Оставлено : 19 августа 2010 г. 17:51:29(UTC)
Виктор Свириденков

Статус: Новичок

Группы: Участники
Зарегистрирован: 07.08.2009(UTC)
Сообщений: 4
Откуда: Угра

AlexeevGena написал:
Kirill Sobolev написал:
Да, надо использовать CertOpenStore.
И еще важное замечание из MSDN
Цитата:

The following system store locations can be opened remotely:

CERT_SYSTEM_STORE_LOCAL_MACHINE
CERT_SYSTEM_STORE_LOCAL_MACHINE_GROUP_POLICY
CERT_SYSTEM_STORE_SERVICES
CERT_SYSTEM_STORE_USERS

System store locations are opened remotely by prefixing the store name in the string passed to pvPara with the computer name. Examples of remote system store names are:

ComputerName\Ca
\\ComputerName\Ca
ComputerName\ServiceName\Trust
\\ComputerName\ServiceName\Trust


А не подскажете почему при открытие хранилища пользователя (личные) на удалённом компьютере в нём не видно сертификатов?
Причём туда можно добавить сертификат и он будет виден в стандартной оснастке...
Открываю так:
Код:
IntPtr handleS = CertOpenStoreStringPara(CERT_STORE_PROV_REGISTRY, 0, 0, CERT_SYSTEM_STORE_USERS, @"\\ComputerName\UserSID\MY")


P.S. Если открывать личные сертификаты удалённого компьютера, то всё видно...


Аналогичная проблема - хочу получить корневые сертификаты с удаленного компьютера и никак. Использую код:

Код:

HCERTSTORE hStoreHandleCheck;
   hStoreHandleCheck=CertOpenStore(
   CERT_STORE_PROV_SYSTEM,
   0,
   NULL,
   CERT_SYSTEM_STORE_LOCAL_MACHINE,
   L"MAIL\ROOT");


На этом комьютере точно есть несколько корневых, через оснастку они прекрасно видны, а используя этот код получается в лучшем случае получить один. Возможно дело в том что корневые установлены под пользователем т.е. в ветке CURRENT_USER? Но тогда получается что к ним вообще доступ не получишь так как с параметром CERT_SYSTEM_STORE_CURRENT_USER удаленное хранилище не открывается. Подскажите куда копать? Очень надо!!!
Offline Kirill Sobolev  
#9 Оставлено : 19 августа 2010 г. 18:49:28(UTC)
Кирилл Соболев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 25.12.2007(UTC)
Сообщений: 1,733
Мужчина
Откуда: КРИПТО-ПРО

Поблагодарили: 177 раз в 168 постах
Установить нужные сертификаты в LM.
Техническую поддержку оказываем тут
Наша база знаний
Offline Виктор Свириденков  
#10 Оставлено : 19 августа 2010 г. 19:01:01(UTC)
Виктор Свириденков

Статус: Новичок

Группы: Участники
Зарегистрирован: 07.08.2009(UTC)
Сообщений: 4
Откуда: Угра

Kirill Sobolev написал:
Установить нужные сертификаты в LM.


Это конечно замечательно - вся фишка в том что компов больше сотни и проделывать это ручками ну очень не охота и очень затратно по времени. Задача в том чтоб удалить уже не действующие корневые. Причем эта задача не разовая. Может еще что подскажите?
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.