1
OBS! Figuren visar inte alla aspekter och objekt som är inblandade i säkerhetssystemet. Det finns i princip två sätt att komma åt SQL-Server, det är via Windows login och SQLserver login. Vid Windows login garanterar Windows att man är betrodd och vid SQL Server login loggar man in direkt till SQL Server. I båda fallen krävs att man har ett "Login" i SQL Server (ett slags konto). Om man är administratör i den dator där SQL servern är installerad tillhör man automatiskt ett fördefinierat login som kallas "BUILTIN\Administrators". Ett separat login för administratören behövs då inte. Väl inloggad till Servern kan man eventuellt vara tilldelad en serverroll t ex sysadmin eller dbcreator. Som sysadmin får man alla rättigheter. Som dbcreator har man rätt att skapa databaser och allt som hör till dem. För att komma åt databaser måste man antingen vara sysadmin, vara ägare till databasen eller vara user i databasen. En user i en databas har normalt inga rättigheter utan måste tilldelas dessa uttryckligen för varje objekt i databasen eller så kan user'n bli medlem i en databasroll med fördefinierade rättigheter. Om en user är medlem i t ex databasrollen db_datareader har han rätt läsa i alla tabeller, om han inte blivit nekad (deny) detta någon annanstans. Usern kan också erhålla rätten via ett schema. Objekten i databasen, dvs tabeller, lagrade procedurer, vyer mm. organiseras i "scheman" som fungerar som en behållare för samhörande objekt. Ett schema kan lämpligen ägas av dbo - database owner. När en user skapar ett objekt kommer detta att tillhöra userns default schema som kan vara dbo, eller något annat skapat schema. De kommandon som används till att dela ut, återta och förbjuda rättigheter är GRANT, REVOKE och DENY. Beteckningarna SECURABLE och PRINCIPAL förklaras kortfattat i figuren. 2
3
4
5
6
Om man vid installationen valde mixed mode har man tillgång till både Windows- och SQL-server inloggning. Om det bara går att logga in via Windowskontot så kan man ändra detta här. Det anses vara säkrast att logga in med Windows autentisering. Då har man automatiskt tillträde till SQL-server om man har loggat in till Windows och har ett login-konto i SQL Server. Lägg märke till att både misslyckade och lyckade login-försök kan loggas. 7
För att skapa en nytt login-konto så måste följande anges: Namn Windows eller SQL - Server inloggning Lösenord för SQL - Server inloggning Policy för lösenord Default databas. Detta räcker, men man kan också gå vidare till sidan User Mapping och lägga in det nya login-kontot som user i en eller flera databaser och dela ut rättigheter i dessa. Alla user tillhör automatiskt rollen public. Public har inga rättigheter alls som default. Det kan vara lämpligt att ge public de grundrättigheter som alla user's i databasen ska ha. 8
9
10
I tidigare versioner fanns loginkontot BUILTIN/Administrators som gjorde att administratörer direkt kom in på SQL Server med fulla sysadminrättigheter. I Vista kör en administratör default som en user och det fungerar inte längre. Istället anges ett administratörskonto vid installationen. 11
12