2013-02-14 29 views
6

Tôi đang tạo trang web IIS bằng lệnh ghép ngắn New-WebSite của PowerShell và trong ứng dụng web đó sử dụng New-WebApplication.Tạo ứng dụng web IIS7 bằng PowerShell với Yêu cầu SSL được đặt thành "Yêu cầu"

Cài đặt SSL cho ứng dụng web cần được đặt thành Yêu cầu SSL; Yêu cầu như được hiển thị bên dưới.

IIS SSL Settings

Đối với tính nhất quán, tôi muốn làm điều này chỉ sử dụng PowerShell cmdlets.

Cài đặt Yêu cầu SSL thật dễ dàng; bạn chỉ cần thêm thông số -Ssl vào New-Website.

Tuy nhiên, cách duy nhất chúng tôi đã tìm thấy để thiết lập các tùy chọn Yêu cầu đang sử dụng Appcmd.exe:

& $env:SystemRoot\System32\inetsrv\Appcmd.exe ` 
    set config "$WebSiteName/$VirtualDirName" ` 
    /section:access ` 
    /sslFlags:"SslRequireCert" ` 
    /commit:APPHOST 

Có một lựa chọn PowerShell để điều này?

Trả lời

2

Giải pháp phát hiện, sử dụng Set-WebConfiguration:

Set-WebConfiguration -Location "$WebSiteName/$WebApplicationName" ` 
    -Filter 'system.webserver/security/access' ` 
    -Value "SslRequireCert" 
+1

Có ai đã từng gặp lỗi này khi chạy lệnh trên: Không có cấu hình nào được xác định cho đối tượng tại đường dẫn IIS: \ SslBindings. –

4

tôi đã có thêm ssl với giá trị:

Set-WebConfiguration -Địa "$ WebSiteName/$ WebApplicationName" -Filter 'system.webserver/security/access' -Giá trị "Ssl, SslRequireCert"

+0

Các tùy chọn khác không làm gì cả (bao gồm cả -Ssl cho cờ trang web mới) - điều này hoạt động tốt (IIS 7.5, Windows Server 2008R2). – geographika

1

tôi đã sử dụng phương pháp này:

Set-WebConfigurationProperty -PSPath "machine/webroot/apphost" ` 
    -location "$mySiteName" -filter "system.webserver/security/access" ` 
    -name "sslflags" -value "Ssl,SslNegotiateCert,SslRequireCert" 
1

Nếu bạn nhận được lỗi "Không có cấu hình định nghĩa cho đối tượng ở đường IIS: \ SslBindings" bạn cần phải thiết lập các thông số PsPath

-PSPath IIS : \ Sites

Các vấn đề liên quan