Lycée   >   Terminale STMG   >   Sciences de gestion et numérique   >   Langage de contrôle de données (LCD)

Langage de contrôle de données (LCD)

  • Fiche de cours
  • Quiz
  • Profs en ligne
Objectif : que sont une permission et une restriction de données ?

1. Introduction
Il arrive que plusieurs personnes travaillent simultanément sur une base de données. Cependant, en fonction de leurs besoins, elles n'auront pas toutes la même utilisation de la base au même moment. Certaines peuvent par exemple avoir besoin de modifier ou supprimer des données dans la table, pendant que d'autres ont seulement un besoin de consultation de données.
Ainsi, il est possible de définir des permissions pour chaque personne en leur octroyant un mot de passe. Cette tâche incombe à l'administrateur de la base de données (en anglais DBA, DataBase Administrator). Il doit dans un premier temps définir les besoins de chacun, puis les appliquer à la base de données sous forme de permissions.

Le langage SQL permet d'effectuer ces opérations grâce à deux clauses :

GRANT permet d'accorder des droits à un utilisateur (parfois plusieurs sur certains SGBD) .
REVOKE permet de retirer des droits à un utilisateur (ou plusieurs sur certains SGBD).

Les permissions (appelées aussi droits ou privilèges) peuvent être définies pour chaque clause. D'autre part, il est aussi possible de définir des rôles, c'est-à-dire de permettre à d'autres utilisateurs d'accorder des permissions.

Les privilèges sont les clauses qui peuvent être autorisées ou retirées à un utilisateur. Les principales sont :

- DELETE : pour supprimer les données d'une table ;
- INSERT : pour ajouter des données à une table ;
- SELECT : pour accéder aux données d'une table ;
- UPDATE : pour mettre à jour les données d'une table.

Seule la personne qui a créé un élément (table, vue ou index) a le pouvoir d'accorder ou de retirer des droits sur cet élément. Cette personne a la possibilité de transmettre ce droit d'accorder/retirer des droits à un bénéficiaire qui aura à son tour le droit de transmettre ce pouvoir sur ces éléments. Il nous faut donc étudier l’attribution des permissions mais aussi le retrait de celles-ci.

2. L’attribution des permissions
La clause GRANT permet d'attribuer des permissions à un ou plusieurs utilisateurs sur un ou plusieurs éléments de la base de données. La syntaxe de cette clause est la suivante :
GRANT Liste_de_permissions ON Liste_d_objets TO Liste_d_utilisateurs
[WITH GRANT OPTION];


L'option WITH GRANT OPTION permet de définir si l'utilisateur peut lui-même accorder à un autre utilisateur les permissions qu'on lui accorde sur les éléments.

Pour faciliter l'attribution des permissions, il existe des mots clés qui permettent d'éviter à avoir à saisir l'ensemble des utilisateurs dans le cas d'une autorisation collective ou bien de citer l'ensemble des permissions :
• le mot clé PUBLIC en lieu et place de la liste d'utilisateurs permet d'accorder les privilèges sur le ou les objets à l'ensemble des utilisateurs ;
• le mot clé ALL en lieu et place de la liste de permissions permet d'accorder tous les privilèges aux utilisateurs présents dans la liste.

En précisant entre parenthèses un nom de colonne pour un privilège, il est possible de limiter le privilège à la colonne (ou la liste de colonnes) entre parenthèses, par exemple :

GRANT UPDATE(Nom,Prenom)
ON Etudiants
TO Jerome,Francois,Georges
WITH GRANT OPTION;


L'option WITH GRANT OPTION autorise donc plusieurs utilisateurs à accorder des permissions à un même utilisateur, il y a donc des règles à respecter lors du retrait des permissions à un utilisateur.
3. Le retrait des permissions
La clause REVOKE permet de retirer des permissions à un ou plusieurs utilisateurs sur un ou plusieurs éléments de la base de données. La syntaxe de cette clause est la suivante :

REVOKE
[GRANT OPTION FOR] Liste_de_permissions
ON Liste_d_objets
FROM Liste_d_utilisateurs;


