18.10.2006 19:28:28Удаление пользователя, сертификаты не удаляются. Ответов: 19
Дмитрий
Ситуация: Централизованная регистрация пользователей и выпуск сертификатов.
В связи со сменой адресов нужно по новой завести двух пользователей. Отзываю у первого сертификат с причиной "Прекращение работы", подтверждаю запрос. Сертификат из списка пропадает, пользователя удаляю. Все отлично.

Со вторым пользователем интереснее. Делаю отзыв. Подтверждаю его. Результат (уже восстановленный пао журналу): Application uses a value of the wrong type for the current operation. (0xD5D). Сертификат из списка не исчезает, дальнейшие попытки сделать запрос на отзыв и подтвердить его спотыкаются об "Отзываемый сертификат уже отозван. (0x80004005)".
Выпустил для этого же пользователю еще один сертификат, с ним ситуация полностью аналогичная. причем при попытки посмотреть свойства отзыва сертификата получаю ошибку:
"Номер: 438
Источник: CRAdmin2
Описание: Object doesn't support this property or method"

Это чего-то с БД не так? Судя по id запросов, я сначала подал запрос на отзыв для сертификата второго многострадального пользователя, затем для первого. Ну а одобрял в обратном порядке. Т.е. сейчас у меня висят отклоненными запросы с id=1,3,4.... А одобренных запросов не показываается вообще.

Какие будут мысли по устранению подобной неприятности?
 
Ответы:
19.10.2006 9:56:35Василий
Вопросы:
1) версия и номер сборки компонентов КриптоПро УЦ - ЦС, ЦР, АРМ
2) версия БД ЦР
3) используется MSDE или SQL-сервер
4) в MS CA этот сертификат есть среди отозванных?
19.10.2006 10:10:44Дмитрий
1) ЦР, ЦС и АРМ -- все версии 1.04.0661
2) Версия БД ЦР -- 1.108
3) Используется MSDE из поставки УЦ.
4) В MS CA оба выпущенных сертификата отсутствуют.
19.10.2006 10:37:52Дмитрий
И еще вот что обнаружилось, в логах на машине УЦ\ЦР (оба находсятя на одном сервере) появились следующие события:
Source: VBRuntime
The VB Application identified by the event source logged this Application Registration: Thread ID: 3416 ,Logged: Ошибка в методе RevokeRequest.AcceptRequest: (0xD5D) Application uses a value of the wrong type for the current operation.

и
Source: MSSOAP
Soap error: Executing method AcceptRequest failed.
19.10.2006 16:01:34Василий
Посмотрите список OID-ов в поле "Улучшенный ключ" этого сертификата - все они есть среди разрешённых для роли, под которой отзывается сертификат на АРМе?
Для этого на сервере ЦР - Параметры ЦР - Свойства "ЦР на веб..." - Политики - Обработка запросов на отзыв - для нужной роли - Изменить
19.10.2006 16:50:02Дмитрий
Да. У нас стандартная лицензия, рли в политике по-умолчанию: Администратор, оператор, пользователь. Отзыв осуществлялся под ролью Администратор.
19.10.2006 16:54:53Дмитрий
Прошу прощения, ввел Вас в заблуждение: первоначальный отзыв был с причиной "Сертификат заменен", после того, как я понял, что причина неверна, отказал в запросе и после этого уже создал второй запрос с причиной "Прекращение работы". После этого одобрения не получается.
Кстати это номрально, что одобренный запрос с id=2 (для другого пользователя) исчез из списка и не показывается никак, все фильтры отключены, выборка стоит "Все запросы"?
20.10.2006 13:33:08Василий
Если пользователь удаляется, удаляется всё, что с ним связано - все его запросы, сертификаты. Не удаляются только записи в Журнале ЦР.

По поводу отзыва.
Попробуйте поставить более новый билд ЦР:
http://www.cryptopro.ru/cryptopro/download/2B777CD1-7012-4855-BF85-7F43FA01A8BF/14/680/RA.msi
20.10.2006 13:41:26Kirill Sobolev
И не только RA, также и CA с АРМ Администратора
20.10.2006 15:22:51Дмитрий
А утилиты ЦР и ЦС нужно менять или пока не нужно генерировать ключи ЦР и ЦС можно обойтись без них?
20.10.2006 15:43:20Kirill Sobolev
Не нужно, и ключи генерировать тоже не нужно.
20.10.2006 16:35:24Дмитрий
После установки новых весрий, стало получше: можно посмотреть свойства отзыва, но по-прежнему, при одобрении отзыва возникает ошибка:
"Ошибка номер: -2147467259
Источник: RegistrationCenter
Описание: The parameter is incorrect."

Сделал отказ в отзыве. Делаю попытку отозвать старый (один из 2х сертификат) у все того же пользователя, получаю ту же самую ошибку, но (!) в очерди появляется запрос на отзыв. При одобрении возникает опять -2147467259...

Все это очень напоминает нарушение целостности базы. Может быть наиболее простым решением будет руками вычистить в базах ЦР и ЦС пользователя и всего, что с ним связано? Время поджимает, расчитывали уже вовсю эксплуатировать ЦС. хочется, быть может не "красивого", но быстрого решения.
21.10.2006 21:50:30Василий
Если нужно срочно - можете просто создать новую базу ЦР, она будет вообще чистой.
Второе - с сайта Вы скачивали какую версию?
Последняя - 1.04.0684
23.10.2006 9:42:50Дмитрий
Устанавливал 1.04.0680, ссылку на который Вы давали.
Да можно вобщем-то и резервную копию базы восстановить, это гораздо лучше, но в текущей базе есть несколько новых пользователей, которым разосланы ключи...
Попробую более свежий билд.
23.10.2006 11:32:42Дмитрий
С 864 билдом ситуация кардинально не изменилась:
Ошибка номер: -2147467259
Источник: Request.RevokeCertificate
Описание: Отзываемый сертификат уже отозван.
23.10.2006 11:40:14Василий
"Отзываемый сертификат уже отозван" - а это правда (с точки зрения MS CA)?
23.10.2006 11:51:52Дмитрий
Да, в списке отозванных MS CA все 3 сертификата, для которых я пытался сделать отзыв присутствуют.
Для проблемного пользователя один сертификат с причиной Superseded, второй -- Cease Operation.
23.10.2006 12:21:18Дмитрий
Только что успешно удалил другого пользователя. При отзыве сертификата, сам отзыв был автоматически одобрен, сертификат исчез, пользователь легко и непринужденно удалился... Может чего в базе все-таки поковырять? :)
23.10.2006 13:10:14Василий
Я думаю, проще всего будет поменять статус сертификатов этого пользователя, после чего отклонить необработанные запросы (если остались) и сразу удалить этого пользователя.

MS SQL Enterprise Manager - база ЦР - Views - UserCertificate - поле "StateID" - поменять для нужных сертификатов на 2.
23.10.2006 13:34:19Дмитрий
Ура, это сработало! Спасибо!