我正在尝试使用inspec验证(mssql)Sql身份验证模式“集成”。我找不到任何参考资料。如何使用ruby传递sql查询,因为我有sql查询,显示当前的sql身份验证模式。
答案 0 :(得分:0)
您可以使用powershell检查身份验证模式,有关powershell
代码的参考,请参阅this article,有关Microsoft.SqlServer.Management.Smo
程序集的加载方式,请参阅this article:
# 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