inspec 2.0.32 → 2.0.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +101 -101
- data/CHANGELOG.md +2991 -2970
- data/Gemfile +55 -55
- data/LICENSE +14 -14
- data/MAINTAINERS.md +33 -33
- data/MAINTAINERS.toml +52 -52
- data/README.md +446 -437
- data/Rakefile +322 -322
- data/bin/inspec +12 -12
- data/docs/.gitignore +2 -2
- data/docs/README.md +40 -40
- data/docs/dsl_inspec.md +258 -258
- data/docs/dsl_resource.md +93 -93
- data/docs/glossary.md +99 -99
- data/docs/habitat.md +191 -191
- data/docs/inspec_and_friends.md +107 -107
- data/docs/matchers.md +169 -168
- data/docs/migration.md +293 -293
- data/docs/platforms.md +118 -118
- data/docs/plugin_kitchen_inspec.md +49 -49
- data/docs/profiles.md +370 -370
- data/docs/reporters.md +105 -105
- data/docs/resources/aide_conf.md.erb +75 -75
- data/docs/resources/apache.md.erb +67 -67
- data/docs/resources/apache_conf.md.erb +68 -68
- data/docs/resources/apt.md.erb +71 -71
- data/docs/resources/audit_policy.md.erb +47 -47
- data/docs/resources/auditd.md.erb +79 -79
- data/docs/resources/auditd_conf.md.erb +68 -68
- data/docs/resources/aws_cloudtrail_trail.md.erb +140 -140
- data/docs/resources/aws_cloudtrail_trails.md.erb +81 -81
- data/docs/resources/aws_cloudwatch_alarm.md.erb +86 -86
- data/docs/resources/aws_cloudwatch_log_metric_filter.md.erb +151 -151
- data/docs/resources/aws_config_recorder.md.erb +71 -71
- data/docs/resources/aws_ec2_instance.md.erb +106 -106
- data/docs/resources/aws_iam_access_key.md.erb +123 -123
- data/docs/resources/aws_iam_access_keys.md.erb +198 -198
- data/docs/resources/aws_iam_group.md.erb +46 -46
- data/docs/resources/aws_iam_groups.md.erb +43 -43
- data/docs/resources/aws_iam_password_policy.md.erb +76 -76
- data/docs/resources/aws_iam_policies.md.erb +82 -82
- data/docs/resources/aws_iam_policy.md.erb +144 -144
- data/docs/resources/aws_iam_role.md.erb +63 -63
- data/docs/resources/aws_iam_root_user.md.erb +58 -58
- data/docs/resources/aws_iam_user.md.erb +64 -64
- data/docs/resources/aws_iam_users.md.erb +89 -89
- data/docs/resources/aws_kms_keys.md.erb +84 -84
- data/docs/resources/aws_route_table.md.erb +47 -47
- data/docs/resources/aws_s3_bucket.md.erb +134 -134
- data/docs/resources/aws_security_group.md.erb +151 -151
- data/docs/resources/aws_security_groups.md.erb +91 -91
- data/docs/resources/aws_sns_topic.md.erb +63 -63
- data/docs/resources/aws_subnet.md.erb +133 -133
- data/docs/resources/aws_subnets.md.erb +126 -126
- data/docs/resources/aws_vpc.md.erb +120 -120
- data/docs/resources/aws_vpcs.md.erb +48 -48
- data/docs/resources/azure_generic_resource.md.erb +170 -170
- data/docs/resources/azure_resource_group.md.erb +284 -284
- data/docs/resources/azure_virtual_machine.md.erb +347 -347
- data/docs/resources/azure_virtual_machine_data_disk.md.erb +224 -224
- data/docs/resources/bash.md.erb +75 -75
- data/docs/resources/bond.md.erb +90 -90
- data/docs/resources/bridge.md.erb +57 -57
- data/docs/resources/bsd_service.md.erb +67 -67
- data/docs/resources/command.md.erb +138 -138
- data/docs/resources/cpan.md.erb +79 -79
- data/docs/resources/cran.md.erb +64 -64
- data/docs/resources/crontab.md.erb +89 -89
- data/docs/resources/csv.md.erb +54 -54
- data/docs/resources/dh_params.md.erb +205 -205
- data/docs/resources/directory.md.erb +30 -30
- data/docs/resources/docker.md.erb +219 -219
- data/docs/resources/docker_container.md.erb +104 -104
- data/docs/resources/docker_image.md.erb +94 -94
- data/docs/resources/docker_service.md.erb +114 -114
- data/docs/resources/elasticsearch.md.erb +242 -242
- data/docs/resources/etc_fstab.md.erb +125 -125
- data/docs/resources/etc_group.md.erb +75 -75
- data/docs/resources/etc_hosts.md.erb +78 -78
- data/docs/resources/etc_hosts_allow.md.erb +74 -74
- data/docs/resources/etc_hosts_deny.md.erb +74 -74
- data/docs/resources/file.md.erb +526 -515
- data/docs/resources/filesystem.md.erb +41 -41
- data/docs/resources/firewalld.md.erb +107 -107
- data/docs/resources/gem.md.erb +79 -79
- data/docs/resources/group.md.erb +61 -61
- data/docs/resources/grub_conf.md.erb +101 -101
- data/docs/resources/host.md.erb +86 -86
- data/docs/resources/http.md.erb +196 -196
- data/docs/resources/iis_app.md.erb +122 -122
- data/docs/resources/iis_site.md.erb +135 -135
- data/docs/resources/inetd_conf.md.erb +94 -94
- data/docs/resources/ini.md.erb +76 -76
- data/docs/resources/interface.md.erb +58 -58
- data/docs/resources/iptables.md.erb +64 -64
- data/docs/resources/json.md.erb +63 -63
- data/docs/resources/kernel_module.md.erb +120 -120
- data/docs/resources/kernel_parameter.md.erb +53 -53
- data/docs/resources/key_rsa.md.erb +85 -85
- data/docs/resources/launchd_service.md.erb +57 -57
- data/docs/resources/limits_conf.md.erb +75 -75
- data/docs/resources/login_def.md.erb +71 -71
- data/docs/resources/mount.md.erb +69 -69
- data/docs/resources/mssql_session.md.erb +60 -60
- data/docs/resources/mysql_conf.md.erb +99 -99
- data/docs/resources/mysql_session.md.erb +74 -74
- data/docs/resources/nginx.md.erb +79 -79
- data/docs/resources/nginx_conf.md.erb +128 -128
- data/docs/resources/npm.md.erb +60 -60
- data/docs/resources/ntp_conf.md.erb +60 -60
- data/docs/resources/oneget.md.erb +53 -53
- data/docs/resources/oracledb_session.md.erb +52 -52
- data/docs/resources/os.md.erb +141 -141
- data/docs/resources/os_env.md.erb +78 -78
- data/docs/resources/package.md.erb +120 -120
- data/docs/resources/packages.md.erb +67 -67
- data/docs/resources/parse_config.md.erb +103 -103
- data/docs/resources/parse_config_file.md.erb +138 -138
- data/docs/resources/passwd.md.erb +141 -141
- data/docs/resources/pip.md.erb +67 -67
- data/docs/resources/port.md.erb +137 -137
- data/docs/resources/postgres_conf.md.erb +79 -79
- data/docs/resources/postgres_hba_conf.md.erb +93 -93
- data/docs/resources/postgres_ident_conf.md.erb +76 -76
- data/docs/resources/postgres_session.md.erb +69 -69
- data/docs/resources/powershell.md.erb +102 -102
- data/docs/resources/processes.md.erb +109 -109
- data/docs/resources/rabbitmq_config.md.erb +41 -41
- data/docs/resources/registry_key.md.erb +158 -158
- data/docs/resources/runit_service.md.erb +57 -57
- data/docs/resources/security_policy.md.erb +47 -47
- data/docs/resources/service.md.erb +121 -121
- data/docs/resources/shadow.md.erb +146 -144
- data/docs/resources/ssh_config.md.erb +80 -80
- data/docs/resources/sshd_config.md.erb +83 -83
- data/docs/resources/ssl.md.erb +119 -119
- data/docs/resources/sys_info.md.erb +42 -42
- data/docs/resources/systemd_service.md.erb +57 -57
- data/docs/resources/sysv_service.md.erb +57 -57
- data/docs/resources/upstart_service.md.erb +57 -57
- data/docs/resources/user.md.erb +140 -140
- data/docs/resources/users.md.erb +127 -127
- data/docs/resources/vbscript.md.erb +55 -55
- data/docs/resources/virtualization.md.erb +57 -57
- data/docs/resources/windows_feature.md.erb +47 -47
- data/docs/resources/windows_hotfix.md.erb +53 -53
- data/docs/resources/windows_task.md.erb +95 -95
- data/docs/resources/wmi.md.erb +81 -81
- data/docs/resources/x509_certificate.md.erb +151 -151
- data/docs/resources/xinetd_conf.md.erb +156 -156
- data/docs/resources/xml.md.erb +85 -85
- data/docs/resources/yaml.md.erb +69 -69
- data/docs/resources/yum.md.erb +98 -98
- data/docs/resources/zfs_dataset.md.erb +53 -53
- data/docs/resources/zfs_pool.md.erb +47 -47
- data/docs/ruby_usage.md +203 -203
- data/docs/shared/matcher_be.md.erb +1 -1
- data/docs/shared/matcher_cmp.md.erb +43 -43
- data/docs/shared/matcher_eq.md.erb +3 -3
- data/docs/shared/matcher_include.md.erb +1 -1
- data/docs/shared/matcher_match.md.erb +1 -1
- data/docs/shell.md +215 -215
- data/examples/README.md +8 -8
- data/examples/inheritance/README.md +65 -65
- data/examples/inheritance/controls/example.rb +14 -14
- data/examples/inheritance/inspec.yml +15 -15
- data/examples/kitchen-ansible/.kitchen.yml +25 -25
- data/examples/kitchen-ansible/Gemfile +19 -19
- data/examples/kitchen-ansible/README.md +53 -53
- data/examples/kitchen-ansible/files/nginx.repo +6 -6
- data/examples/kitchen-ansible/tasks/main.yml +16 -16
- data/examples/kitchen-ansible/test/integration/default/default.yml +5 -5
- data/examples/kitchen-ansible/test/integration/default/web_spec.rb +28 -28
- data/examples/kitchen-chef/.kitchen.yml +20 -20
- data/examples/kitchen-chef/Berksfile +3 -3
- data/examples/kitchen-chef/Gemfile +19 -19
- data/examples/kitchen-chef/README.md +27 -27
- data/examples/kitchen-chef/metadata.rb +7 -7
- data/examples/kitchen-chef/recipes/default.rb +6 -6
- data/examples/kitchen-chef/recipes/nginx.rb +30 -30
- data/examples/kitchen-chef/test/integration/default/web_spec.rb +28 -28
- data/examples/kitchen-puppet/.kitchen.yml +22 -22
- data/examples/kitchen-puppet/Gemfile +20 -20
- data/examples/kitchen-puppet/Puppetfile +25 -25
- data/examples/kitchen-puppet/README.md +53 -53
- data/examples/kitchen-puppet/manifests/site.pp +33 -33
- data/examples/kitchen-puppet/metadata.json +11 -11
- data/examples/kitchen-puppet/test/integration/default/web_spec.rb +28 -28
- data/examples/meta-profile/README.md +37 -37
- data/examples/meta-profile/controls/example.rb +13 -13
- data/examples/meta-profile/inspec.yml +13 -13
- data/examples/profile-attribute.yml +2 -2
- data/examples/profile-attribute/README.md +14 -14
- data/examples/profile-attribute/controls/example.rb +11 -11
- data/examples/profile-attribute/inspec.yml +8 -8
- data/examples/profile-aws/controls/iam_password_policy_expiration.rb +8 -8
- data/examples/profile-aws/controls/iam_password_policy_max_age.rb +8 -8
- data/examples/profile-aws/controls/iam_root_user_mfa.rb +8 -8
- data/examples/profile-aws/controls/iam_users_access_key_age.rb +8 -8
- data/examples/profile-aws/controls/iam_users_console_users_mfa.rb +8 -8
- data/examples/profile-aws/inspec.yml +11 -11
- data/examples/profile-azure/controls/azure_resource_group_example.rb +24 -24
- data/examples/profile-azure/controls/azure_vm_example.rb +29 -29
- data/examples/profile-azure/inspec.yml +11 -11
- data/examples/profile-sensitive/README.md +29 -29
- data/examples/profile-sensitive/controls/sensitive-failures.rb +9 -9
- data/examples/profile-sensitive/controls/sensitive.rb +9 -9
- data/examples/profile-sensitive/inspec.yml +8 -8
- data/examples/profile/README.md +48 -48
- data/examples/profile/controls/example.rb +23 -23
- data/examples/profile/controls/gordon.rb +36 -36
- data/examples/profile/controls/meta.rb +34 -34
- data/examples/profile/inspec.yml +10 -10
- data/examples/profile/libraries/gordon_config.rb +53 -53
- data/inspec.gemspec +47 -47
- data/lib/bundles/README.md +3 -3
- data/lib/bundles/inspec-artifact.rb +7 -7
- data/lib/bundles/inspec-artifact/README.md +1 -1
- data/lib/bundles/inspec-artifact/cli.rb +277 -277
- data/lib/bundles/inspec-compliance.rb +16 -16
- data/lib/bundles/inspec-compliance/.kitchen.yml +20 -20
- data/lib/bundles/inspec-compliance/README.md +185 -185
- data/lib/bundles/inspec-compliance/api.rb +316 -316
- data/lib/bundles/inspec-compliance/api/login.rb +152 -152
- data/lib/bundles/inspec-compliance/bootstrap.sh +41 -41
- data/lib/bundles/inspec-compliance/cli.rb +254 -254
- data/lib/bundles/inspec-compliance/configuration.rb +103 -103
- data/lib/bundles/inspec-compliance/http.rb +86 -86
- data/lib/bundles/inspec-compliance/support.rb +36 -36
- data/lib/bundles/inspec-compliance/target.rb +98 -98
- data/lib/bundles/inspec-compliance/test/integration/default/cli.rb +93 -93
- data/lib/bundles/inspec-habitat.rb +12 -12
- data/lib/bundles/inspec-habitat/cli.rb +36 -36
- data/lib/bundles/inspec-habitat/log.rb +10 -10
- data/lib/bundles/inspec-habitat/profile.rb +390 -390
- data/lib/bundles/inspec-init.rb +8 -8
- data/lib/bundles/inspec-init/README.md +31 -31
- data/lib/bundles/inspec-init/cli.rb +97 -97
- data/lib/bundles/inspec-init/templates/profile/README.md +3 -3
- data/lib/bundles/inspec-init/templates/profile/controls/example.rb +19 -19
- data/lib/bundles/inspec-init/templates/profile/inspec.yml +8 -8
- data/lib/bundles/inspec-supermarket.rb +13 -13
- data/lib/bundles/inspec-supermarket/README.md +45 -45
- data/lib/bundles/inspec-supermarket/api.rb +84 -84
- data/lib/bundles/inspec-supermarket/cli.rb +73 -73
- data/lib/bundles/inspec-supermarket/target.rb +34 -34
- data/lib/fetchers/git.rb +163 -163
- data/lib/fetchers/local.rb +74 -74
- data/lib/fetchers/mock.rb +35 -35
- data/lib/fetchers/url.rb +204 -204
- data/lib/inspec.rb +24 -24
- data/lib/inspec/archive/tar.rb +29 -29
- data/lib/inspec/archive/zip.rb +19 -19
- data/lib/inspec/backend.rb +92 -92
- data/lib/inspec/base_cli.rb +355 -350
- data/lib/inspec/cached_fetcher.rb +66 -66
- data/lib/inspec/cli.rb +292 -292
- data/lib/inspec/completions/bash.sh.erb +45 -45
- data/lib/inspec/completions/fish.sh.erb +34 -34
- data/lib/inspec/completions/zsh.sh.erb +61 -61
- data/lib/inspec/control_eval_context.rb +179 -179
- data/lib/inspec/dependencies/cache.rb +72 -72
- data/lib/inspec/dependencies/dependency_set.rb +92 -92
- data/lib/inspec/dependencies/lockfile.rb +115 -115
- data/lib/inspec/dependencies/requirement.rb +123 -123
- data/lib/inspec/dependencies/resolver.rb +86 -86
- data/lib/inspec/describe.rb +27 -27
- data/lib/inspec/dsl.rb +66 -66
- data/lib/inspec/dsl_shared.rb +33 -33
- data/lib/inspec/env_printer.rb +157 -157
- data/lib/inspec/errors.rb +13 -13
- data/lib/inspec/exceptions.rb +12 -12
- data/lib/inspec/expect.rb +45 -45
- data/lib/inspec/fetcher.rb +45 -45
- data/lib/inspec/file_provider.rb +275 -275
- data/lib/inspec/formatters.rb +3 -3
- data/lib/inspec/formatters/base.rb +250 -250
- data/lib/inspec/formatters/json_rspec.rb +20 -20
- data/lib/inspec/formatters/show_progress.rb +12 -12
- data/lib/inspec/library_eval_context.rb +58 -58
- data/lib/inspec/log.rb +11 -11
- data/lib/inspec/metadata.rb +247 -247
- data/lib/inspec/method_source.rb +24 -24
- data/lib/inspec/objects.rb +14 -14
- data/lib/inspec/objects/attribute.rb +65 -65
- data/lib/inspec/objects/control.rb +61 -61
- data/lib/inspec/objects/describe.rb +92 -92
- data/lib/inspec/objects/each_loop.rb +36 -36
- data/lib/inspec/objects/list.rb +15 -15
- data/lib/inspec/objects/or_test.rb +40 -40
- data/lib/inspec/objects/ruby_helper.rb +15 -15
- data/lib/inspec/objects/tag.rb +27 -27
- data/lib/inspec/objects/test.rb +87 -87
- data/lib/inspec/objects/value.rb +27 -27
- data/lib/inspec/plugins.rb +60 -60
- data/lib/inspec/plugins/cli.rb +24 -24
- data/lib/inspec/plugins/fetcher.rb +86 -86
- data/lib/inspec/plugins/resource.rb +135 -135
- data/lib/inspec/plugins/secret.rb +15 -15
- data/lib/inspec/plugins/source_reader.rb +40 -40
- data/lib/inspec/polyfill.rb +12 -12
- data/lib/inspec/profile.rb +510 -510
- data/lib/inspec/profile_context.rb +207 -207
- data/lib/inspec/profile_vendor.rb +66 -66
- data/lib/inspec/reporters.rb +54 -50
- data/lib/inspec/reporters/base.rb +24 -24
- data/lib/inspec/reporters/cli.rb +356 -356
- data/lib/inspec/reporters/json.rb +116 -116
- data/lib/inspec/reporters/json_min.rb +48 -48
- data/lib/inspec/reporters/junit.rb +77 -77
- data/lib/inspec/require_loader.rb +33 -33
- data/lib/inspec/resource.rb +186 -186
- data/lib/inspec/rule.rb +266 -266
- data/lib/inspec/runner.rb +345 -345
- data/lib/inspec/runner_mock.rb +41 -41
- data/lib/inspec/runner_rspec.rb +175 -175
- data/lib/inspec/runtime_profile.rb +26 -26
- data/lib/inspec/schema.rb +213 -213
- data/lib/inspec/secrets.rb +19 -19
- data/lib/inspec/secrets/yaml.rb +30 -30
- data/lib/inspec/shell.rb +220 -220
- data/lib/inspec/shell_detector.rb +90 -90
- data/lib/inspec/source_reader.rb +29 -29
- data/lib/inspec/version.rb +8 -8
- data/lib/matchers/matchers.rb +339 -339
- data/lib/resource_support/aws.rb +41 -41
- data/lib/resource_support/aws/aws_backend_base.rb +12 -12
- data/lib/resource_support/aws/aws_backend_factory_mixin.rb +12 -12
- data/lib/resource_support/aws/aws_plural_resource_mixin.rb +21 -21
- data/lib/resource_support/aws/aws_resource_mixin.rb +66 -66
- data/lib/resource_support/aws/aws_singular_resource_mixin.rb +24 -24
- data/lib/resources/aide_conf.rb +159 -160
- data/lib/resources/apache.rb +48 -48
- data/lib/resources/apache_conf.rb +156 -156
- data/lib/resources/apt.rb +149 -149
- data/lib/resources/audit_policy.rb +63 -63
- data/lib/resources/auditd.rb +231 -231
- data/lib/resources/auditd_conf.rb +55 -55
- data/lib/resources/aws/aws_cloudtrail_trail.rb +77 -77
- data/lib/resources/aws/aws_cloudtrail_trails.rb +47 -47
- data/lib/resources/aws/aws_cloudwatch_alarm.rb +62 -62
- data/lib/resources/aws/aws_cloudwatch_log_metric_filter.rb +100 -100
- data/lib/resources/aws/aws_config_recorder.rb +98 -98
- data/lib/resources/aws/aws_ec2_instance.rb +157 -157
- data/lib/resources/aws/aws_iam_access_key.rb +106 -106
- data/lib/resources/aws/aws_iam_access_keys.rb +149 -144
- data/lib/resources/aws/aws_iam_group.rb +56 -56
- data/lib/resources/aws/aws_iam_groups.rb +52 -45
- data/lib/resources/aws/aws_iam_password_policy.rb +116 -116
- data/lib/resources/aws/aws_iam_policies.rb +53 -46
- data/lib/resources/aws/aws_iam_policy.rb +125 -119
- data/lib/resources/aws/aws_iam_role.rb +51 -51
- data/lib/resources/aws/aws_iam_root_user.rb +60 -60
- data/lib/resources/aws/aws_iam_user.rb +111 -111
- data/lib/resources/aws/aws_iam_users.rb +108 -96
- data/lib/resources/aws/aws_kms_keys.rb +53 -46
- data/lib/resources/aws/aws_route_table.rb +61 -61
- data/lib/resources/aws/aws_s3_bucket.rb +115 -115
- data/lib/resources/aws/aws_security_group.rb +93 -93
- data/lib/resources/aws/aws_security_groups.rb +68 -68
- data/lib/resources/aws/aws_sns_topic.rb +53 -53
- data/lib/resources/aws/aws_subnet.rb +88 -88
- data/lib/resources/aws/aws_subnets.rb +53 -53
- data/lib/resources/aws/aws_vpc.rb +69 -69
- data/lib/resources/aws/aws_vpcs.rb +45 -45
- data/lib/resources/azure/azure_backend.rb +377 -377
- data/lib/resources/azure/azure_generic_resource.rb +59 -59
- data/lib/resources/azure/azure_resource_group.rb +152 -152
- data/lib/resources/azure/azure_virtual_machine.rb +264 -264
- data/lib/resources/azure/azure_virtual_machine_data_disk.rb +136 -136
- data/lib/resources/bash.rb +35 -35
- data/lib/resources/bond.rb +68 -68
- data/lib/resources/bridge.rb +122 -122
- data/lib/resources/command.rb +73 -69
- data/lib/resources/cpan.rb +58 -58
- data/lib/resources/cran.rb +64 -64
- data/lib/resources/crontab.rb +169 -170
- data/lib/resources/csv.rb +60 -60
- data/lib/resources/dh_params.rb +82 -82
- data/lib/resources/directory.rb +25 -25
- data/lib/resources/docker.rb +236 -236
- data/lib/resources/docker_container.rb +89 -89
- data/lib/resources/docker_image.rb +83 -83
- data/lib/resources/docker_object.rb +57 -57
- data/lib/resources/docker_service.rb +90 -90
- data/lib/resources/elasticsearch.rb +169 -169
- data/lib/resources/etc_fstab.rb +101 -102
- data/lib/resources/etc_group.rb +152 -156
- data/lib/resources/etc_hosts.rb +82 -81
- data/lib/resources/etc_hosts_allow_deny.rb +122 -123
- data/lib/resources/file.rb +298 -298
- data/lib/resources/filesystem.rb +31 -31
- data/lib/resources/firewalld.rb +143 -144
- data/lib/resources/gem.rb +70 -70
- data/lib/resources/groups.rb +215 -215
- data/lib/resources/grub_conf.rb +237 -237
- data/lib/resources/host.rb +306 -300
- data/lib/resources/http.rb +251 -250
- data/lib/resources/iis_app.rb +101 -104
- data/lib/resources/iis_site.rb +148 -148
- data/lib/resources/inetd_conf.rb +62 -62
- data/lib/resources/ini.rb +29 -29
- data/lib/resources/interface.rb +129 -129
- data/lib/resources/iptables.rb +80 -69
- data/lib/resources/json.rb +117 -117
- data/lib/resources/kernel_module.rb +107 -107
- data/lib/resources/kernel_parameter.rb +58 -58
- data/lib/resources/key_rsa.rb +67 -67
- data/lib/resources/limits_conf.rb +55 -55
- data/lib/resources/login_def.rb +66 -66
- data/lib/resources/mount.rb +88 -88
- data/lib/resources/mssql_session.rb +101 -101
- data/lib/resources/mysql.rb +81 -81
- data/lib/resources/mysql_conf.rb +134 -134
- data/lib/resources/mysql_session.rb +71 -71
- data/lib/resources/nginx.rb +96 -96
- data/lib/resources/nginx_conf.rb +227 -227
- data/lib/resources/npm.rb +48 -48
- data/lib/resources/ntp_conf.rb +58 -58
- data/lib/resources/oneget.rb +71 -71
- data/lib/resources/oracledb_session.rb +139 -139
- data/lib/resources/os.rb +36 -36
- data/lib/resources/os_env.rb +76 -76
- data/lib/resources/package.rb +370 -370
- data/lib/resources/packages.rb +111 -111
- data/lib/resources/parse_config.rb +116 -116
- data/lib/resources/passwd.rb +74 -74
- data/lib/resources/pip.rb +89 -89
- data/lib/resources/platform.rb +109 -109
- data/lib/resources/port.rb +771 -771
- data/lib/resources/postgres.rb +130 -130
- data/lib/resources/postgres_conf.rb +121 -121
- data/lib/resources/postgres_hba_conf.rb +99 -100
- data/lib/resources/postgres_ident_conf.rb +76 -78
- data/lib/resources/postgres_session.rb +71 -71
- data/lib/resources/powershell.rb +53 -57
- data/lib/resources/processes.rb +204 -204
- data/lib/resources/rabbitmq_conf.rb +52 -52
- data/lib/resources/registry_key.rb +296 -296
- data/lib/resources/security_policy.rb +180 -180
- data/lib/resources/service.rb +789 -789
- data/lib/resources/shadow.rb +146 -140
- data/lib/resources/ssh_conf.rb +102 -102
- data/lib/resources/ssl.rb +99 -99
- data/lib/resources/sys_info.rb +28 -28
- data/lib/resources/toml.rb +32 -32
- data/lib/resources/users.rb +654 -654
- data/lib/resources/vbscript.rb +68 -69
- data/lib/resources/virtualization.rb +247 -247
- data/lib/resources/windows_feature.rb +84 -84
- data/lib/resources/windows_hotfix.rb +35 -35
- data/lib/resources/windows_task.rb +102 -105
- data/lib/resources/wmi.rb +110 -113
- data/lib/resources/x509_certificate.rb +143 -143
- data/lib/resources/xinetd.rb +111 -111
- data/lib/resources/xml.rb +46 -46
- data/lib/resources/yaml.rb +47 -47
- data/lib/resources/yum.rb +180 -180
- data/lib/resources/zfs_dataset.rb +60 -60
- data/lib/resources/zfs_pool.rb +49 -49
- data/lib/source_readers/flat.rb +39 -39
- data/lib/source_readers/inspec.rb +75 -75
- data/lib/utils/command_wrapper.rb +27 -27
- data/lib/utils/convert.rb +12 -12
- data/lib/utils/database_helpers.rb +77 -77
- data/lib/utils/erlang_parser.rb +192 -192
- data/lib/utils/filter.rb +272 -272
- data/lib/utils/filter_array.rb +27 -27
- data/lib/utils/find_files.rb +44 -44
- data/lib/utils/hash.rb +41 -41
- data/lib/utils/json_log.rb +18 -18
- data/lib/utils/latest_version.rb +22 -22
- data/lib/utils/modulator.rb +12 -12
- data/lib/utils/nginx_parser.rb +85 -85
- data/lib/utils/object_traversal.rb +49 -49
- data/lib/utils/parser.rb +274 -274
- data/lib/utils/plugin_registry.rb +93 -93
- data/lib/utils/simpleconfig.rb +120 -120
- data/lib/utils/spdx.rb +13 -13
- data/lib/utils/spdx.txt +343 -343
- metadata +2 -2
|
@@ -1,79 +1,79 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: About the postgres_conf Resource
|
|
3
|
-
platform: os
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# postgres_conf
|
|
7
|
-
|
|
8
|
-
Use the `postgres_conf` InSpec audit resource to test the contents of the configuration file for PostgreSQL, typically located at `/etc/postgresql/<version>/main/postgresql.conf` or `/var/lib/postgres/data/postgresql.conf`, depending on the platform.
|
|
9
|
-
|
|
10
|
-
<br>
|
|
11
|
-
|
|
12
|
-
## Syntax
|
|
13
|
-
|
|
14
|
-
A `postgres_conf` resource block declares one (or more) settings in the `postgresql.conf` file, and then compares the setting in the configuration file to the value stated in the test:
|
|
15
|
-
|
|
16
|
-
describe postgres_conf('path') do
|
|
17
|
-
its('setting') { should eq 'value' }
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
where
|
|
22
|
-
|
|
23
|
-
* `'setting'` specifies a setting in the `postgresql.conf` file
|
|
24
|
-
* `('path')` is the non-default path to the `postgresql.conf` file (optional)
|
|
25
|
-
* `should eq 'value'` is the value that is expected
|
|
26
|
-
|
|
27
|
-
<br>
|
|
28
|
-
|
|
29
|
-
## Examples
|
|
30
|
-
|
|
31
|
-
The following examples show how to use this InSpec audit resource.
|
|
32
|
-
|
|
33
|
-
### Test the maximum number of allowed client connections
|
|
34
|
-
|
|
35
|
-
describe postgres_conf do
|
|
36
|
-
its('max_connections') { should eq '5' }
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
### Test system logging
|
|
40
|
-
|
|
41
|
-
describe postgres_conf do
|
|
42
|
-
its('logging_collector') { should eq 'on' }
|
|
43
|
-
its('log_connections') { should eq 'on' }
|
|
44
|
-
its('log_disconnections') { should eq 'on' }
|
|
45
|
-
its('log_duration') { should eq 'on' }
|
|
46
|
-
its('log_hostname') { should eq 'on' }
|
|
47
|
-
its('log_line_prefix') { should eq '%t %u %d %h' }
|
|
48
|
-
its(['pgaudit.log_parameter']) { should cmp 'on' }
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
### Test the port on which PostgreSQL listens
|
|
52
|
-
|
|
53
|
-
describe postgres_conf do
|
|
54
|
-
its('port') { should eq '5432' }
|
|
55
|
-
end
|
|
56
|
-
|
|
57
|
-
### Test the Unix socket settings
|
|
58
|
-
|
|
59
|
-
describe postgres_conf do
|
|
60
|
-
its('unix_socket_directories') { should eq '.s.PGSQL.5432' }
|
|
61
|
-
its('unix_socket_group') { should eq nil }
|
|
62
|
-
its('unix_socket_permissions') { should eq '0770' }
|
|
63
|
-
end
|
|
64
|
-
|
|
65
|
-
where `unix_socket_group` is set to the PostgreSQL default setting (the group to which the server user belongs).
|
|
66
|
-
|
|
67
|
-
<br>
|
|
68
|
-
|
|
69
|
-
## Matchers
|
|
70
|
-
|
|
71
|
-
For a full list of available matchers, please visit our [matchers page](https://www.inspec.io/docs/reference/matchers/).
|
|
72
|
-
|
|
73
|
-
### setting
|
|
74
|
-
|
|
75
|
-
The `setting` matcher tests specific, named settings in the `postgresql.conf` file:
|
|
76
|
-
|
|
77
|
-
its('setting') { should eq 'value' }
|
|
78
|
-
|
|
79
|
-
Use a `setting` matcher for each setting to be tested.
|
|
1
|
+
---
|
|
2
|
+
title: About the postgres_conf Resource
|
|
3
|
+
platform: os
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# postgres_conf
|
|
7
|
+
|
|
8
|
+
Use the `postgres_conf` InSpec audit resource to test the contents of the configuration file for PostgreSQL, typically located at `/etc/postgresql/<version>/main/postgresql.conf` or `/var/lib/postgres/data/postgresql.conf`, depending on the platform.
|
|
9
|
+
|
|
10
|
+
<br>
|
|
11
|
+
|
|
12
|
+
## Syntax
|
|
13
|
+
|
|
14
|
+
A `postgres_conf` resource block declares one (or more) settings in the `postgresql.conf` file, and then compares the setting in the configuration file to the value stated in the test:
|
|
15
|
+
|
|
16
|
+
describe postgres_conf('path') do
|
|
17
|
+
its('setting') { should eq 'value' }
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
where
|
|
22
|
+
|
|
23
|
+
* `'setting'` specifies a setting in the `postgresql.conf` file
|
|
24
|
+
* `('path')` is the non-default path to the `postgresql.conf` file (optional)
|
|
25
|
+
* `should eq 'value'` is the value that is expected
|
|
26
|
+
|
|
27
|
+
<br>
|
|
28
|
+
|
|
29
|
+
## Examples
|
|
30
|
+
|
|
31
|
+
The following examples show how to use this InSpec audit resource.
|
|
32
|
+
|
|
33
|
+
### Test the maximum number of allowed client connections
|
|
34
|
+
|
|
35
|
+
describe postgres_conf do
|
|
36
|
+
its('max_connections') { should eq '5' }
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
### Test system logging
|
|
40
|
+
|
|
41
|
+
describe postgres_conf do
|
|
42
|
+
its('logging_collector') { should eq 'on' }
|
|
43
|
+
its('log_connections') { should eq 'on' }
|
|
44
|
+
its('log_disconnections') { should eq 'on' }
|
|
45
|
+
its('log_duration') { should eq 'on' }
|
|
46
|
+
its('log_hostname') { should eq 'on' }
|
|
47
|
+
its('log_line_prefix') { should eq '%t %u %d %h' }
|
|
48
|
+
its(['pgaudit.log_parameter']) { should cmp 'on' }
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
### Test the port on which PostgreSQL listens
|
|
52
|
+
|
|
53
|
+
describe postgres_conf do
|
|
54
|
+
its('port') { should eq '5432' }
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
### Test the Unix socket settings
|
|
58
|
+
|
|
59
|
+
describe postgres_conf do
|
|
60
|
+
its('unix_socket_directories') { should eq '.s.PGSQL.5432' }
|
|
61
|
+
its('unix_socket_group') { should eq nil }
|
|
62
|
+
its('unix_socket_permissions') { should eq '0770' }
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
where `unix_socket_group` is set to the PostgreSQL default setting (the group to which the server user belongs).
|
|
66
|
+
|
|
67
|
+
<br>
|
|
68
|
+
|
|
69
|
+
## Matchers
|
|
70
|
+
|
|
71
|
+
For a full list of available matchers, please visit our [matchers page](https://www.inspec.io/docs/reference/matchers/).
|
|
72
|
+
|
|
73
|
+
### setting
|
|
74
|
+
|
|
75
|
+
The `setting` matcher tests specific, named settings in the `postgresql.conf` file:
|
|
76
|
+
|
|
77
|
+
its('setting') { should eq 'value' }
|
|
78
|
+
|
|
79
|
+
Use a `setting` matcher for each setting to be tested.
|
|
@@ -1,93 +1,93 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: About the postgres_hba_conf Resource
|
|
3
|
-
platform: linux
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# postgres\_hba\_conf
|
|
7
|
-
|
|
8
|
-
Use the `postgres_hba_conf` InSpec audit resource to test the client authentication data defined in the pg_hba.conf file.
|
|
9
|
-
|
|
10
|
-
<br>
|
|
11
|
-
|
|
12
|
-
## Syntax
|
|
13
|
-
|
|
14
|
-
An `postgres_hba_conf` InSpec audit resource block declares client authentication data that should be tested:
|
|
15
|
-
|
|
16
|
-
describe postgres_hba_conf.where { type == 'local' } do
|
|
17
|
-
its('auth_method') { should eq ['peer'] }
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
where
|
|
21
|
-
|
|
22
|
-
* `'attribute'` is a attribute in the pg hba configuration file
|
|
23
|
-
* `'filter_value'` is the value that is to be filtered for
|
|
24
|
-
* `'value'` is the value that is to be matched expected
|
|
25
|
-
|
|
26
|
-
<br>
|
|
27
|
-
|
|
28
|
-
## Properties
|
|
29
|
-
|
|
30
|
-
'address', 'auth_method', 'auth_params', 'conf_dir' , 'conf_file' , 'database', 'params' ,'type', 'user'
|
|
31
|
-
|
|
32
|
-
<br>
|
|
33
|
-
|
|
34
|
-
## Property Examples
|
|
35
|
-
|
|
36
|
-
### address([String])
|
|
37
|
-
|
|
38
|
-
`address` returns a an array of strings that matches the where condition of the filter table
|
|
39
|
-
|
|
40
|
-
describe postgres_hba_conf.where { type == 'local' } do
|
|
41
|
-
its('address') { should cmp 'value' }
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
### auth_method([String])
|
|
45
|
-
|
|
46
|
-
`auth_method` returns a an array of strings that matches the where condition of the filter table
|
|
47
|
-
|
|
48
|
-
describe postgres_hba_conf.where { type == 'local' } do
|
|
49
|
-
its('auth_method') { should cmp 'value' }
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
### database([String])
|
|
53
|
-
|
|
54
|
-
`database` returns a an array of strings that matches the where condition of the filter table
|
|
55
|
-
|
|
56
|
-
describe postgres_hba_conf.where { type == 'local' } do
|
|
57
|
-
its('database') { should cmp 'value' }
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
### type([String])
|
|
61
|
-
|
|
62
|
-
`type` returns a an array of strings that matches the where condition of the filter table
|
|
63
|
-
|
|
64
|
-
describe postgres_hba_conf.where { database == 'acme_test_db' } do
|
|
65
|
-
its('type') { should cmp 'value' }
|
|
66
|
-
end
|
|
67
|
-
|
|
68
|
-
### user([String])
|
|
69
|
-
|
|
70
|
-
`user` returns a an array of strings that matches the where condition of the filter table
|
|
71
|
-
|
|
72
|
-
describe postgres_hba_conf.where { database == 'acme_test_db' } do
|
|
73
|
-
its('user') { should cmp 'value' }
|
|
74
|
-
end
|
|
75
|
-
|
|
76
|
-
<br>
|
|
77
|
-
|
|
78
|
-
## Matchers
|
|
79
|
-
|
|
80
|
-
This InSpec audit resource matches any service that is listed in the HBA configuration file. For a full list of available matchers, please visit our [matchers page](https://www.inspec.io/docs/reference/matchers/).
|
|
81
|
-
|
|
82
|
-
its('auth_method') { should_not cmp 'peer' }
|
|
83
|
-
|
|
84
|
-
or:
|
|
85
|
-
|
|
86
|
-
its('auth_method') { should cmp 'peer' }
|
|
87
|
-
|
|
88
|
-
For example:
|
|
89
|
-
|
|
90
|
-
describe postgres_hba_conf.where { type == 'type' } do
|
|
91
|
-
its('auth_method') { should cmp 'value' }
|
|
92
|
-
its('user') { should cmp 'value' }
|
|
93
|
-
end
|
|
1
|
+
---
|
|
2
|
+
title: About the postgres_hba_conf Resource
|
|
3
|
+
platform: linux
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# postgres\_hba\_conf
|
|
7
|
+
|
|
8
|
+
Use the `postgres_hba_conf` InSpec audit resource to test the client authentication data defined in the pg_hba.conf file.
|
|
9
|
+
|
|
10
|
+
<br>
|
|
11
|
+
|
|
12
|
+
## Syntax
|
|
13
|
+
|
|
14
|
+
An `postgres_hba_conf` InSpec audit resource block declares client authentication data that should be tested:
|
|
15
|
+
|
|
16
|
+
describe postgres_hba_conf.where { type == 'local' } do
|
|
17
|
+
its('auth_method') { should eq ['peer'] }
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
where
|
|
21
|
+
|
|
22
|
+
* `'attribute'` is a attribute in the pg hba configuration file
|
|
23
|
+
* `'filter_value'` is the value that is to be filtered for
|
|
24
|
+
* `'value'` is the value that is to be matched expected
|
|
25
|
+
|
|
26
|
+
<br>
|
|
27
|
+
|
|
28
|
+
## Properties
|
|
29
|
+
|
|
30
|
+
'address', 'auth_method', 'auth_params', 'conf_dir' , 'conf_file' , 'database', 'params' ,'type', 'user'
|
|
31
|
+
|
|
32
|
+
<br>
|
|
33
|
+
|
|
34
|
+
## Property Examples
|
|
35
|
+
|
|
36
|
+
### address([String])
|
|
37
|
+
|
|
38
|
+
`address` returns a an array of strings that matches the where condition of the filter table
|
|
39
|
+
|
|
40
|
+
describe postgres_hba_conf.where { type == 'local' } do
|
|
41
|
+
its('address') { should cmp 'value' }
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
### auth_method([String])
|
|
45
|
+
|
|
46
|
+
`auth_method` returns a an array of strings that matches the where condition of the filter table
|
|
47
|
+
|
|
48
|
+
describe postgres_hba_conf.where { type == 'local' } do
|
|
49
|
+
its('auth_method') { should cmp 'value' }
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
### database([String])
|
|
53
|
+
|
|
54
|
+
`database` returns a an array of strings that matches the where condition of the filter table
|
|
55
|
+
|
|
56
|
+
describe postgres_hba_conf.where { type == 'local' } do
|
|
57
|
+
its('database') { should cmp 'value' }
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
### type([String])
|
|
61
|
+
|
|
62
|
+
`type` returns a an array of strings that matches the where condition of the filter table
|
|
63
|
+
|
|
64
|
+
describe postgres_hba_conf.where { database == 'acme_test_db' } do
|
|
65
|
+
its('type') { should cmp 'value' }
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
### user([String])
|
|
69
|
+
|
|
70
|
+
`user` returns a an array of strings that matches the where condition of the filter table
|
|
71
|
+
|
|
72
|
+
describe postgres_hba_conf.where { database == 'acme_test_db' } do
|
|
73
|
+
its('user') { should cmp 'value' }
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
<br>
|
|
77
|
+
|
|
78
|
+
## Matchers
|
|
79
|
+
|
|
80
|
+
This InSpec audit resource matches any service that is listed in the HBA configuration file. For a full list of available matchers, please visit our [matchers page](https://www.inspec.io/docs/reference/matchers/).
|
|
81
|
+
|
|
82
|
+
its('auth_method') { should_not cmp 'peer' }
|
|
83
|
+
|
|
84
|
+
or:
|
|
85
|
+
|
|
86
|
+
its('auth_method') { should cmp 'peer' }
|
|
87
|
+
|
|
88
|
+
For example:
|
|
89
|
+
|
|
90
|
+
describe postgres_hba_conf.where { type == 'type' } do
|
|
91
|
+
its('auth_method') { should cmp 'value' }
|
|
92
|
+
its('user') { should cmp 'value' }
|
|
93
|
+
end
|
|
@@ -1,76 +1,76 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: About the postgres_ident_conf Resource
|
|
3
|
-
platform: linux
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# postgres\_ident\_conf
|
|
7
|
-
|
|
8
|
-
Use the `postgres_ident_conf` InSpec audit resource to test the client authentication data defined in the pg_hba.conf file.
|
|
9
|
-
|
|
10
|
-
<br>
|
|
11
|
-
|
|
12
|
-
## Syntax
|
|
13
|
-
|
|
14
|
-
An `postgres_ident_conf` InSpec audit resource block declares client authentication data that should be tested:
|
|
15
|
-
|
|
16
|
-
describe postgres_ident_conf.where { pg_username == 'filter_value' } do
|
|
17
|
-
its('attribute') { should eq ['value'] }
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
where
|
|
21
|
-
|
|
22
|
-
* `'attribute'` is a attribute in the pg ident configuration file
|
|
23
|
-
* `'filter_value'` is the value that is to be filtered for
|
|
24
|
-
* `'value'` is the value that is to be matched expected
|
|
25
|
-
|
|
26
|
-
<br>
|
|
27
|
-
|
|
28
|
-
## Properties
|
|
29
|
-
|
|
30
|
-
'conf_file', 'map_name', 'params', 'pg_username', 'system_username'
|
|
31
|
-
|
|
32
|
-
<br>
|
|
33
|
-
|
|
34
|
-
## Property Examples
|
|
35
|
-
|
|
36
|
-
### map_name([String])
|
|
37
|
-
|
|
38
|
-
`address` returns a an array of strings that matches the where condition of the filter table
|
|
39
|
-
|
|
40
|
-
describe pg_hba_conf.where { pg_username == 'name' } do
|
|
41
|
-
its('map_name') { should eq ['value'] }
|
|
42
|
-
end
|
|
43
|
-
### pg_username([String])
|
|
44
|
-
|
|
45
|
-
`pg_username` returns a an array of strings that matches the where condition of the filter table
|
|
46
|
-
|
|
47
|
-
describe pg_hba_conf.where { pg_username == 'name' } do
|
|
48
|
-
its('pg_username') { should eq ['value'] }
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
### system_username([String])
|
|
52
|
-
|
|
53
|
-
`system_username` returns a an array of strings that matches the where condition of the filter table
|
|
54
|
-
|
|
55
|
-
describe pg_hba_conf.where { pg_username == 'name' } do
|
|
56
|
-
its('system_username') { should eq ['value'] }
|
|
57
|
-
end
|
|
58
|
-
|
|
59
|
-
<br>
|
|
60
|
-
|
|
61
|
-
## Matchers
|
|
62
|
-
|
|
63
|
-
This InSpec audit resource matches any service that is listed in the pg ident configuration file. For a full list of available matchers, please visit our [matchers page](https://www.inspec.io/docs/reference/matchers/).
|
|
64
|
-
|
|
65
|
-
its('pg_username') { should_not eq ['peer'] }
|
|
66
|
-
|
|
67
|
-
or:
|
|
68
|
-
|
|
69
|
-
its('map_name') { should eq ['value'] }
|
|
70
|
-
|
|
71
|
-
For example:
|
|
72
|
-
|
|
73
|
-
describe postgres_ident_conf.where { pg_username == 'name' } do
|
|
74
|
-
its('system_username') { should eq ['value'] }
|
|
75
|
-
its('map_name') { should eq ['value'] }
|
|
76
|
-
end
|
|
1
|
+
---
|
|
2
|
+
title: About the postgres_ident_conf Resource
|
|
3
|
+
platform: linux
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# postgres\_ident\_conf
|
|
7
|
+
|
|
8
|
+
Use the `postgres_ident_conf` InSpec audit resource to test the client authentication data defined in the pg_hba.conf file.
|
|
9
|
+
|
|
10
|
+
<br>
|
|
11
|
+
|
|
12
|
+
## Syntax
|
|
13
|
+
|
|
14
|
+
An `postgres_ident_conf` InSpec audit resource block declares client authentication data that should be tested:
|
|
15
|
+
|
|
16
|
+
describe postgres_ident_conf.where { pg_username == 'filter_value' } do
|
|
17
|
+
its('attribute') { should eq ['value'] }
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
where
|
|
21
|
+
|
|
22
|
+
* `'attribute'` is a attribute in the pg ident configuration file
|
|
23
|
+
* `'filter_value'` is the value that is to be filtered for
|
|
24
|
+
* `'value'` is the value that is to be matched expected
|
|
25
|
+
|
|
26
|
+
<br>
|
|
27
|
+
|
|
28
|
+
## Properties
|
|
29
|
+
|
|
30
|
+
'conf_file', 'map_name', 'params', 'pg_username', 'system_username'
|
|
31
|
+
|
|
32
|
+
<br>
|
|
33
|
+
|
|
34
|
+
## Property Examples
|
|
35
|
+
|
|
36
|
+
### map_name([String])
|
|
37
|
+
|
|
38
|
+
`address` returns a an array of strings that matches the where condition of the filter table
|
|
39
|
+
|
|
40
|
+
describe pg_hba_conf.where { pg_username == 'name' } do
|
|
41
|
+
its('map_name') { should eq ['value'] }
|
|
42
|
+
end
|
|
43
|
+
### pg_username([String])
|
|
44
|
+
|
|
45
|
+
`pg_username` returns a an array of strings that matches the where condition of the filter table
|
|
46
|
+
|
|
47
|
+
describe pg_hba_conf.where { pg_username == 'name' } do
|
|
48
|
+
its('pg_username') { should eq ['value'] }
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
### system_username([String])
|
|
52
|
+
|
|
53
|
+
`system_username` returns a an array of strings that matches the where condition of the filter table
|
|
54
|
+
|
|
55
|
+
describe pg_hba_conf.where { pg_username == 'name' } do
|
|
56
|
+
its('system_username') { should eq ['value'] }
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
<br>
|
|
60
|
+
|
|
61
|
+
## Matchers
|
|
62
|
+
|
|
63
|
+
This InSpec audit resource matches any service that is listed in the pg ident configuration file. For a full list of available matchers, please visit our [matchers page](https://www.inspec.io/docs/reference/matchers/).
|
|
64
|
+
|
|
65
|
+
its('pg_username') { should_not eq ['peer'] }
|
|
66
|
+
|
|
67
|
+
or:
|
|
68
|
+
|
|
69
|
+
its('map_name') { should eq ['value'] }
|
|
70
|
+
|
|
71
|
+
For example:
|
|
72
|
+
|
|
73
|
+
describe postgres_ident_conf.where { pg_username == 'name' } do
|
|
74
|
+
its('system_username') { should eq ['value'] }
|
|
75
|
+
its('map_name') { should eq ['value'] }
|
|
76
|
+
end
|