Hoe de SQL Server-rollen te gebruiken

Hoe De Sql Server Rollen Te Gebruiken



Het gebruik van de SQL Server is het opslaan, ophalen en manipuleren van de gegevens. Een van de belangrijkste kenmerken van de SQL Server is de mogelijkheid om machtigingen te verlenen en te beheren aan verschillende gebruikers en groepen. SQL Server-rollen zijn een krachtige tool waarmee de databasebeheerders een set machtigingen kunnen toewijzen aan een groep gebruikers met vergelijkbare behoeften.

Dit artikel bevat een handleiding voor het gebruik van de SQL Server-rollen, inclusief een overzicht van de verschillende typen beschikbare rollen, voorbeelden van het toewijzen van deze rollen aan de gebruikers en tips voor het beheren van deze rollen.







Wat zijn SQL-rollen?

Met rollen kan de DBA de machtigingen efficiënter beheren. We moeten eerst de rollen maken. Vervolgens wijzen we de machtigingen toe aan de rollen en voegen we vervolgens de logins toe aan de rollen.



De SQL Server ondersteunt hoofdzakelijk twee soorten rollen:



  • Vaste serverrollen: Deze rollen hebben al een vooraf gedefinieerde set machtigingen.
  • Door de gebruiker gedefinieerde serverrollen: Deze rollen kunnen worden gewijzigd om te voldoen aan de vereisten van uw organisatie.

Soorten SQL Server-rollen

De SQL Server biedt verschillende ingebouwde rollen die kunnen worden gebruikt om machtigingen aan de gebruikers toe te wijzen. Hier zijn enkele van de meest voorkomende rollen en hun bijbehorende machtigingen:





  • bulkbeheerder: De leden van de vaste serverrol bulkadmin kunnen de instructie 'BULK INSERT' uitvoeren.
  • systeembeheerder: Deze rol heeft het hoogste machtigingsniveau en kan elke actie op de SQL Server-instantie uitvoeren, inclusief het maken, wijzigen en verwijderen van de databases en aanmeldingen.
  • serverbeheerder: Deze rol kan de instellingen op serverniveau configureren, zoals geheugentoewijzing en netwerkprotocollen, maar kan de databases niet wijzigen.
  • beveiligingsbeheerder: Deze rol kan de aanmeldingen en hun machtigingen beheren, inclusief het maken en wijzigen van de aanmeldingen, rollen en wachtwoorden.
  • procesadmin: De vaste serverrol processadmin geeft haar leden de mogelijkheid om de processen die momenteel worden uitgevoerd binnen een instance van de SQL Server Database Engine te beëindigen of te stoppen.
  • dbcreator : Dit heeft de rechten om de databases aan te maken, aan te passen en te verwijderen, maar het heeft niet de bevoegdheid om andere administratieve taken uit te voeren.
  • schijfbeheerder: Deze rol kan de schijfbestanden beheren, zoals het maken en verwijderen van bestanden en het toevoegen of verwijderen van schijven.
  • gegevenslezer: De rol van datareader heeft de mogelijkheid om toegang te krijgen tot alle informatie die is opgeslagen in de gebruikerstabellen van een database en deze te lezen.
  • gegevensschrijver: De rol van datawriter heeft de bevoegdheid om de gegevens in te voegen, bij te werken en te verwijderen uit alle gebruikerstabellen in een database.
  • ddladmin: Deze rol kan de DDL-triggers en objecten (views, tabellen en opgeslagen procedures) maken, wijzigen en verwijderen.
  • openbaar: Standaard worden alle SQL Server-gebruikers, -groepen en -rollen automatisch opgenomen in de openbare vaste serverrol.

De door de gebruiker gedefinieerde serverrol maken met behulp van GUI

Het creëren van een door de gebruiker gedefinieerde serverrol in SQL Server kan worden gedaan via de GUI met behulp van de SQL Server Management Studio (SSMS). Volg deze stappen om een ​​door de gebruiker gedefinieerde serverrol te maken met behulp van de GUI in SSMS:

1. Start de SQL Server Management Studio (SSMS) en breng een verbinding tot stand met de specifieke SQL Server-instantie.



2. Ga naar Beveiliging -> Serverrollen-> Nieuwe serverrol.

3. Geef een naam op voor de nieuwe rol op de pagina Algemeen.

4. Specificeer op de pagina Securables de beveiligbare items op serverniveau waarvoor de rol machtigingen heeft.

5. Voeg gebruikers of andere rollen toe op de pagina Leden.

De serverrol maken en gebruiken via T-SQL

Het maken en gebruiken van een serverrol met behulp van T-SQL in de SQL Server is een andere manier om machtigingen op serverniveau te beheren. Om een ​​door de gebruiker gedefinieerde serverrol te maken met behulp van T-SQL, moeten we deze stappen volgen:

1. Open een nieuw queryvenster en voer de volgende code uit om de nieuwe serverrol te maken:

-- << Creëer een door de gebruiker gedefinieerde serverrol

GEBRUIK [meester]

GAAN

SERVER ROL AANMAKEN [junior DBA]

GAAN

In dit voorbeeld creëren we een nieuwe serverrol - 'junior DBA'.

2. Voer de volgende code uit om machtigingen te verlenen aan de nieuwe rol:

gebruik [meester]

GAAN

GRANT CREATE ELKE DATABASE --<< kan nu db creëren

NAAR [junior DBA]

GAAN

In dit voorbeeld geven we toestemming aan de nieuwe rol, 'junior DBA', om de databases aan te maken.

GRANT VIEW ELKE DATABASE --<< kan alleen elke database bekijken, maar geen tabellen

NAAR [junior DBA]

GAAN

In dit voorbeeld wordt de opdracht 'GRANT VIEW ANY DATABASE' gebruikt om toestemming op serverniveau te verlenen waarmee de rol de metagegevens voor elke database op de server kan zien. In dit geval verlenen we deze toestemming aan de 'junior DBA'-serverrol die we eerder hebben gemaakt.

Het is echter belangrijk op te merken dat het verlenen van de machtiging 'WELKE DATABASE BEKIJKEN' de gebruiker of de rol geen toestemming geeft om toegang te krijgen tot gegevens in de databases - het stelt hen alleen in staat om de metadata te zien (zoals databasenamen en schema's).

3. Voeg een login of gebruikersaccount toe aan de nieuwe rol door de volgende code uit te voeren:

--add sql logins aan nieuwe serverrol

SERVER-ROL WIJZIGEN [junior DBA]

LID TOEVOEGEN [Bestuur]

GAAN

SERVER-ROL WIJZIGEN [junior DBA]

LID TOEVOEGEN [Rima]

GAAN

In dit voorbeeld voegen we de accounts 'Papan' en 'Rima' toe als leden van de rol 'junior DBA'.

Conclusie

De SQL Server-rollen bieden een krachtig hulpmiddel om de machtigingen in een databaseomgeving te beheren. Door rollen aan de gebruikers toe te wijzen, kunt u ervoor zorgen dat ze het juiste toegangsniveau hebben tot de gegevens die ze nodig hebben, zonder ze onnodige rechten te geven. Of u nu een kleine database beheert of een groot bedrijfssysteem, inzicht in het gebruik van de SQL Server-rollen is een belangrijke vaardigheid die u kan helpen de veiligheid en integriteit van uw gegevens te behouden.