我正在尝试使用 inspec 验证(mssql)Sql 身份验证模式“集成”。我找不到任何参考。如何使用 ruby 传递 sql 查询,因为我有显示当前 sql 身份验证模式的 sql 查询。
问问题
116 次
1 回答
1
您可以使用 powershell 检查身份验证模式,请参阅本文powershell
以获取有关代码的参考以及有关如何加载程序集的文章:Microsoft.SqlServer.Management.Smo
# Connect to the instance using SMO $s = new-object ('Microsoft.SqlServer.Management.Smo.Server') 'MyServer\MyInstance' [string]$nm = $s.Name [string]$mode = $s.Settings.LoginMode write-output "Instance Name: $nm" write-output "Login Mode: $mode"
因此,您可以编写一个powershell
测试来实现您想要的:
control 'sql auth type' do
impact 1.0
ps_script = <<-EOH
[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.SMO') | out-null
$s = new-object ('Microsoft.SqlServer.Management.Smo.Server') $env:COMPUTERNAME
[string]$nm = $s.Name
[string]$mode = $s.Settings.LoginMode
write-output $mode
EOH
describe powershell(ps_script) do
its('stdout') { should match (/Integrated/)}
end
end
于 2018-06-07T03:03:15.770 回答