| ||||
| ||||
Столкнулся с проблемой кросс сертификации между УЦ1.3 и УЦ1.4. При генерации запроса на кросс-сертификат на ЦС УЦ1.3, сертификат на УЦ1.4 - выпускается. При генерации запроса на кросс-серификат на ЦС УЦ1.4, сертификат на УЦ1.3 не выпускается,выводя следующую ошибку: Что это может быть?... .На сколько я понимаю ошибка в принципе ругается на настройки политики модуля цс. Все необходимые настройки центров сертификации и регистрации произвёл(по документации). .Запросы создаются нормально(единственное при создании запроса на цс уц1.4 в файле запроса создаётся преамбула - данные сертификата цс,в таком составе файл с запросом на уц1.3 не принимается, при удалении этой информации из файла запроса - файл принимается) .Думал не совпадают алгортмы на центрах. Алгоритмы в csp и АРМ администраторах ЦР везде проставил одинаковые. .Думал проблема в недружеских отношениях между csp 2.0 и 3.0 (3.0 с 2.0 - работает, а 2.0 с 3.0 - нет, сталкивался уже с этим)Менял на УЦ1.3 csp c 2.0 на 3.0 на всех трёх машинах (цс,цр,арм) думал вообще работать не будет,но работает правда выдаёт туже ошибку. В чём может быть проблема? Может просто в том что нельзя кросс-сертифицировать УЦ1.3 и 1.4 стандартными средствами =) Помогите пожалуйста и или хотя бы объясните в чём я не прав и как можно решить данную проблему, буду очент признателен. ПО Удостоверяющих центров: 1-ый УЦ(1.4): ЦС-CSP3.0 KC1 ЦР-CSP3.0 КС1 АРМ-CSP3.0 KC1 2-ой УЦ(1.3): ЦС-CSP2.0 ЦР-CSP2.0 АРМ-CSP2.0 Заранее спасибо! | ||||
Ответы: | ||||
| ||||
А какую ошибку выдает то? | ||||
| ||||
Извиняюсь, забыл написать. Первый раз при запуске УЦ: Номер: -2147220983 Источник: ViewRequestMoveNext Описание: Произошла ошибка во время принятия запроса на сертификат. Оригинальная ошибка : Number=-2147467259 Source=Connector Description=Connector:Connection time out. HRESULT=0x800A1527 - Client:An unanticipated error occurred during the processing of this request. HRESULT=0x800A1527 - Client:Sending the Soap message failed or no recognizable response was received HRESULT=0x800A1527 - Client:Unspecified client error. HRESULT=0x800A1527 Нажимаю закрыть и жму далее чтобы ещё раз попробывать выпустить сертификат. Номер: -2147220983 Источник: ViewRequestMoveNext Описание: Произошла ошибка во время принятия запроса на сертификат. Оригинальная ошибка: Number=-2147195294 Source=СОМ+ Приложение ЦС Description=Denied by Policy Module Вот так вот...забыл сказать что оба уц развёрнуты на виртуальных машинах, хотя думаю это значения особого не имеет. | ||||
| ||||
Посмотрите на сервере ЦС, в журнале Приложений - есть ли сообщения об ошибке | ||||
| ||||
Василий ,посмотрел журнал событий после очередной неудачной попытки выпуска сертификата. Действительно создаётся несколько событий, включая три ошибки. Первое событие о запуске процесса: Event Type: Information Event Source: Active Server Pages Event Category: None Event ID: 3 Date: 17.10.2006 Time: 10:25:07 User: N/A Computer: CA13 Description: Service started. Следующее событие - ошибка, в которой как я предполагаю и состоит вся ошибка выпуска сертификата и последующих 2-ух ошибок. Event Type: Error Event Source: VBRuntime Event Category: None Event ID: 1 Date: 17.10.2006 Time: 10:25:41 User: N/A Computer: CA13 Description: The VB Application identified by the event source logged this Application CAPolicy: Thread ID: 980 ,Logged: Ошибка при обработке запроса на сертификат моделем политики: Источник: Microsoft OLE DB Provider for SQL Server Номер: 0x80040E2F (-2147217873) Описание: Violation of PRIMARY KEY constraint 'PK_CAPublicKey'. Cannot insert duplicate key in object 'CAPublicKey'. Затем идёт событие "Warning" со следующей информацией: Event Type: Warning Event Source: CertSvc Event Category: None Event ID: 53 Date: 17.10.2006 Time: 10:25:42 User: N/A Computer: CA13 Description: Certificate Services denied request 36 because An unknown error occurred while processing the certificate. 0x80090327 (-2146893017). The request was for CN=CSargo, O=Argo, L=Moscow, C=RU, E=Danshov@compusec.ru. Additional information: Denied by Policy Module И потом ещё две ошибки MSSOAP: Event Type: Error Event Source: MSSOAP Event Category: Generic Event ID: 16 Date: 17.10.2006 Time: 10:25:43 User: N/A Computer: CA13 Description: Soap error: Executing method GetCertificate failed. и Event Type: Error Event Source: MSSOAP Event Category: SoapServer Event ID: 16 Date: 17.10.2006 Time: 10:25:43 User: N/A Computer: CA13 Description: Soap error: An unanticipated error occurred during the processing of this request.. | ||||
| ||||
Violation of PRIMARY KEY constraint 'PK_CAPublicKey'. Cannot insert duplicate key in object 'CAPublicKey'. Сертификат с таким ОК уже выпущен, а модуль политики контролирует уникальность ОК. | ||||
| ||||
Действительо при моей самой первой попытке выпуска кросса на данный УЦ, появилась ошибка, но сертификат всё же был выпущен... Т.е тот сертификат вполне пригоден и его можно использовать? И ещё один вопросик: что такое OK? - по видимому это какой то ключик? | ||||
| ||||
Не факт, надо смотреть, является ли этот сертификат сертификатом ЦС. ОК - открытый ключ, он же public key. | ||||
| ||||
weqq | ||||
| ||||
Тот сертификат, что был выпущен с ошибкой, выглядит вполне приемлемо. Тобишь открывая его все поля прописаны нормально, на вкладках ошибок нету, выдан одним цс другому цс.. Вот думаю как проверить данный кросс-сертификат. На сколько я понимаю алгоритм установки кросса между 2-мя УЦ следующий: 1. Генерим запросы на центрах сертификации для кросс сертификатов. 2. Доставляем данные запросы на центры и выпускаем соответствующие сертификаты. 3. Устанавливаем сертификаты на центрах сертификации. В принципе как я понимаю всё. Так ли это? | ||||
| ||||
Да 3й пункт - установка не только на ЦС, а везде, где будет строиться цепочка с использованием кроссов. | ||||
| ||||
Кирилл, не совсем понял ваш последний овтет: "..установка не только на ЦС, а везде, где будет строиться цепочка с использованием кроссов." Это значит, что кросс-сертификаты нужно устанавливать не только на ЦС, но и ещё на ЦР и АРМ.. или всё же только на все ЦС всех УЦ, где проходит вся цепочка?.. | ||||
| ||||
Тогда я не понял какая задача решается с помощью кроссов - требуется только чтобы ЦС доверяли друг другу? | ||||
| ||||
Задача состоит в том, чтобы два УЦ доверяли друг другу. Я думал что достаточно установки кроссов на ЦС одного УЦ и на ЦС другого УЦ..? | ||||
| ||||
И ещё один вопросик в догонку - насколько я понимаю сертификаты на центрах сертификации нужно устанавливать в промежуточные хранилища локального компьютера? Или же в какое то другое? | ||||
| ||||
Сделать так чтобы два УЦ доверяли друг другу нельзя - доверие подразумевает что пользователи одного УЦ являются пользователями другого, и наоборот. Если имеются ввиду кроссы, то да - в промежуточные. | ||||
| ||||
хм..понятно, хорошо, а как сделать так чтобы пользователи одного УЦ являлись пользователями другого УЦ? Как я понимаю с помощью тех же кроссов так? Просто устанавливать кросс-сертификат на все машины УЦ (тобишь на ЦР,ЦС и АРМ)? | ||||
| ||||
Только зарегистрировать всех пользователей одного УЦ на другом и выдать им там сертификаты. Кросс-сертификация тут непричем. | ||||
| ||||
Так, хорошо это понятно. А доверие между центрами сертификации сделать можно? | ||||
| ||||
Можно конечно - просто установив их сертификаты другу другу в соответствующие хранилища (корневые или промежуточные), кросс тут тоже непричем. | ||||