Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 10498|Απάντηση: 0

[Πηγή] SQL Server για την υποβολή ερωτημάτων σχετικά με τα δικαιώματα και τους ρόλους αντικειμένων του χρήστη

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 28/1/2015 4:33:32 μ.μ. | | |
Υποβολή ερωτημάτων για τα δικαιώματα αντικειμένων και τους ρόλους των χρηστών στον SQL Server[@more@]

-- Ζητήστε τα δικαιώματα αντικειμένου του χρήστη
exec sp_helprotect NULL, 'ΌνομαΧρήστη'
-- Ερώτηση για τον ρόλο του χρήστη
exec sp_helpuser "Όνομα χρήστη"
-- Ερώτημα ποιοι χρήστες έχουν καθορισμένο ρόλο συστήματος
exec sp_helpsrvrolemember 'sysadmin'
-- Μπορούν να ερωτηθούν ένθετοι ρόλοι
ΜΕ tree_roles ως
(
ΕΠΙΛΈΞΤΕ role_principal_id, member_principal_id
ΑΠΟ sys.database_role_members
ΌΠΟΥ member_principal_id = USER_ID('ΌνομαΧρήστη')
ΕΝΩΣΗ ΟΛΑ
ΕΠΙΛΈΞΤΕ c.role_principal_id,c.member_principal_id
ΑΠΟ sys.database_role_members ως γ
εσωτερική ένωση tree_roles
στο tree_roles.member_principal_id = c.role_principal_id
)
SELECT διακριτό USER_NAME(role_principal_id) RoleName
ΑΠΟ tree_roles
-- Βασικός πίνακας που σχετίζεται με άλλα δικαιώματα
Επιλέξτε * από sysusers
Επιλέξτε * από το SysPermissions
-- Ποιος έχει πρόσβαση στην παρουσία μου στον SQL Server;
ΔΙΑΛΈΓΩ
name ως UserName, type_desc ως UserType is_disabled ως IsDisabled
ΑΠΟ sys.server_principals
όπου type_desc in('WINDOWS_LOGIN', 'SQL_LOGIN')
ταξινόμηση κατά UserType, όνομα, IsDisabled
-- Ποιος έχει πρόσβαση στις βάσεις δεδομένων μου;
ΔΙΑΛΈΓΩ
dp.name ως UserName, dp.type_desc ως UserType, sp.name ως LoginName sp.type_desc ως LoginType
ΑΠΟ sys.database_principals dp
JOIN sys.server_principals sp ON dp.principal_id = sp.principal_id
παραγγελία ανά UserType
Επιλέξτε * από sys.database_principals
-- Ρόλοι διακομιστή
διαλέγω
p.name ως UserName, p.type_desc ως UserType, pp.name ως ServerRoleName pp.type_desc ως ServerRoleType
από sys.server_role_members ρόλους
join sys.server_principals p στο roles.member_principal_id = p.principal_id
join sys.server_principals pp στο roles.role_principal_id = pp.principal_id
όπου pp.name in('sysadmin')
ταξινόμηση κατά ServerRoleName, UserName
-- Ρόλοι βάσης δεδομένων
ΔΙΑΛΈΓΩ
p.name ως UserName, p.type_desc ως UserType, pp.name ως DBRoleName, pp.type_desc ως DBRoleType pp.is_fixed_role ως IfFixedRole
ΑΠΟ sys.database_role_members ρόλους
JOIN sys.database_principals p ON roles.member_principal_id = p.principal_id
ΕΓΓΡΑΦΕΙΤΕ sys.database_principals pp ON roles.role_principal_id = pp.principal_id
όπου pp.name in('db_owner', 'db_datawriter')
-- Τι μπορούν να κάνουν αυτοί οι χρήστες;
ΔΙΑΛΈΓΩ
grantor.name ως GrantorName, dp.state_desc ως StateDesc, dp.class_desc ως ClassDesc dp.permission_name ως PermissionName ,
OBJECT_NAME(major_id) ως ObjectName, GranteeName = grantee.name
ΑΠΟ sys.database_permissions dp
ΕΓΓΡΑΦΕΙΤΕ sys.database_principals δικαιούχο στο dp.grantee_principal_id = grantee.principal_id
ΕΓΓΡΑΦΕΙΤΕ sys.database_principals παραχωρητή στο dp.grantor_principal_id = grantor.principal_id
όπου permission_name όπως "%UPDATE%"






Προηγούμενος:Διαμόρφωση διακομιστή SQLSERVER
Επόμενος:comboBox ρυθμισμένο σε μόνο για ανάγνωση (μόνο επιλογή)
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com