Overview

Remove the right of the guest user to connect to SQL Server databases, except for master, msdb, and tempdb.

A login assumes the identity of the guest user when a login has access to SQL Server but does not have access to a database through its own account and the database has a guest user account. Revoking the CONNECT permission for the guest user will ensure that a login is not able to access database information without explicit access to do so.

Excelent Compliance Solution.

Puppet is an excellent solution to ensure your databases are CIS or STIG compliant. Now you’re looking at information about only one compliance control, but managing total compliance isn’t hard either!

If you you like he prospect of easy way into continuous compliancy with minimal fuss and bother, we suggest taking a look at our solution as your go-to option. Plus, our team can help you get up and running so that you can focus on other areas of your business. What are you waiting for? Get started today!

Benchmarks

This control is used in the following benchmarks:

Skipping

To deliberately skip this control (e.g. meaning don’t use Puppet to enforce this setting), we provide you with three ways:

1) Add mssql_secured::controls::connect_perm_on_guest_user_is_revoked_within_all_sql_server_dbs_excluding_master_msdb_and_tempdb: skip to your hiera data. This will skip this control for ALL databases.
2) Add mssql_secured::controls::connect_perm_on_guest_user_is_revoked_within_all_sql_server_dbs_excluding_master_msdb_and_tempdb::dbname: skip to your hiera data. This will skip this control for specified database only.
3) Add an entry with the content connect_perm_on_guest_user_is_revoked_within_all_sql_server_dbs_excluding_master_msdb_and_tempdb to the array value mssql_secured::skip_list in your hiera data.

Attributes

Attribute Name Short Description
exclude  
title The database to apply the control to.

title

The database to apply the control to.

All controls need an database to apply the control to. Here is a simple example:

mssql_secured::controls::control_name {'MSSQLSERVER':}

In this example, the string DB is the database to apply the control to.

Back to overview of controls::connect_perm_on_guest_user_is_revoked_within_all_sql_server_dbs_excluding_master_msdb_and_tempdb

exclude

The objects to exclude from the control actions. Type: Array

Default:mssql_secured::lookup_setting('exclude', [])

Back to overview of controls::connect_perm_on_guest_user_is_revoked_within_all_sql_server_dbs_excluding_master_msdb_and_tempdb