簡體   English   中英

如何從C#代碼或在運行IIS的服務器上使用Powershell生成IIS7 CSR(用於SSL)

[英]How to generate IIS7 CSR (for SSL) from C# code or using Powershell on server which IIS is running

如何從C#生成服務器SSL證書簽名請求(CSR)? 如果PowerShell是更好的選擇,那也將是一個很好的解決方案。

我知道已經過了三年,但是Yahia解決方案中的鏈接表明它們不適用於Server2008。使用PowerShell,我能夠使用Server 2008附帶的Certreq.exe來生成CSR。 Certreq的文檔以及INF文件的完整格式在此處 當然,用您自己的值代替專有名稱。 字母對應於以下字段:

  • CN :通用名稱
  • O :組織
  • OU :組織單位
  • L :城市/地區
  • S :州/省
  • C :國家/地區

該腳本假定您有一個名為TEMP的環境變量,該變量指向您具有寫訪問權的目錄:

$reqFile = 'C:\ChangeMe\Request.req'
Push-Location $env:TEMP

@"
[NewRequest] 
Subject = "CN=www.contoso.com, O=Contoso Inc, OU=Sales, L=Redmond, S=Washington, C=US"
ProviderName = "Microsoft RSA SChannel Cryptographic Provider"
KeyLength = 2048
MachineKeySet = true
FriendlyName = "www.contoso.com"
[RequestAttributes]
CertificateTemplate="WebServer"
"@ | Out-File .\request.inf -Encoding default -Force

certreq -f -new request.inf `"$reqFile`"
Pop-Location

對於那些不熟悉PowerShell的用戶,不得縮進@""@分隔符。 (這些定義了所謂的“這里字符串” ...更多信息,請點擊此處 。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM