Skip to content

Commit d639835

Browse files
authored
Update sp_Blitz.sql
Moved the db_perms table population out of the non-SA section, removed the filter for only system databases.
1 parent 3900d6e commit d639835

File tree

1 file changed

+23
-22
lines changed

1 file changed

+23
-22
lines changed

sp_Blitz.sql

Lines changed: 23 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -207,6 +207,19 @@ AS
207207
permission_name sysname
208208
);
209209

210+
INSERT
211+
@db_perms
212+
(
213+
database_name,
214+
permission_name
215+
)
216+
SELECT
217+
database_name =
218+
DB_NAME(d.database_id),
219+
fmp.permission_name
220+
FROM sys.databases AS d
221+
CROSS APPLY fn_my_permissions(d.name, 'DATABASE') AS fmp
222+
WHERE fmp.permission_name = N'SELECT' /*Databases where we don't have read permissions*/
210223

211224
/* End of declarations for First Responder Kit consistency check:*/
212225
;
@@ -223,7 +236,9 @@ AS
223236
)
224237
) = 0
225238
BEGIN
226-
SET @sa = 0; /*Setting this to 0 to skip DBCC COMMANDS*/
239+
IF @Debug IN (1, 2) RAISERROR('User not SA, checking permissions', 0, 1) WITH NOWAIT;
240+
241+
SET @sa = 0; /*Setting this to 0 to skip DBCC COMMANDS*/
227242

228243
IF NOT EXISTS
229244
(
@@ -292,20 +307,6 @@ AS
292307
SET @SkipValidateLogins = 1;
293308
END; /*Need execute on sp_validatelogins*/
294309

295-
INSERT
296-
@db_perms
297-
(
298-
database_name,
299-
permission_name
300-
)
301-
SELECT
302-
database_name =
303-
DB_NAME(d.database_id),
304-
fmp.permission_name
305-
FROM sys.databases AS d
306-
CROSS APPLY fn_my_permissions(d.name, 'DATABASE') AS fmp
307-
WHERE fmp.permission_name = N'SELECT'
308-
AND d.database_id < 5; /*Databases where we don't have read permissions*/
309310
END;
310311

311312
SET @crlf = NCHAR(13) + NCHAR(10);
@@ -469,43 +470,43 @@ AS
469470
INSERT #SkipChecks (DatabaseName, CheckID, ServerName)
470471
SELECT
471472
v.*
472-
FROM (VALUES(NULL, NULL, 29)) AS v (DatabaseName, CheckID, ServerName) /*Looks for user tables in model*/
473+
FROM (VALUES(NULL, 29, NULL)) AS v (DatabaseName, CheckID, ServerName) /*Looks for user tables in model*/
473474
WHERE NOT EXISTS (SELECT 1/0 FROM @db_perms AS dp WHERE dp.database_name = 'model');
474475

475476
INSERT #SkipChecks (DatabaseName, CheckID, ServerName)
476477
SELECT
477478
v.*
478-
FROM (VALUES(NULL, NULL, 68)) AS v (DatabaseName, CheckID, ServerName) /*DBCC command*/
479+
FROM (VALUES(NULL, 68, NULL)) AS v (DatabaseName, CheckID, ServerName) /*DBCC command*/
479480
WHERE @sa = 0;
480481

481482
INSERT #SkipChecks (DatabaseName, CheckID, ServerName)
482483
SELECT
483484
v.*
484-
FROM (VALUES(NULL, NULL, 69)) AS v (DatabaseName, CheckID, ServerName) /*DBCC command*/
485+
FROM (VALUES(NULL, 69, NULL)) AS v (DatabaseName, CheckID, ServerName) /*DBCC command*/
485486
WHERE @sa = 0;
486487

487488
INSERT #SkipChecks (DatabaseName, CheckID, ServerName)
488489
SELECT
489490
v.*
490-
FROM (VALUES(NULL, NULL, 92)) AS v (DatabaseName, CheckID, ServerName) /*xp_fixeddrives*/
491+
FROM (VALUES(NULL, 92, NULL)) AS v (DatabaseName, CheckID, ServerName) /*xp_fixeddrives*/
491492
WHERE @SkipXPFixedDrives = 1;
492493

493494
INSERT #SkipChecks (DatabaseName, CheckID, ServerName)
494495
SELECT
495496
v.*
496-
FROM (VALUES(NULL, NULL, 211)) AS v (DatabaseName, CheckID, ServerName) /*xp_regread*/
497+
FROM (VALUES(NULL, 211, NULL)) AS v (DatabaseName, CheckID, ServerName) /*xp_regread*/
497498
WHERE @SkipXPRegRead = 1;
498499

499500
INSERT #SkipChecks (DatabaseName, CheckID, ServerName)
500501
SELECT
501502
v.*
502-
FROM (VALUES(NULL, NULL, 212)) AS v (DatabaseName, CheckID, ServerName) /*xp_regread*/
503+
FROM (VALUES(NULL, 212, NULL)) AS v (DatabaseName, CheckID, ServerName) /*xp_regread*/
503504
WHERE @SkipXPCMDShell = 1;
504505

505506
INSERT #SkipChecks (DatabaseName, CheckID, ServerName)
506507
SELECT
507508
v.*
508-
FROM (VALUES(NULL, NULL, 2301)) AS v (DatabaseName, CheckID, ServerName) /*sp_validatelogins*/
509+
FROM (VALUES(NULL, 2301, NULL)) AS v (DatabaseName, CheckID, ServerName) /*sp_validatelogins*/
509510
WHERE @SkipValidateLogins = 1
510511

511512
IF(OBJECT_ID('tempdb..#InvalidLogins') IS NOT NULL)

0 commit comments

Comments
 (0)