2008-10-09 3 views
8

У нас есть приложение для работы с оболочкой с термоусадочной оболочкой, где нам нужно создать самоподписанный сертификат на сервере, который будет использоваться некоторыми веб-службами WCF. Из наших поисков в Интернете кажется, что утилиту makecert в PlatformSDK от Microsoft нельзя распространять с нашим приложением, поэтому мы ищем альтернативы.Самостоятельный сертификат в Windows без makecert?

Кто-нибудь знает, как использовать OpenSSL для создания сертификата и получить его в хранилище сертификатов Windows LocalMachine? Или, наоборот, прямо вставить сертификат в хранилище в .NET-приложении, и мы должны просто создать файл сертификата с помощью openssl? Любая помощь/предложения будут оценены.

+0

что вы в конечном итоге делает? – 2010-01-25 02:23:04

+0

Фактически мы фактически изменили привязки и не использовали сертификат на стороне сервера. Настройка процедуры установки служб сертификации Microsoft, как упоминалось ниже, вероятно, является предпочтительным методом, но было бы здорово, если бы возникло альтернативное решение. – 2010-01-25 05:33:20

ответ

8

[К сожалению, я не могу ничего комментировать, поэтому я выложу это как ответ.]

Я вижу, что этот пост немного старый, но я нахожусь в подобной лодке Я нашел это в Visual Studio 2008 redist.txt файла:

Windows SDK Files 

Subject to the license terms for the software, the following files may be distributed unmodified: 

MageUI.exe 
Mage.exe 
Makecert.exe 

Не уверен, что если что-то изменилось (и если моя интерпретация верна), но это выглядит как Makecert.exe включены как часть Windows SDK, который в свою очередь включается как часть установки VS2008, действительно может быть перераспределен.

2

Woohoo! Пришло время для pinvoke для вас

crypt32 обеспечивает функцию CertCreateSelfSignCertificate; если это удастся, вы можете сохранить его в личном магазине пользователя (или в магазине компьютеров при условии, что вы работаете на высоте)

2

Я не использовал OpenSSL, но я нахожусь в одной лодке и нашел эту статью полезной:

Securing WCF Services with Certificates

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

Вам не понадобятся сертификаты клиентов, но это поможет вам создать самозаверяющий сертификат CA и сервера.

7

Теперь вы можете создавать собственные сертификаты с помощью PowerShell команды, необходимые в Нью-самозаверенный сертификат и Экспортно-PfxCertificate. Ex: создать сертификат

New-SelfSignedCertificate -certstorelocation cert:\localmachine\my -dnsname orin.windowsitpro.internal 

экспортировать

Export-PfxCertificate -cert cert:\localMachine\my\CE0976529B02DE058C9CB2C0E64AD79DAFB18CF4 -FilePath e:\temp\cert.pfx -Password $pwd 

Эта ссылка действительно полезно

http://windowsitpro.com/blog/creating-self-signed-certificates-powershell

 Смежные вопросы

  • Нет связанных вопросов^_^