Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 10498|Vastaus: 0

[Lähde] SQL Server käyttäjän objektioikeuksien ja roolien kyselyyn

[Kopioi linkki]
Julkaistu 28.1.2015 16.33.32 | | |
Käyttäjien käyttöoikeuksien ja roolien kysely SQL Serverissä[@more@]

-- Kysy käyttäjän objektin käyttöoikeuksia
exec sp_helprotect NULL, 'UserName'
-- Kysy käyttäjän roolia
exec sp_helpuser 'UserName'
-- Kysy, millä käyttäjillä on määritelty järjestelmärooli
Johtaja sp_helpsrvrolemember 'järjestelmänvalvoja'
-- Sisäkkäisiä rooleja voidaan kysyä
KUN tree_roles ON
(
VALITSE role_principal_id, member_principal_id
sys.database_role_members
MISSÄ member_principal_id = USER_ID('Käyttäjänimi')
UNION ALL
VALITSE c.role_principal_id,c.member_principal_id
FROM sys.database_role_members as c
sisäinen liitos tree_roles
tree_roles.member_principal_id = c.role_principal_id
)
SELECT erillinen USER_NAME(role_principal_id) roolinimi
TÄÄLTÄ tree_roles
-- Perustaulukko, joka liittyy muihin käyttöoikeuksiin
Valitse * järjestelmällisistä käyttäjistä
Valitse * syspermissionsista
-- Kuka pääsee käsiksi SQL Server -instanssiini?
VALIKOIDA
nimi on UserName, type_desc UserType is_disabled IsDisabled
VUODESTA sys.server_principals
missä type_desc in('WINDOWS_LOGIN', 'SQL_LOGIN')
järjestys: UserType, nimi, IsDisabled
-- Kuka pääsee käsiksi tietokantoihini?
VALIKOIDA
dp.name UserName, dp.type_desc UserType, sp.name LoginName, sp.type_desc LoginType
FROM sys.database_principals dp
LIITY sys.server_principals SP ON dp.principal_id = sp.principal_id
järjestys käyttäjätyypin mukaan
Valitse * sys.database_principals
-- Palvelinroolit
valikoida
p.name nimellä UserName, p.type_desc UserType, pp.name ServerRoleName, pp.type_desc ServerRoleType
sys.server_role_members rooleista
Yhdistä sys.server_principals p roles.member_principal_id = p.principal_id
Liity sys.server_principals pp roles.role_principal_id = pp.principal_id
missä pp.name ('järjestelmänvalvoja')
järjestys ServerRoleName, UserName mukaan
-- Tietokantaroolit
VALIKOIDA
p.name UserName, p.type_desc UserType, pp.name DBRoleName, pp.type_desc DBRoleType, pp.is_fixed_role IfFixedRole
sys.database_role_members rooleista
JOIN sys.database_principals p ON roles.member_principal_id = p.principal_id
LIITY sys.database_principals PP ON roles.role_principal_id = pp.principal_id
missä pp.name ('db_owner', 'db_datawriter')
-- Mitä nämä käyttäjät voivat tehdä?
VALIKOIDA
grantor.name nimellä GrantorName, dp.state_desc StateDesc, dp.class_desc ClassDesc, dp.permission_name PermissionName ,
OBJECT_NAME(major_id) muodossa ObjectName, GranteeName = grantee.name
FROM sys.database_permissions dp
LIITY sys.database_principals apurahan saajaan dp.grantee_principal_id = grantee.principal_id
LIITY sys.database_principals myöntäjän dp.grantor_principal_id = grantor.principal_id
missä permission_name kuten '%UPDATE%'






Edellinen:SQLSERVER-palvelimen konfiguraatio
Seuraava:comboBox asetettu vain luku -tilaan (vain valinta)
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com