Hvordan bruke SQL Server -rollene

Hvordan bruke SQL Server -rollene

Bruken av SQL -serveren er å lagre, hente og manipulere dataene. En av de viktigste funksjonene i SQL Server er dens evne til å gi og administrere tillatelser til forskjellige brukere og grupper. SQL Server -roller er et kraftig verktøy som lar databaseadministratorene tilordne et sett med tillatelser til en gruppe brukere med lignende behov.

Denne artikkelen gir en guide for hvordan du bruker SQL Server -rollene, inkludert en oversikt over de forskjellige typer tilgjengelige roller, eksempler på hvordan du kan tilordne disse rollene til brukerne, og tips om hvordan du administrerer disse rollene.

Hva er SQL -roller?

Roller lar DBA administrere tillatelsene mer effektivt. Vi må lage rollene først. Deretter tildeler vi tillatelsene til rollene og legger deretter påloggingene til rollene, følgelig.

SQL -serveren støtter hovedsakelig to typer roller:

  • Faste serverroller: Disse rollene har allerede et forhåndsdefinert sett med tillatelser.
  • Brukerdefinerte serverroller: Disse rollene kan endres for å oppfylle kravene i organisasjonen din.

Typer SQL Server -roller

SQL-serveren gir flere innebygde roller som kan brukes til å tildele tillatelser til brukerne. Her er noen av de vanligste rollene og deres tilsvarende tillatelser:

  • Bulkadmin: Medlemmene av Bulkadmin -faste serverrollen kan kjøre "Bulk Insert" -uttalelsen.
  • Sysadmin: Denne rollen har det høyeste nivået av tillatelser og kan utføre enhver handling på SQL Server -forekomsten, inkludert å opprette, endre og slette databaser og pålogginger.
  • ServerAdmin: Denne rollen kan konfigurere innstillinger på servernivå som minnetildeling og nettverksprotokoller, men den kan ikke endre databasene.
  • SecurityAdmin: Denne rollen kan administrere påloggingene og deres tillatelser, inkludert å opprette og endre pålogginger, roller og passord.
  • prosessadmin: ProcessAdmin -faste serverrollen gir medlemmene muligheten til å avslutte eller stoppe prosessene som for øyeblikket utfører innenfor en forekomst av SQL Server -databasemotoren.
  • dbcreator: Dette har tillatelser til å opprette, endre og fjerne databasene, men det har ikke myndighet til å utføre andre administrative plikter.
  • Diskadmin: Denne rollen kan administrere diskfilene som å opprette og slette filer og legge til eller fjerne disker.
  • DataReader: Dataader -rollen har muligheten til å få tilgang til og lese all informasjon som er lagret i brukertabellene til en database.
  • Datawriter: Datawriter -rollen har myndighet til å sette inn, oppdatere og slette dataene fra alle brukertabeller i en database.
  • Ddladmin: Denne rollen kan skape, endre og slippe DDL -triggere og objekter (visninger, tabeller og lagrede prosedyrer).
  • offentlig: Som standard er alle SQL Server -brukere, grupper og roller automatisk inkludert i den offentlige faste serverrollen.

Opprette den brukerdefinerte serverrollen ved hjelp av GUI

Opprette en brukerdefinert serverrolle i SQL Server kan gjøres gjennom GUI ved hjelp av SQL Server Management Studio (SSMS). Følg disse trinnene:

1. Start SQL Server Management Studio (SSMS) og etabler en forbindelse til den spesifikke SQL Server -forekomsten.

2. Gå til sikkerhet -> Serverroller-> Ny serverrolle.

3. Spesifiser et navn for den nye rollen på den generelle siden.

4. Spesifiser sikringene på servernivå som rollen vil ha tillatelser på på Securaables-siden.

5. Legg til brukere eller andre roller i medlemssiden.

Opprette og bruke serverrollen gjennom T-SQL

Å opprette og bruke en serverrolle ved hjelp av T-SQL i SQL-serveren er en annen måte å administrere tillatelser på servernivå. For å opprette en brukerdefinert serverrolle ved hjelp av T-SQL, må vi følge disse trinnene:

1. Åpne et nytt spørringsvindu og utfør følgende kode for å opprette den nye serverrollen:

-- << Create a user defined Server role
Bruk [master]

Opprett serverrolle [Junior DBA]

I dette eksemplet oppretter vi en ny serverrolle - “Junior DBA”.

2. Utfør følgende kode for å gi tillatelser til den nye rollen:

Bruk [master]

Grant Opprett en hvilken som helst database --<< now can create db
Til [Junior DBA]

I dette eksemplet tillater vi tillatelse til den nye rollen, "Junior DBA", til å lage databasene.

Gi vis en hvilken som helst database --<< only can view any db but not tables
Til [Junior DBA]

I dette eksemplet brukes kommandoen "Grant View Awhens Database" for å gi en tillatelse på servernivå som gjør at rollen kan se metadataene for enhver database på serveren. I dette tilfellet gir vi denne tillatelsen til "Junior DBA" -serverrollen som vi opprettet tidligere.

Imidlertid er det viktig å merke seg at tildeling av "Vis en database" -tillatelse ikke gir brukeren eller rollen tillatelse til å få tilgang til data i databasene - det lar dem ganske enkelt se metadataene (for eksempel databasenavn og skjemaer).

3. Legg til en pålogging eller brukerkonto til den nye rollen ved å utføre følgende kode:

--Legg til SQL -pålogginger i ny serverrolle
Alter server rolle [junior dba]
Legg til medlem [Papan]

Alter server rolle [junior dba]
Legg til medlem [Rima]

I dette eksemplet legger vi til “Papan” og “Rima” -kontoer som medlemmer av “Junior DBA” -rollen.

Konklusjon

SQL Server -rollene gir et kraftig verktøy for å administrere tillatelsene i et databasemiljø. Ved å tilordne roller til brukerne, kan du sikre at de har passende tilgangsnivå til dataene de trenger uten å gi dem unødvendige privilegier. Enten du administrerer en liten database eller et stort bedriftssystem, er det en viktig ferdighet som kan hjelpe deg med å opprettholde sikkerhet og integritet til dataene dine å bruke SQL Server -rollene som kan hjelpe deg med å opprettholde sikkerheten og integriteten til dataene dine.