Verificare Check_Policy pt logins

Configurare noua (How To)

Situatie

Sunt situatii in care auditorii interni sau externi au nevoie de login-urile de pe serverele de sql ce nu au pusa bifa la CHECK_POLICY. Sau ne dorim noi sa stim care sunt login-urile in aceasta situatie, pentru a nu avea probleme la audit.
CHECK_POLICY este o proprietate prin care credentilalele de sql trebuie sa respecte politica de credentiale din domeniul de windows in care apartine serverul de sql, si este un lucru ce este verificat constant de audit-urile ce vin periodic in firme.
Pentru a gasi aceste login-uri am facut o procedura ce verifica daca login-urile de pe serverul de sql pe care este rulata au bifata proprietatea CHECK POLICY si retuneaza toate login-urile ce nu au aceasta proprietate activata.
Procedura nu are parametri, se creaza si se ruleaza pe serverul de sql dorit si intoarce toti acei logini ce nu sunt conformi cu politica de parole din domeniu.

Solutie

create procedure [dbo].[BD_Check_Policy_Logins]
as

select log.name AS [Name] FROM sys.server_principals AS log
LEFT OUTER JOIN master.dbo.syslanguages AS l ON l.name = log.default_language_name
LEFT OUTER JOIN sys.server_permissions AS sp ON sp.grantee_principal_id = log.principal_id and sp.type = N’COSQ’
LEFT OUTER JOIN sys.sql_logins AS sqllog ON sqllog.principal_id = log.principal_id
LEFT OUTER JOIN sys.credentials AS c ON c.credential_id = log.credential_id
LEFT OUTER JOIN master.sys.certificates AS cert ON cert.sid = log.sid
LEFT OUTER JOIN master.sys.asymmetric_keys AS ak ON ak.sid = log.sid
WHERE (log.type in (‘U’, ‘G’, ‘S’, ‘C’, ‘K’)
AND log.principal_id not between 101 and 255
AND log.name <> N’##MS_AgentSigningCertificate##’)
and CAST(sqllog.is_policy_checked AS bit)<>1

ORDER BY 1

Tip solutie

Permanent
Etichetare:

Voteaza

(23 din 54 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?