PSScriptAnalyzer
1.2.0
PSScriptAnalyzer provides script analysis and checks for potential code defects in the scripts by applying a group of built-in or customized rules on the scripts being analyzed.
Installation Options
Owners
Copyright
(c) Microsoft Corporation 2015. All rights reserved.
Package Details
Author(s)
- Microsoft Corporation
Cmdlets
Get-ScriptAnalyzerRule Invoke-ScriptAnalyzer
Dependencies
This module has no dependencies.
Release Notes
Released v1.2.0 (Dec.17, 2015)
Features:
- Support for consuming PowerShell content as streams (-ScriptDefinition)
- ScriptAnalyzer accepts configuration (settings) in the form of a hashtable (-Settings), added sample Settings
- Ability to run default ruleset along with custom ones in the same invocation (-IncludeDefaultRules)
- Recurse Custom Rule Paths (-RecurseCustomRulePath)
- Consistent Engine error handling when working with Settings, Default and Custom Rules
Rules:
- Rule to detect the presence of default value for Mandatory parameters (AvoidDefaultValueForMandatoryParameter)
Fixes:
Engine:
- Engine update to prevent script based injection attacks
- CustomizedRulePath is now called CustomRulePath – Fixes to handle folder paths
- Fixes for RecurseCustomRulePath functionality
- Fix to binplace cmdlet help file as part of build process
- ScriptAnalyzer Profile is now called Settings
- Fix to emit filename in the diagnosticrecord when using Script based custom rules
- Fix to prevent Engine from calling Update-Help for script based custom rules
- Added additional pester tests to take care of test holes in Custom Rule feature
- Post-build error handling improvements, fixed typos in the project
Rules:
- Fixed bug in Positional parameter rule to trigger only when used with > 3 positional - parameters
- Updated keywords that trigger PSAvoidUsingPlainTextForPassword rule
- Updated ProvideDefaultParameterValue rule to AvoidDefaultValueForMandatoryParameter rule
- Deprecate Internal Url rule based on community feedback, identified additional rules to handle hardcoded paths etc
- Added localhost exceptions for HardCodedComputerName Rule
- Update to Credential based rules to validate the presence of CredentialAttribute and PSCredential type
Documentation:
- Rule & Cmdlet documentation updates – Cmdlet help file addition
FileList
- PSScriptAnalyzer.nuspec
- Microsoft.Windows.PowerShell.ScriptAnalyzer.BuiltinRules.dll
- Microsoft.Windows.PowerShell.ScriptAnalyzer.dll
- PSScriptAnalyzer.psd1
- ScriptAnalyzer.format.ps1xml
- ScriptAnalyzer.types.ps1xml
- en-US\about_PSScriptAnalyzer.help.txt
- en-US\Microsoft.Windows.PowerShell.ScriptAnalyzer.dll-Help.xml
- Settings\CmdletDesign.psd1
- Settings\DSC.psd1
- Settings\ScriptFunctions.psd1
- Settings\ScriptingStyle.psd1
- Settings\ScriptSecurity.psd1
Version History
Version | Downloads | Last updated |
---|---|---|
1.24.0 | 2,269,755 | 3/18/2025 |
1.23.0 | 1,118,648 | 10/9/2024 |
1.22.0 | 978,357 | 2/27/2024 |
1.21.0 | 1,473,484 | 9/29/2022 |
1.20.0 | 932,740 | 8/24/2021 |
1.19.1 | 710,722 | 7/28/2020 |
1.19.0 | 190,996 | 5/4/2020 |
1.18.3 | 514,976 | 9/16/2019 |
1.18.2 | 27,342 | 9/3/2019 |
1.18.1 | 115,049 | 6/13/2019 |
1.18.0 | 156,585 | 3/21/2019 |
1.17.1 | 234,452 | 6/5/2018 |
1.16.1 | 110,216 | 9/5/2017 |
1.16.0 | 5,686 | 8/16/2017 |
1.15.0 | 22,104 | 6/21/2017 |
1.14.1 | 2,685 | 6/12/2017 |
1.14.0 | 932 | 6/9/2017 |
1.13.0 | 6,517 | 5/18/2017 |
1.12.0 | 2,308 | 5/9/2017 |
1.11.1 | 7,128 | 4/4/2017 |
1.11.0 | 8,550 | 3/1/2017 |
1.10.0 | 6,243 | 1/19/2017 |
1.9.0 | 5,762 | 12/6/2016 |
1.8.1 | 7,230 | 10/14/2016 |
1.8.0 | 1,295 | 10/8/2016 |
1.7.0 | 5,246 | 8/18/2016 |
1.6.0 | 28,845 | 6/7/2016 |
1.5.0 | 5,092 | 3/30/2016 |
1.4.0 | 3,125 | 2/17/2016 |
1.3.0 | 1,240 | 1/19/2016 |
1.2.0 (current version) | 12,661 | 12/16/2015 |
1.1.1 | 912 | 11/4/2015 |
1.1.0 | 900 | 9/1/2015 |
1.0.2 | 629 | 6/24/2015 |
1.0.1 | 523 | 5/8/2015 |
1.0 | 492 | 4/24/2015 |