是否可以使用Power Shell腳本獲取IIS設置?Powershell腳本來驗證IIS設置
我希望得到/使用AA腳本檢查以下信息:
- 檢查的Windows身份驗證提供正確列出(協商,NTLM)
- 檢查Windows身份驗證啓用
- Windows身份驗證高級設置 - >啓用內核模式是
是否可以使用Power Shell腳本獲取IIS設置?Powershell腳本來驗證IIS設置
我希望得到/使用AA腳本檢查以下信息:
是的,這是PowerShell所有容易的可能。
有許多樣品和在線的例子
看那(IIS) Administration Cmdlets in Windows PowerShell
,尤其是Get-WebConfiguration和Get-WebConfigurationProperty
要獲取有關Windows身份驗證高級設置信息的使用:
$windowsAuthFilter = "/system.WebServer/security/authentication/windowsAuthentication"
$winKernel = (Get-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -location 'Default Web Site' -filter "$windowsAuthFilter" -name "useKernelMode").Value
$winKernel
$winProviders = Get-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -location 'Default Web Site' -filter "$windowsAuthFilter/providers" -name "."
$winProviders.Collection | Format-Table value
下面是閱讀匿名和Windows身份驗證的答案:
$anonAuthFilter = "/system.WebServer/security/authentication/AnonymousAuthentication"
$windowsAuthFilter = "/system.WebServer/security/authentication/windowsAuthentication"
$value = 'false'
$AppName = "test"
$anonAuth = Get-WebConfigurationProperty -filter $anonAuthFilter -name Enabled -location $AppName
Write-Host $anonAuth.Value
$winAuth = Get-WebConfigurationProperty -filter $windowsAuthFilter -name Enabled -location $AppName
Write-Host $winAuth.Value
@Peter漢道夫 依然沒有找到任何線索
檢查Windows身份驗證高級設置 - >啓用內核模式並且
檢查檢查啓用提供商,如NTLM和協商
我在我的答案中添加了一些示例代碼 –
已檢索: 導入模塊Web管理 cd IIS: IIS:\> Get-WebConfiguration -Filter「System.WebServer/Securit y /認證/ */*「 - 撤銷|其中{$ _。enabled -eq $ True} | Format-List ' 但是得到如下錯誤: IIS:\> Get-WebConfiguration:術語'IIS:\> Get-WebConfiguration'不被識別爲cmdlet,函數,腳本文件或可操作的名稱程序。檢查名稱的拼寫,或者如果包含路徑 ,請驗證路徑是否正確,然後重試。 – Joseph
運行'Enable-WindowsOptionalFeature -nline -FeatureName IIS-WebServerManagementTools'來安裝IIS cmdlet,如果您有較舊的Windows版本,則通過GUI安裝它們。 –
下面的代碼運行正常,但在輸出時,它不顯示如果Windows身份驗證已啓用或未啓用IIS: Get-WebConfiguration system.webServer/security/authentication/windowsAuthentication/*'IIS:\ sites \ Default Web Site' - 撤銷| format-list – Joseph