Vereisten: De website gebruikt SQL Server als persistent opslag en moet het databaseadres, account, wachtwoord en verbindingsstringconfiguratie configurerenSA-gebruikers, de privileges zijn een beetje te grootIk wil een nieuwe gebruiker aanmaken die alleen alle rechten op een bepaalde database toestaat. Dit artikel gebruikt de SQL Server Management Studio-tool om als voorbeeld verbinding te maken met de SQL Server 2019 databaseservice.
Open SQL Server Management Studio en log in met Windows-authenticatie (of gebruik je SA-account).
Maak eerst een nieuwe TestDB-database aan met het volgende commando:
Klik op het linkermenu [Beveiliging] --- [Inloggen], klik vervolgens met de rechtermuisknop op "Inloggen" en klik op [Nieuwe Login], zoals hieronder weergegeven:
Vul in het tabblad Algemeen de inlognaam in, wachtwoord, bevestig wachtwoord en selecteer de standaarddatabase, zoals weergegeven in de volgende figuur:
Schakel over naar de gebruikerskaart, controleer de doeldatabase [TestDB], en verleen publieke db_owner rechten (zodat de nieuwe gebruiker itsvse beheerdersrechten op de database TestDB kan krijgen), zoals weergegeven in de onderstaande figuur:
Klik tenslotte op OK.
We proberen een nieuw aangemaakte gebruiker te gebruiken om in te loggen op de database, zoals te zien is in de volgende figuur:
Hoewel je andere databases kunt zien, krijg je de volgende foutmelding wanneer je probeert ze te benaderen:
Titel: Microsoft SQL Server Management Studio ------------------------------
De database Test is niet toegankelijk. (ObjectExplorer)
------------------------------ Knoop:
Weet je het zeker ------------------------------
Voeg tot slot een beschrijving van de rechten toe:
'db_owner' - heeft volledige databaserechten, inclusief databaserechten verwijderen 'db_accessadmin' - geeft de databasegebruiker alleen toestemming om andere databasegebruikers aan te maken, maar niet de toestemming om ingelogde gebruikers aan te maken. 'db_securityadmin' - Beheer volledige rechten, objecteigendom, rollen en rollidmaatschappen 'db_ddladmin' - kan alle DDL's (Create, Alter en Drop) uitzenden, maar niet GRANT-, REVOKE- of DENY-instructies 'db_backupoperator' -- Toestemming om database-back-up en -herstel toe te staan [back-up en herstel kan ook worden gedaan via SQL Sever Management Studio] 'db_datareader' - kan alle gegevens selecteren uit elke gebruikerstabel in de database 'db_datawriter' - kan alle gegevens in elke gebruikerstabel binnen de database wijzigen 'db_denydatareader' - kan geen gegevens in een gebruikerstabel binnen de database opvragen 'db_denydatawriter' - kan geen gegevens wijzigen in een gebruikerstabel in de database
(Einde)
|