Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL中的Powershell漏洞评估_Sql_Powershell_Security - Fatal编程技术网

SQL中的Powershell漏洞评估

SQL中的Powershell漏洞评估,sql,powershell,security,Sql,Powershell,Security,我想用 作为输出,我需要一个JSON文件,可以将其导入SSMS。 唯一可以生成JSON文件的cmdlet是Export-SqlVulnerabilityAssessmentBaselineSet。但是,作为输出,它会生成类似于一行带一个基线的内容,并且它不包含JSON层次结构,该层次结构可以被SSMS标记为红色,例如: {"Version":"1.0","RuleBaselines":[{"RuleId":"

我想用 作为输出,我需要一个JSON文件,可以将其导入SSMS。 唯一可以生成JSON文件的cmdlet是Export-SqlVulnerabilityAssessmentBaselineSet。但是,作为输出,它会生成类似于一行带一个基线的内容,并且它不包含JSON层次结构,该层次结构可以被SSMS标记为红色,例如:

{"Version":"1.0","RuleBaselines":[{"RuleId":"VA2109","Properties":{"Severity":null,"ExpectedResults":[["xp_instance_regread","public"],["xp_regread","public"]],"UpdatedTime":"2020-10-01T10:28:59.5565389Z","SizeInBytes":82}}]}
我用来生成这个的代码是:

 $scanResult = Invoke-SqlVulnerabilityAssessmentScan -ServerInstance "MyComputer\MainInstance" -Database some_database
 $failedResults = @{}
 $scanResult.Results.GetEnumerator() | Where {$_.Value.Status -eq "Failed"} | foreach {$failedResults[$_.Key] = $_.Value }
 $failedCheckResults = $failedResults["VA2109"].QueryResults
 $baseline = New-SqlVulnerabilityAssessmentBaseline -SecurityCheckId "VA2109" -ExpectedResult $failedCheckResults
 $baselineSet = New-SqlVulnerabilityAssessmentBaselineSet -Baselines $baseline
 $baselineSet | Export-SqlVulnerabilityAssessmentBaselineSet -FolderPath ".\baseline.json"
有人能帮我吗?
谢谢。

有效的JSON文档是什么样子的?我在这个链接中上传了JSON文件(由SSMS生成):您是否尝试过手动导出扫描结果<代码>$scanResult |转换为Json-深度7 |设置内容-路径。\scanResult.JsonMathias R.Jessen,感谢您的帮助。请检查来自SSMS:和Powershell:的文件。不幸的是,结构不同,SSMS不会从convertto json cmdlet读取json文件。