L'option GRANT OPTION FOR supprime le droit d'un utilisateur à accorder des permissions à un autre utilisateur.

Pour faciliter le retrait des permissions, il existe des mots clés qui permettent d'éviter à avoir à saisir l'ensemble des utilisateurs dans le cas d'une autorisation collective ou bien de citer l'ensemble des permissions :
• le mot clé PUBLIC en lieu et place de la liste d'utilisateurs permet de retirer les privilèges sur le ou les objets à l'ensemble des utilisateurs ;
• le mot clé ALL en lieu et place de la liste de permissions permet de retirer tous les privilèges aux utilisateurs présents dans la liste.

En précisant entre parenthèses un nom de colonne pour un privilège, il est possible de limiter la restriction de privilège à la colonne (ou la liste de colonnes) entre parenthèses, par exemple :

REVOKE
[GRANT OPTION FOR] UPDATE(Nom,Prenom)
ON Etudiants
FROM PUBLIC


L'attribution et la révocation de droits pose deux problèmes :
• lorsque l'on retire un droit à un utilisateur, il faut que ce droit soit retiré aux utilisateurs auxquels il a accordé le droit ;
• un utilisateur peut avoir reçu un droit de plusieurs utilisateurs.

Il s'agit donc de retirer les droits des utilisateurs l'ayant obtenu de quelqu'un qui ne l'a plus en prenant en compte le fait qu'il peut l'avoir de plusieurs personnes simultanément.

L’essentiel

Le langage de contrôle de données permet de définir les fonctionnalités d’un utilisateur en lui attribuant ou en lui retirant des permissions. L’utilité est de permettre une meilleure gestion de la base de données lorsque celle-ci peut-être exploitée par plusieurs utilisateurs simultanément pour des besoins différents.

Comment as-tu trouvé ce cours ?

Évalue ce cours !

 

Question 1/5

La médiane de 6 notes est 13. Cela signifie que :

Question 2/5

On a obtenu la série statistique suivante :

Combien vaut la médiane ?

Question 3/5

On a obtenu la série ci-dessous :

Quelle est la médiane de cette série ?

Question 4/5

On a relevé les tailles en cm des élèves d’une classe :

 

Parmi les propositions suivantes, laquelle est vraie ?

Question 5/5

Les notes en français de deux classes littéraires sont données dans le tableau suivant :

Quelle est la note médiane ?

Vous avez obtenu75%de bonnes réponses !

Recevez l'intégralité des bonnes réponses ainsi que les rappels de cours associés :

Votre adresse e-mail sera exclusivement utilisée pour vous envoyer notre newsletter. Vous pourrez vous désinscrire à tout moment, à travers le lien de désinscription présent dans chaque newsletter. Pour en savoir plus sur la gestion de vos données personnelles et pour exercer vos droits, vous pouvez consulter notre charte.

Une erreur s'est produite, veuillez ré-essayer

Consultez votre boite email, vous y trouverez vos résultats de quiz!

Découvrez le soutien scolaire en ligne avec myMaxicours

Le service propose une plateforme de contenus interactifs, ludiques et variés pour les élèves du CP à la Terminale. Nous proposons des univers adaptés aux tranches d'âge afin de favoriser la concentration, encourager et motiver quel que soit le niveau. Nous souhaitons que chacun se sente bien pour apprendre et progresser en toute sérénité ! 

Fiches de cours les plus recherchées

Sciences de gestion et numérique

Approche des processus organisationnels

Sciences de gestion et numérique

Gestion du projet de système d'information

Sciences de gestion et numérique

Justification économique d'un projet d'évolution de système d'information

Sciences de gestion et numérique

Les normes associées aux réseaux informatiques : TCP/IP

Sciences de gestion et numérique

Organisation du projet

Sciences de gestion et numérique

Suivi du projet

Sciences de gestion et numérique

La modélisation des processus (le modèle événement-résultat)

Sciences de gestion et numérique

Généralités sur les réseaux pour le SI de l'organisation

Sciences de gestion et numérique

Adressage Internet Protocol

Sciences de gestion et numérique

Niveaux fonctionnels d'une application