2013-02-14 22 views
6

Sto creando un sito Web IIS utilizzando il cmdlet New-WebSite di PowerShell e all'interno di un'applicazione Web che utilizza New-WebApplication.Creazione di un'applicazione Web IIS7 utilizzando PowerShell con Richiedi SSL impostato su "Richiedi"

Le impostazioni SSL per l'applicazione Web devono essere impostate su Richiedi SSL; Richiedi come mostrato di seguito.

IIS SSL Settings

Per coerenza, vorrei farlo usando solo i cmdlet di PowerShell.

Richiedi SSL l'impostazione è semplice; è sufficiente aggiungere il parametro -Ssl a New-Website.

Tuttavia, l'unico modo che abbiamo trovato per impostare l'opzione Richiede sta usando Appcmd.exe:

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

Esiste un PowerShell alternativa a questo?

risposta

2

soluzione trovata, utilizzando Set-WebConfiguration:

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

Qualcuno ha mai ricevuto questo errore durante l'esecuzione del comando precedente: Non esiste alcuna configurazione definita per oggetto nel percorso IIS: \ SslBindings. –

4

ho dovuto aggiungere ssl al valore:

Set-CONFIGURAZIONEWEB -Location "$ WebSiteName/$ WebApplicationName" -Filter 'system.webserver/security/access' -Valore "Ssl, SslRequireCert"

+0

Le altre opzioni non hanno fatto nulla (incluso il flag -Ssl per il nuovo sito Web): funzionava correttamente (IIS 7.5, Windows Server 2008R2). – geographika

1

Ho usato questo metodo:

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

Se si ottiene l'errore "non c'è nessuna configurazione definita per oggetto nel percorso IIS: \ SSLBindings" è necessario impostare il parametro PSPath

-PSPath IIS : \ Sites