Συνιστάται, 2024

Επιλογή Συντάκτη

Διαφορά μεταξύ χορήγησης και ανάκλησης

Στην SQL, οι εντολές DCL χρησιμοποιούνται για την εκχώρηση των διαφορετικών εξουσιοδοτήσεων στον χρήστη, αυτοί οι τύποι εξουσιοδοτήσεων είναι γνωστοί ως προνόμια. Οι εντολές Grant and Revoke είναι οι εντολές DCL. Η εντολή GRANT χρησιμοποιείται για την παροχή εξουσιοδότησης στους χρήστες, ενώ η εντολή REVOKE χρησιμοποιείται για την ανάκληση της εξουσιοδότησης. Επιλέξτε, εισάγετε, ενημερώστε και διαγράψτε ορισμένα από τα δικαιώματα που περιλαμβάνονται στα πρότυπα SQL.

Συγκριτικό διάγραμμα

Βάση σύγκρισηςΧορήγησηΑνακαλώ
ΒασικόςΗ εντολή επιχορήγησης χρησιμοποιείται για τη χορήγηση των προνομίων στους χρήστες.Η εντολή Αναίρεση χρησιμοποιείται για την απομάκρυνση των προνομίων από τους χρήστες.
Όταν ο έλεγχος είναι αποκεντρωμένοςΗ χορήγηση είναι απλούστερη.Η ανάκληση είναι αρκετά περίπλοκη για να εκτελέσει.
Σύνταξηχορήγηση
επί
προς το ;
ανακαλώ
επί
από ;

Ορισμός της επιχορήγησης

Ο διαχειριστής της βάσης δεδομένων ορίζει την εντολή GRANT στη SQL για την παροχή πρόσβασης ή προνομίων στους χρήστες της βάσης δεδομένων. Τρία βασικά στοιχεία που εμπλέκονται στην εξουσιοδότηση είναι οι χρήστες, τα προνόμια / s (λειτουργίες) και ένα αντικείμενο βάσης δεδομένων. Ο χρήστης είναι αυτός που ενεργοποιεί την εκτέλεση του προγράμματος εφαρμογής. Οι λειτουργίες είναι το στοιχείο που είναι ενσωματωμένο σε ένα πρόγραμμα εφαρμογής. Οι λειτουργίες εκτελούνται σε αντικείμενα βάσης δεδομένων όπως η σχέση ή το όνομα της προβολής.

ΣΥΝΤΑΞΗ της εντολής GRANT:

χορήγηση
επί
προς το ;

Εδώ η λίστα προνομίων θα μπορούσε να περιλαμβάνει επιλογές επιλογής, εισαγωγής, ενημέρωσης και διαγραφής ή συνδυασμού αυτών. Αυτές οι τρεις πτυχές της εντολής ελέγχονται από τον έλεγχο εξουσιοδότησης πριν προχωρήσουν.

Όταν ένας λογαριασμός κατόχου Α1 της σχέσης (πίνακας) R χορηγεί προνόμια σε άλλο λογαριασμό A2 για R τότε ο λογαριασμός Α2 μπορεί να έχει πρόσβαση στη σχέση R και έχει εξουσιοδότηση να δώσει τα δικαιώματα σε άλλο λογαριασμό στο R. Αν το A1 ανακαλέσει τα δικαιώματα από το A2 στο R1, τότε όλα τα προνόμια που αναπαράγουν το A2 θα ανακληθούν αυτόματα από το σύστημα. Έτσι, έτσι μπορούν να διαδοθούν τα προνόμια στα τραπέζια. Έτσι, ένα ΣΔΒΔ που επιτρέπει τη διάδοση θα πρέπει να ακολουθεί τα προνόμια που παρέχονται έτσι ώστε τα προνόμια να μπορούν να ανακληθούν εύκολα.

Ας πάρουμε ένα παράδειγμα για να απεικονίσουμε τη χορήγηση των προνομίων. Έχουμε δύο σχήματα για τους πίνακες Τμήμα και Τμήμα και τους λογαριασμούς Α1 και Α2.

ΕΠΙΛΟΓΗ ΕΠΙΧΕΙΡΗΣΕΩΝ, ΕΙΣΑΓΩΓΗ, ΕΝΗΜΕΡΩΣΗ ΣΤΗΝ ΣΧΟΛΗ, ΤΜΗΜΑ Α1, Α2.

Στο παραπάνω παράδειγμα, ο λογαριασμός Α1 και Α2 επιτρέπεται να εκτελεί τις εργασίες επιλογής, εισαγωγής και ενημέρωσης στον πίνακα προσωπικού και του τμήματος.

Ορισμός της ανάκλησης

Η εντολή REVOKE στη SQL ορίζεται για να αφαιρέσει τα δικαιώματα που έχουν χορηγηθεί (εξουσιοδοτήσεις) από το χρήστη της βάσης δεδομένων. Αυτός που έχει την εξουσία να αποσύρει τα προνόμια είναι ο διαχειριστής της βάσης δεδομένων.

ΣΥΝΤΑΞΗ της εντολής REVOKE:

ανακαλώ
επί
από ;

Η εντολή είναι παρόμοια με την εντολή επιχορήγησης εκτός από την λέξη-κλειδί ανάκλησης και από το 'από'. Με δεδομένη εντολή, οι λειτουργίες που περιλαμβάνονται στο προνόμιο ακυρώνονται για τον συγκεκριμένο χρήστη ή τη λίστα ρόλων. Η ανάκληση γίνεται πολύπλοκη όταν τα προνόμια πολλαπλασιάζονται από ένα χρήστη σε άλλο.

Ας πάρουμε το παρόμοιο παράδειγμα για να απεικονίσουμε την Ανάκληση των προνομίων.

ΑΠΑΓΟΡΕΥΕΤΕ ΕΙΣΑΓΩΓΗ, ΕΝΗΜΕΡΩΣΗ ΣΤΗΝ ΣΧΟΛΗ, ΤΜΗΜΑ Α1, Α2.

Στο παραπάνω παράδειγμα, οι λογαριασμοί Α1 και Α2 αποσύρονται από τα δικαιώματά τους και δεν επιτρέπεται να εκτελούν εργασίες εισαγωγής και ενημέρωσης στον πίνακα προσωπικού και του τμήματος.

Βασικές διαφορές μεταξύ χορήγησης και ανάκλησης

  1. Η εντολή Grant παρέχει τα δικαιώματα στον χρήστη ενώ η εντολή Revoke αποσύρει τα δικαιώματα από το χρήστη.
  2. Στο κεντρικό σύστημα, οι εντολές DCL GRANT και REVOKE μπορούν εύκολα να εκτελεστούν. Όταν ο έλεγχος είναι αποκεντρωμένος, τα ερωτήματα είναι πιο ευέλικτα αλλά πολύπλοκα. Η εντολή GRANT είναι εύκολο να αντιμετωπιστεί, αλλά στην περίπτωση της εντολής REVOKE, είναι αναδρομικό με τρόπο.

συμπέρασμα

Η εντολή GRANT δίνει τα προνόμια ή την πρόσβαση στους χρήστες στα αντικείμενα της βάσης δεδομένων. Από την άλλη πλευρά, η εντολή REVOKE χρησιμοποιείται για την κατάργηση των δικαιωμάτων ή των προνομίων από τους χρήστες στα αντικείμενα της βάσης δεδομένων.

Top