-- Kérdezze le a felhasználó objektumjogosultságait
exec sp_helprotect NULL, 'UserName'
-- Kérdezd meg a felhasználó szerepét
exec sp_helpuser 'UserName'
-- Kérdezd meg, mely felhasználók rendelkeznek meghatározott rendszerszerepkel
vezető sp_helpsrvrolemember 'rendszergazdálkodó'
-- Beépített szerepek lekérdezése lehetséges
A tree_roles
(
VÁLASZD role_principal_id, member_principal_id
A sys.database_role_members
AHOL member_principal_id = USER_ID('Username')
MINDENKI
VÁLASZD c.role_principal_id,c.member_principal_id
FROM sys.database_role_members c-ként
belső csatlakozás tree_roles
tree_roles.member_principal_id = c.role_principal_id
)
SELECT distinct USER_NAME(role_principal_id) RoleName
A tree_roles
-- Alapvető tábla más jogosultságokkal kapcsolatban
Válassz * a sysusers-től
Válassz * from syspermissions
-- Ki férhet hozzá az SQL Server példányomhoz?
KIVÁLASZT
név UserName, type_desc UserType, is_disabled IsDisabled néven
A sys.server_principals
ahol type_desc ('WINDOWS_LOGIN', 'SQL_LOGIN')
sorrend UserType, név, IsDisabled szerint
-- Ki fér hozzá az adatbázisaihoz?
KIVÁLASZT
dp.name UserName-ként, dp.type_desc UserType-ként, sp.name LoginName-ként, sp.type_desc LoginType-ként
sys.database_principals DP-től
JOIN sys.server_principals sp on dp.principal_id = sp.principal_id
UserType szerinti sorrend
Válassz * sys.database_principals
-- Szerver szerepek
kiválaszt
p.name UserName, p.type_desc UserType, pp.name ServerRoleName, pp.type_desc ServerRoleType név
sys.server_role_members szerepekből
csatlakozz sys.server_principals p on roles.member_principal_id = p.principal_id
Csatlakozz sys.server_principals pp-hez roles.role_principal_id = pp.principal_id
ahol pp.name ('rendszergazdálkodó')
sorrend ServerRoleName, UserName szerint
-- Adatbázis szerepek
KIVÁLASZT
p.name UserName, p.type_desc UserType, pp.name DBRoleName, pp.type_desc DBRoleType pp.is_fixed_role IfFixedRole
sys.database_role_members szerepekből
JOIN sys.database_principals p ON roles.member_principal_id = p.principal_id
JOIN sys.database_principals pp ON roles.role_principal_id = pp.principal_id
ahol pp.name ('db_owner', 'db_datawriter')
-- Mit tehetnek ezek a felhasználók?
KIVÁLASZT
grantor.name GrantorName-ként, dp.state_desc StateDesc-ként, dp.class_desc ClassDesc-ként, dp.permission_name PermissionName-ként ,
OBJECT_NAME(major_id) mint ObjectName, GranteeName = grantee.name
A sys.database_permissions DP-TŐL
CSATLAKOZZ sys.database_principals támogatotthoz dp.grantee_principal_id = grantee.principal_id
CSATLAKOZZ sys.database_principals támogatóhoz dp.grantor_principal_id = grantor.principal_id
ahol permission_name például '%UPDATE%'