Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 10498|Svar: 0

[Källa] SQL Server för att fråga användarens objektbehörigheter och roller

[Kopiera länk]
Publicerad på 2015-01-28 16:33:32 | | |
Fråga om objektbehörigheter och användares roller i SQL Server[@more@]

-- Fråga användarens objektbehörigheter
exec sp_helprotect NULL, 'Användarnamn'
-- Fråga användarens roll
exec sp_helpuser 'UserName'
-- Fråga vilka användare som har en specificerad systemroll
exec sp_helpsrvrolemember 'sysadmin'
-- Nästlade roller kan frågas
MED tree_roles som
(
VÄLJ role_principal_id, member_principal_id
FRÅN sys.database_role_members
DÄR member_principal_id = USER_ID('Användarnamn')
UNION ALLA
VÄLJ c.role_principal_id,c.member_principal_id
FRÅN sys.database_role_members som c
inre förening tree_roles
på tree_roles.member_principal_id = c.role_principal_id
)
VÄLJ distinkt USER_NAME(role_principal_id) RoleName
FRÅN tree_roles
-- Grundläggande tabell relaterad till andra behörigheter
Välj * från sysusers
Välj * från syspermissions
-- Vem har tillgång till min SQL Server-instans?
UTVALD
namn som UserName, type_desc som UserType, is_disabled som IsDisabled
FRÅN sys.server_principals
där type_desc i('WINDOWS_LOGIN', 'SQL_LOGIN')
ordna efter UserType, namn, IsDisabled
-- Vem har tillgång till mina databaser?
UTVALD
dp.name som Användarnamn, dp.type_desc som Användartyp, sp.name som Inloggningsnamn sp.type_desc som Inloggningstyp
FRÅN sys.database_principals DP
GÅ MED sys.server_principals SP PÅ dp.principal_id = sp.principal_id
ordning efter UserType
Välj * från sys.database_principals
-- Serverroller
utvald
p.name som UserName, p.type_desc som UserType, pp.name som ServerRoleName, pp.type_desc som ServerRoleType
från sys.server_role_members roller
Gå med sys.server_principals p på roles.member_principal_id = p.principal_id
Gå med sys.server_principals PP på roles.role_principal_id = pp.principal_id
där pp.name in('sysadmin')
ordna efter ServerRoleName, UserName
-- Databasroller
UTVALD
p.name som UserName, p.type_desc som UserType, pp.name som DBRoleName, pp.type_desc som DBRoleType, pp.is_fixed_role som IfFixedRole
FRÅN sys.database_role_members roller
GÅ MED sys.database_principals p PÅ roles.member_principal_id = p.principal_id
GÅ MED sys.database_principals PP PÅ roles.role_principal_id = pp.principal_id
där pp.name i('db_owner', 'db_datawriter')
-- Vad kan dessa användare göra?
UTVALD
grantor.name som GrantorName, dp.state_desc som StateDesc, dp.class_desc som ClassDesc, dp.permission_name som PermissionName ,
OBJECT_NAME(major_id) som ObjectName, GranteeName = grantee.name
FRÅN sys.database_permissions DP
GÅ MED sys.database_principals mottagare på dp.grantee_principal_id = grantee.principal_id
GÅ MED sys.database_principals givare på dp.grantor_principal_id = grantor.principal_id
där permission_name som '%UPPDATERING%'






Föregående:SQLSERVER-serverkonfiguration
Nästa:comboBox inställd på skrivskyddad (endast välj)
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com