2019-06-11 22:24:35 +00:00
|
|
|
require "helper"
|
|
|
|
require "inspec/resource"
|
|
|
|
require "inspec/resources/security_policy"
|
2015-09-05 16:23:13 +00:00
|
|
|
|
2019-06-11 22:24:35 +00:00
|
|
|
describe "Inspec::Resources::SecurityPolicy" do
|
|
|
|
it "verify processes resource" do
|
|
|
|
resource = load_resource("security_policy")
|
|
|
|
Process.expects(:pid).returns("abc123")
|
2017-11-29 14:16:40 +00:00
|
|
|
|
2015-09-22 16:33:05 +00:00
|
|
|
_(resource.MaximumPasswordAge).must_equal 42
|
2019-06-11 22:24:35 +00:00
|
|
|
_(resource.send('MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Setup\RecoveryConsole\SecurityLevel')).must_equal "4,0"
|
2016-09-11 11:43:36 +00:00
|
|
|
_(resource.SeUndockPrivilege).must_equal ["S-1-5-32-544"]
|
2019-06-11 22:24:35 +00:00
|
|
|
_(resource.SeRemoteInteractiveLogonRight).must_equal ["S-1-5-32-544", "S-1-5-32-555"]
|
2021-08-26 10:04:42 +00:00
|
|
|
_(resource.SeServiceLogonRight).must_equal %w{ DB2ADMNS db2admin }
|
2015-09-05 16:23:13 +00:00
|
|
|
end
|
2017-11-29 14:16:40 +00:00
|
|
|
|
2019-06-11 22:24:35 +00:00
|
|
|
it "parse empty policy file" do
|
|
|
|
resource = load_resource("security_policy")
|
|
|
|
Process.expects(:pid).returns("abc123")
|
2017-11-29 14:16:40 +00:00
|
|
|
backend = resource.inspec.backend
|
2019-06-11 22:24:35 +00:00
|
|
|
backend.commands["Get-Content win_secpol-abc123.cfg"] = backend.mock_command("", "", "", 0)
|
2017-11-29 14:16:40 +00:00
|
|
|
|
|
|
|
_(resource.MaximumPasswordAge).must_be_nil
|
|
|
|
_(resource.send('MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Setup\RecoveryConsole\SecurityLevel')).must_be_nil
|
|
|
|
_(resource.SeUndockPrivilege).must_equal []
|
|
|
|
_(resource.SeRemoteInteractiveLogonRight).must_equal []
|
|
|
|
end
|
2018-01-23 20:31:57 +00:00
|
|
|
|
2019-06-11 22:24:35 +00:00
|
|
|
it "verify sids are successfully translated or returned SID" do
|
|
|
|
resource = load_resource("security_policy", translate_sid: true)
|
|
|
|
Process.expects(:pid).returns("abc123")
|
2018-01-23 20:31:57 +00:00
|
|
|
|
|
|
|
_(resource.MaximumPasswordAge).must_equal 42
|
2019-06-11 22:24:35 +00:00
|
|
|
_(resource.send('MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Setup\RecoveryConsole\SecurityLevel')).must_equal "4,0"
|
2018-01-23 20:31:57 +00:00
|
|
|
_(resource.SeUndockPrivilege).must_equal ["BUILTIN\\Administrators"]
|
2019-06-11 22:24:35 +00:00
|
|
|
_(resource.SeRemoteInteractiveLogonRight).must_equal ["BUILTIN\\Administrators", "S-1-5-32-555"]
|
2021-08-26 10:04:42 +00:00
|
|
|
_(resource.SeServiceLogonRight).must_equal %w{ DB2ADMNS db2admin }
|
2018-01-23 20:31:57 +00:00
|
|
|
end
|
2015-09-05 16:23:13 +00:00
|
|
|
end
|