User rights on database

Configurare noua (How To)

Situatie

Mai jos este o procedura ce intoarce, pentru baza pe care este rulata, toate drepturile utilizatorilor pe obiectele din acea baza , mai exact returneaza cine a dat dreptul, cui i-a dat dreptul, tipul obiectului la care se refera dreptul (functie, procedura, etc), tipul permisiunii (select, exec, etc) precum si numele obiectului pe care este acordata permisiunea.

Solutie

alter procedure UserRights_prc

as

SELECT
grantor_principal.name AS [Grantor],
grantee_principal.name AS [Grantee],
prmssn.permission_name AS [Permission],
sp.type_desc as type,
sp.name

FROM
sys.all_objects AS sp
INNER JOIN sys.database_permissions AS prmssn ON prmssn.major_id=sp.object_id AND prmssn.minor_id=0 AND prmssn.class=1
INNER JOIN sys.database_principals AS grantor_principal ON grantor_principal.principal_id = prmssn.grantor_principal_id
INNER JOIN sys.database_principals AS grantee_principal ON grantee_principal.principal_id = prmssn.grantee_principal_id
WHERE
(SCHEMA_NAME(sp.schema_id)=’dbo’)
ORDER BY sp.type

Tip solutie

Permanent
Etichetare:

Voteaza

(13 din 28 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?