Rekomenduojama, 2020

Redaktoriaus Pasirinkimas

Skirtumas tarp dotacijos ir atšaukimo

SQL, DCL komandos naudojamos skirtingiems autorizacijos suteikimams vartotojui, šios rūšies autorizacijos yra žinomos kaip privilegija. Grant ir atšaukti komandos yra DCL komandos. „GRANT“ komanda naudojama leidimo suteikimui naudotojams, o REVOKE komanda naudojama leidimo atšaukimui. Pasirinkti, įterpti, atnaujinti ir ištrinti kai kurias privilegijas, įtrauktas į SQL standartus.

Palyginimo diagrama

Palyginimo pagrindasDotacijaAtšaukti
PagrindinisGrant komanda naudojama suteikiant naudotojams teises.Komandos atšaukimas naudojamas pašalinant naudotojų teises.
Kai kontrolė yra decentralizuotaSuteikimas yra paprastesnis.Atšaukimas yra gana sudėtingas atlikti.
Sintaksėdotacija
įjungta
į;
atšaukti
įjungta
nuo;

Dotacijos apibrėžimas

Duomenų bazės administratorius apibrėžia GRANT komandą SQL, kad suteiktų prieigą ar privilegijas duomenų bazės naudotojams. Trys pagrindiniai komponentai, susiję su autorizacija, yra naudotojai, privilegijos (operacijos) ir duomenų bazės objektas. Naudotojas yra tas, kuris inicijuoja programos vykdymą. Operacijos yra komponentas, kuris yra įterptas į taikomąją programą. Operacijos atliekamos duomenų bazės objektuose, tokiuose kaip ryšys arba peržiūros pavadinimas.

GRANT komandų sintezė:

dotacija
įjungta
į;

Čia privilegijų sąrašas gali apimti pasirinkimą, įterpimą, atnaujinimą ir ištrinimą. Šie trys komandos aspektai tikrinami autorizacijos valdymu prieš tęsiant.

Kai santykio (lentelės) R savininko sąskaita A1 suteikia privilegiją kitai R sąskaitai A2, paskyra A2 gali pasiekti santykį R ir yra įgaliota suteikti teises kitai sąskaitai R. Jei A1 atšaukia A2 teises tada, R1, visos teisės, kurias A2 propaguoja, sistema automatiškai panaikins. Taigi, tai, kaip lentelėse nurodytos teisės gali skleisti. Taigi, DBVS, leidžiančios platinti, turėtų būti laikomasi privilegijų, kurios suteikiamos taip, kad privilegijos būtų lengvai atšauktos.

Paimkime pavyzdį, kaip parodyti privilegijų suteikimą. Turime dvi schemas, skirtas lentelėms „Fakultetas ir katedra“ ir „A1“ ir „A2“.

DOKUMENTŲ PASIRINKIMAS, ĮRAŠYMAS, FAKULTŪROS, DEPARTAMENTO Į A1, A2 ATNAUJINIMAS;

Pirmiau pateiktame pavyzdyje sąskaitoje A1 ir A2 leidžiama atlikti pasirinkimo, įterpimo ir atnaujinimo operacijas darbuotojo ir departamento lentelėje.

Atšaukimo apibrėžimas

„SQL“ komanda „ REVOKE“ apibrėžia duomenų bazės naudotojo suteiktas privilegijas (leidimus). Tas, kuris turi įgaliojimus atšaukti teises, yra duomenų bazės administratorius.

REVOKE komandos Sintaksė:

atšaukti
įjungta
nuo;

Ši komanda panaši į dotacijos komandą, išskyrus atšaukimo raktinį žodį ir „nuo“. Pateiktoje komandoje į privilegiją įtrauktos operacijos atšaukiamos konkrečiam naudotojo ar vaidmenų sąrašui. Atšaukimas tampa sudėtingas, kai privilegijos yra perduodamos iš vieno naudotojo į kitą.

Paimkime panašų pavyzdį, kad galėtume parodyti privilegijų atšaukimą.

Atšaukti įdėjimą, atnaujinti FAKULTŪRĄ, KONSTRUKCIJĄ A1, A2;

Pirmiau pateiktame pavyzdyje A1 ir A2 sąskaitos yra atimamos iš jų teisių ir neleidžiama atlikti įterpimo ir atnaujinimo operacijų darbuotojui ir departamento lentelėje.

Pagrindiniai skirtumai tarp dotacijos ir atšaukimo

  1. Grant komanda suteikia teises naudotojui, o atšaukti komandą atšaukia naudotojo teises.
  2. Centralizuotoje sistemoje galima lengvai atlikti DCL komandas GRANT ir REVOKE. Kai kontrolė yra decentralizuota, užklausos yra lankstesnės, bet sudėtingesnės. „GRANT“ komanda yra lengvai tvarkoma, bet komandai „REVOKE“ ji yra rekursyvi.

Išvada

„GRANT“ komanda suteikia privilegijas ar prieigą prie duomenų bazės objektų naudotojų. Kita vertus, „REVOKE“ komanda naudojama teisių ar privilegijų iš vartotojų duomenų bazėje objektams pašalinti.

Top