Публичный сертификат и разрешения X509

У меня проблема с загрузкой определенного сертификата X509 в приложении ASP.NET (т. Е. Не через IIS для https). Я загрузил его в свои хранилища «Personal» и «Trusted Root» на моем локальном компьютере (через оснастку MMC), но не могу загрузить его ни из одного хранилища.

Кажется, что у учетной записи NETWORK SERVICE нет разрешений на ее чтение / загрузку, потому что, когда я меняю идентификатор пула приложений на пользователя с правами администратора, я могу найти, загрузить и использовать сертификат.

Это всего лишь общедоступный сертификат, поэтому, в отличие от сертификата с закрытым ключом, я не вижу нигде, где можно было бы установить для него разрешения.

Это странно, потому что раньше у меня не было этой проблемы с общедоступными сертификатами в этом приложении. Единственная разница, которую я вижу между этим общедоступным сертификатом и предыдущими общедоступными сертификатами (которые загружались нормально), заключается в том, что этот конкретный открытый сертификат был подписан Verisign и, следовательно, имеет цепочку сертификации с парой других сертификатов Verisign.

Заранее спасибо,
Чарльз

К вашему сведению, моя среда разработки - это просто моя машина Vista Business с IIS7.

stackoverflow.com/questions/338429/… дубликат
Tim 03.12.2008 22:33

У этого есть больше информации, поэтому я закрыл другой.

EBGreen 03.12.2008 22:37

Я не знаю, как был опубликован другой. Что касается другого вопроса, я нажал кнопку «Назад» на экране «Да, я человек», а затем разместил этот вопрос. Ошибка? утки для укрытия

Charlino 03.12.2008 22:39
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
3
1 435
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Прошло некоторое время, но я, кажется, припоминаю, что у меня были проблемы с сертификатами, связанные с разрешениями, которые я решил, импортировав сертификат в хранилище физический (установите флажок «Показать физические хранилища» при установке сертификата).

В качестве альтернативы вы можете взглянуть с помощью FileMon или ProcMon и проверить наличие отказа в доступе для СЕТЕВОЙ СЛУЖБЫ. Эта страница MSDN содержит список расположение магазинов на диске.

Все еще остается расплывчатым ответом, но, надеюсь, это в конечном итоге приведет к решению ...

Хорошо ... Итак, теперь я щелкнул "показать физические магазины", там есть папка "Реестр" в "Личные", а в "Доверенные корневые центры сертификации" есть "Реестр", "Локальный компьютер" и "Смарт-карта". папки. Есть идеи, что делать дальше?

Charlino 03.12.2008 22:55

Извините, как я уже сказал, прошло какое-то время ... Тем не менее, я добавил к своему "ответу" альтернативный подход к устранению неполадок.

Arnout 04.12.2008 19:41

Пара разных мыслей. Меня немного смущает, как вы используете термин «сертификат с закрытым ключом» и что вы подразумеваете под «использовать сертификат» после того, как попытались получить к нему доступ с правами администратора. Я предполагаю, что вы пытаетесь сделать одно из следующего:

  • получите копию сертификата и сделайте что-нибудь вроде проверки или используйте ее для шифрования чего-либо.

  • получить копию сертификата и закрытого ключа и использовать его для чего-то вроде подписи.

Итак ... если это №1, моя первая ставка заключается в том, что настройки сертификата что-то испортили в протоколах ASP.NET. Verisign определенным образом настроила бы профиль, используемый для создания и подписи сертификата. Это даст настройки сертификата, которые вы не можете изменить, которые могут помешать загрузке сертификата. Я бы проверил сертификат, который вызывает проблемы, по сравнению с сертификатами, у которых нет никаких проблем, и посмотрел, как меняются расширения сертификатов. Вы можете сделать это через панель предварительного просмотра сертификата IE в клиенте. Проверьте любые другие настройки, которые вы найдете в Интернете - обычно там публикуются отчеты о проблемах интеграции с Microsoft.

К сожалению, если вы обнаружите проблему, вам придется вернуться в Versign и получить новый сертификат, подписанный с правильными расширениями. Если у вас есть корпоративная учетная запись, попросите поговорить с их службой поддержки верхнего уровня, они должны быть достаточно осведомлены, чтобы помочь вам найти профиль сертификата, который будет работать для ваших инструментов.

Если это # ​​2 - возможно, вы сделали закрытый ключ сертификата неэкспортируемым. Я предполагаю, что вы используете сертификат программного обеспечения и загрузили PKCS12 или другой файл хранилища сертификатов в браузер. В то время он бы спросил, хотите ли вы экспортировать закрытый ключ. Если вы сказали «нет» (не отметили поле), то закрытый ключ не покинет браузер.

Если у вас есть исходный файл хранилища сертификата / закрытого ключа, ответ будет безболезненным - удалите сертификат из личного хранилища сертификатов и повторно загрузите его. Обязательно установите флажок экспортируемый.

Немного поздно, но ... Я пытался использовать сертификат, чтобы проверить что-то, что было подписано. Это была реализация SAML2, в которой публичный сертификат, который я мне дал, ранее отлично работал у ряда различных поставщиков. Я закончил чтение / загрузку сертификата из метаданных поставщиков удостоверений.

Charlino 16.03.2009 07:40

Другие вопросы по теме