360 likes | 486 Vues
MS SQL Server 2008. Uživatelé, Role, Schémata. Pavel Váňa VŠFS 21300 @ mail.vsfs.cz. Osnova. Zabezpečení SQL Serveru Oprávnění Role Serverové Databázové Vybrané operace s loginy , rolemi Správa db oprávnění Objektová oprávnění Schémata Kontrola přístupu uživatelů. Princip.
E N D
MS SQL Server 2008 Uživatelé, Role, Schémata Pavel Váňa VŠFS 21300@mail.vsfs.cz
Osnova • Zabezpečení SQL Serveru • Oprávnění • Role • Serverové • Databázové • Vybrané operace s loginy, rolemi • Správa db oprávnění • Objektová oprávnění • Schémata • Kontrola přístupu uživatelů
Princip LOGIN – přihlášení k SQL Serveru USER – přístup k jednotlivým db ROLE – oprávnění používat jednotlivé příkazy SCHEMA – kontejner objektů, vlastněn userem, vlastnictví je přenositelné
Zabezpečení SQL Serveru Oprávnění • Objektová • Příkazová • Implicitní
Zabezpečení SQL Serveru Ověřovacírežimy SQL Serveru: • Windows authentication BUILTIN\<jméno účtu> JMÉNOPOČÍTAČE\<jméno účtu> (BUILTIN\Administrators) • SQL Server Authentication
Windows Authentication SECURITY > Logins > New Login
Úrovně přístupu: • Přiřazením do rolí • Povolenímpřístupu k určitým databázím • Povolenímnebozákazempřístupu k objektům
Role • Serverové: • Bulkadmin (BULK INSERT) • Dbcreator (ALTER,CREATE,DROP,EXTEND,RESTORE DATABASE,RESTORE LOG, sp_renamedb…) • Diskadmin(DISK INIT, sp_dropdevice,…) • Processadmin • Public (default) • Securityadmin • Serveradmin • Setupadmin • Sysadmin
Databázové role Oprávněnínaúrovni db: • Uživatelemdefinované role • Uživatelemdefinovanéaplikační role • Předdefinovanénebosystémovédatabázové role
Předdefinované db role • dbo/db_owner • db_accessadmin • db_backupoperator • db_datareader • db_datawriter • db_ddladmin • db_denydatareader • db_denydatawriter • db_securityadmin • public
Vybrané operace s loginy, rolemi • Správa přihlašovacích jmen Security > Logins > uživatel > Properties
Vybrané operace s loginy, rolemi • Vytváření přihlašovacích jmen CREATE LOGIN JaneDoe WITH PASSWORD = ‘heslo’ CREATE LOGIN JaneDoe FROM WINDOWS • Modifikace přihlašovacích jmen ALTER LOGIN KarelNovak WITH NAME NovakKarel ALTER LOGIN KarelNovak ENABLE • Povolení / zákaz vstupu na server sp_grantlogin‘jmeno’ sp_denylogin ‘jmeno’ SECURITY > LOGINS > uživatel > PROPERTIES
Vybrané operace s loginy, rolemi • Povolení / zákaz / odemčení přihlašovacích jmen SECURITY > LOGINS > uživatel > PROPERTIES
Vybrané operace s loginy, rolemi • Odstranění přihlašovacího jména SECURITY > LOGINS > uživatel > DELETE sp_revokelogin‘jmeno’ DROP LOGIN jmeno • Změna hesla SECURITY > LOGINS > uživatel > PROPERTIES sp_password‘stareHeslo’ . ’noveHeslo’ . ‘jmeno’
Vybrané operace s loginy, rolemi • Přiřazení role přihlašovacímu jménu SECURITY > LOGINS > uživatel > PROPERTIES sp_addsrvrolemember‘jmeno’ . ‘’role’ SECURITY > SERVER ROLES > role > PROPERTIES
Vybrané operace s loginy, rolemi • Řízení přístupu k db SECURITY > LOGINS > uživatel > PROPERTIES
Vybrané operace s loginy, rolemi • Přiřazení rolí více uživatelům DATABASES > db > SECURITY > ROLES > DATABASE ROLES > role > PROPERTIES
Vybrané operace s loginy, rolemi • Vytváření db rolí DATABASES > db > SECURITY > ROLES > DATABASE ROLES > NEW
Vybrané operace s loginy, rolemi • Vytváření aplikačních db rolí DATABASES > db > SECURITY > ROLES > APPLICATION ROLES > NEW • Správa aplikačních rolí sp_addapprole‘nazevRole’ . ‘heslo’ sp_dropapprole ‘nazevRole’ sp_setapprole ‘nazevRole’ . ‘heslo’ . ‘kodovani’ • Přidání uživatele do aktuální db CREATE USER jmeno FOR LOGIN prihlJmeno • Odstranění uživatele z db DROP USER jmeno • Správa členů db rolí sp_addrolemember‘nazevRole’ . ‘bezpecnostniUcet’ sp_droprolemember ‘nazevRole’ . ‘bezpecnostniUcet’ sp_helprolemember ‘nazevRole’
Správadb oprávnění • GRANT • REVOKE • DENY DATABASES > db > PROPERTIES > PERMISSIONS GRANT co ON kde TO kdo GRANT CREATE TABLE ON Predeni TO JaneDoe WITH GRANT OPTION
Objektová oprávnění DATABASES > db > SECURITY > USERS > user > PROPERTIES > SECURABLES
Schémata • Kontejner objektů • Vrstva mezi uživatelem a objektem • Nazev_db.nazev_schematu.nazev_objektu • Vytvoření schematu DATABASES > db > SECURITY > SCHEMAS > NEW SCHEMA CREATE SCHEMA schema_name
Schémata Změna vlastnictví objektu - tabulek ALTER SCHEMA cilove_schema TRANSFER zdrojove_schema.presouvany_objekt
Schémata Smazání schématu DROP SCHEMA jmeno_schematu DATABASES > db >SECURITY > SCHEMAS > schema >DELETE
Kontrola přístupů uživatelů SERVER > PROPERTIES > SECURITY > LOGIN AUDITING Logy: MANAGEMENT > SQL SERVER LOGS > VIEW
Použité zdroje: • Microsoft SQL Server 2005 – Kapesní rádce administrátora, William R. Stanek • SQL Server 2008 forDevelopers, Robin Dewson • http://msdn.microsoft.com/en-us/library/bb545450%28v=MSDN.10%29.aspx • http://www.quackit.com/sql_server/sql_server_2008/tutorial/