SQL және мәліметтер қорының қауіпсіздігі. МҚБЖ-нің қызметтерінің біріне мәліметтер қорының қауіпсіздігін қамтамасыз ету жатады. Реляциялық МҚБЖ-лардың қауіпсіздік жүйесінің негізі SQL тілі болып табылады. Мәліметтерді қорғаудың негізгі үш принципі қолданылады:
мәліметтерді оқуға, енгізуге және жаңартуға арналған кез келген SQL-команда қандай да бір пайдаланушының атынан орындалады;
қорғау объектілері негізінен кестелер мен бейнелеу болады;
әрбір пайдаланушыға қандай да бір әрекеттерді жасауға арналған белгілі бір артықшылықтар (құқықтар) беріледі.
Реляциялық мәліметтер қорының әрбір пайдаланушысына идентификатор – пайдаланушыны бірмәнді анықтайтын қысқаша атау меншіктеледі. Коммерциялық, өнеркәсіптік мәліметтер қорларында пайдаланушыға атауды мәліметтер қорының әкімшісі береді. Дербес ЭЕМ-дарда мәліметтер қорында мәліметтер қорын құрған пайдаланушының тек бір ғана идентификаторы болуы мүмкін. Көптеген МҚБЖ-лар үшін идентификатор ретінде операциялық жүйеде тіркелген пайдаланушылардың атаулары қолданылады. Әдетте, пайдаланушы жұмыс алдында идентификаторды және сонымен байланысты парольді енгізуі тиіс. Әртүрлі пайдаланушылардың бірдей идентификаторлары болуы мүмкін.
Артықшылықтар. SQL стандарттарында төмендегідей артықшылықтар анықталған:
оқуға (SELECT);
жазбаларды енгізуге (INSERT);
жазбаларды жоюға (DELETE);
жазбаларды өзгертуге (UPDATE).
CREATE TABLE және CREATE VIEW операторлары көмегімен кестені немесе бейнелеуді құрған пайдаланушы автоматты түрде осы объектілердің иесіне айналады және осыларға қатысты жоғарыда аталған барлық артықшылықтарға ие болады. Кестенің немесе көрсетімнің иесі басқа пайдаланушыларға осы мәліметтерге қол жеткізуге рұқсат ете алады. Ол үшін GRANT операторы қолданылады, оның синтаксистік диаграммасы төмендегідей (27-сурет)
27-сурет. GRANT операторының синтаксистік диаграммасы
Командада PUBLIC кілттік сөзі артықшылықтарды әрбір пайдаланушыға жекелеп берудің орнына, бірден барлық пайдаланушыларға артықшылықтар беру үшін қолданылады. Егер GRANT операторында WITH GRANT OPTION сөйлемі көрсетілсе, онда артықшылықтарға ие болатын пайдаланушылар өз кезегінде оларды басқа пайдаланушыларға беруі мүмкін.
Мысал. Smith агентіне өз артықшылықтарын басқа пайдаланушыларға ұсыну мүмкіндігін беріп Orders кестесіне ақпаратты қосуға және жоюға рұқсат ету
GRANT INSERT, DELETE
ON Orders
TO Smith WITH GRANT OPTION
Артықшылықтардың күшін жою. Көптеген реляциялық МҚБЖ-ларда GRANT операторы арқылы ұсынылған артықшылықтар REVOКE операторының көмегімен алынып тастауға болады. REVORE операторының синтаксистік диаграммасы төмендегідей (28-сурет)
28-сурет. REVOКE операторының синтаксистік диаграммасы
Мысал. Smith, Pol агенттерінің Orders кестесіне сұраныстар мен өзгерістер енгізуге қатысты артықшылықтарын алып тастау.
REVOКE SELECT, UPDATE
ON Orders
FROM Smith, Pol
Достарыңызбен бөлісу: |