SQL Server Grant

SQL Server Grant
I denne artikkelen vil du forstå hvordan du bruker tilskuddserklæringen i SQL Server for å gi tillatelser på et sikret til en rektor.

SQL Server Sikre og rektor

Et sikret refererer til ressursene SQL Server -databasemotorisasjonssystemet kontrollerer tilgangen. Et eksempel vil være en databasetabell.

En rektor refererer til enhver enhet som krever tilgang til enhver SQL Server -ressurs. For eksempel er en bruker som ber om tillatelser på et bord en rektor.

SQL Server tilskuddserklæring

Følgende viser syntaks for tilskuddskommandoen i SQL Server:

Gi tillatelser
På sikret til rektor;

Du må spesifisere tillatelsen du ønsker å tildele rektoren som en komma-separert liste.

ON -nøkkelordet lar deg spesifisere det sikrelige som tillatelsene brukes på. Endelig gjør det til nøkkelordet deg i stand til å angi målets rektor.

For eksempel å opprette en bruker som bruker CREATE brukeruttalelsen, definerer ikke tillatelsene for den brukeren. Det er derfor viktig å bruke tilskuddserklæringen for å angi tillatelsene for den brukeren.

La oss ta et eksempel.

Opprett eksempel pålogging

La oss starte med å lage en prøvepålogging for illustrasjonsformål. Spørringen er som gitt nedenfor:

Lag innlogging Linuxhint
med passord = "passord";

Kommandoen over skal opprette en bruker med brukernavnet Linuxhint og det spesifiserte passordet.

Opprett eksempeldatabase

Vi kan opprette en database der brukeren vil ligge når vi har definert en pålogging. Spørsmålene er som vist:

Drop -databasen hvis eksisterer oppløsning;
opprette databaseresolver;
Bruk resolver;
slippbord hvis finnes oppføringer;
Lag bordoppføringer (
id int ikke null identitet (1,
1) Primærnøkkel,
Server_name varchar (50),
server_address varchar (255) ikke null,
kompresjon_metod varchar (100) standard 'ingen',
size_on_disk float ikke null,
Size_Compription Float,
total_records int ikke null,
init_date dato
);
sett inn
inn i
Oppføringer (servernavn,
server adresse,
komprimering_metod,
størrelse_on_disk,
størrelse_komprimert,
Total_records,
init_date)
verdier
('Mysql', 'localhost: 3306', 'lz77', 90.66,40.04.560000, '2022-01-02'),
('Redis', 'Localhost: 6307', 'Snappy', 3.55.998.2.100000, '2022-03-19'),
('PostgreSql', 'localhost: 5432', 'pglz', 101.2,98.01,340000, '2022-11-11'),
('Elasticsearch', 'Localhost: 9200', 'LZ4', 333.2.300.2.1200000, '2022-10-08'),
('Mongodb', 'Localhost: 27017', 'Snappy', 4.55,4.10.620000, '2021-12-12'),
('Apache Cassandra', 'Localhost: 9042', 'Zstd', 300.3.200.12.10000000, '2020-03-21');

Opprett en bruker for påloggingen

Når vi har opprettet databasen og tabellen, kan vi opprette en bruker for Linuxhint -påloggingen som:

Bruk Resolver
Opprett bruker Linuxhint
for pålogging Linuxhint;

Logg inn som den nye brukeren

La oss deretter logge inn som den nyopprettede brukeren. Kommandoen er som vist:

setuser 'Linuxhint';

Når vi er logget inn, kan vi prøve å se tabellene ved å kjøre SELECT -kommandoen:

Velg * fra oppføringer;

Å kjøre spørringen ovenfor skal returnere en feil:

MSG 229, nivå 14, tilstand 5, linje 379
Den utvalgte tillatelsen ble nektet på objektet 'oppføringer', database 'resolver', skjema 'dbo'.

Dette er fordi Linuxhint -brukeren ikke har noen tillatelser i databasen, inkludert utvalgte tillatelser.

Gi tillatelse til brukeren

Vi må gi valgtillatelser for å la brukeren se informasjonen som er lagret i tabellene.

For det må du logge inn med SQL Server -administrasjonskontoen.

Neste, kjør spørringen som:

Grant Select On oppføringer til Linuxhint;

Når du er utført, logg inn som Linuxhint -brukeren og bruk Select -setningen.

Velg * fra oppføringer;

I dette tilfellet returnerer kommandoen tabellen ettersom brukeren har valgt tillatelser

Du kan også tildele annen tillatelse til brukeren, for eksempel å sette inn og slette som:

bevilgning, slett på oppføringer til Linuxhint;

I dette tilfellet skal Linuxhint -brukeren ha Select, Sett inn og slette tillatelser på oppføringstabellen.

Konklusjon

I dette innlegget utforsket vi bruken av tilskuddskommandoen i SQL Server. Kommandoen lar deg tildele tillatelser til en gitt rektor.