Un SGBD est équipé des mécanismes qui assurent la sécurité des données. Ainsi, on peut permettre ou interdire l’accès à des données .Des mécanismes du SGBD empêchent des personnes non autorisées de lire ou de modifier des données non autorisées. Découvrons la partie sql LCD (langage de contrôle de données)

Pour créer des utilisateurs sur une base de données, il faut créer des connexions (autant de connexions que l’utilisateur)

1-Créer une connexion

Nous avons dit que les ordres sql peuvent etre regrouper en trois groupes selon leurs fonctionnement : LDD ,LMD et LCD.

Les ordres sql qui sont inclus dans la partie LCD permettent de gérer et contrôler les autorisations, les utilisateurs, les connexions…

La première étape est d’avoir la connexion nécessaire (login) dans le serveur. Pour cela, on doit utiliser l’ordre sql create login . On propose la syntaxe la plus simple possible :

 Create login   nom_connexion  with password= ‘1j@llp.23’   DEFAULT_DATABASE=nom_BD

Donc , on choisit le nom de notre nouvelle connexion et son mot de passe (qui ne doit pas être assez simple). On peut aussi définir la base de données qui sera utilisées par défaut pour cette connexion ( la définition de la base de données par défaut est facultative).

2-Créer des utilisateurs

Dans une base de données précise, on peut définir un nombre des utilisateurs (un utilisateur par connexion au niveau serveur). L’ordre sql qui nous permet de créer un nouvel utilisateur est : create user . Voilà la syntaxe complète : 

Create user  nom_utilisateurs for  login nom_connexion

3-Attribuer des autorisations à un utilisateur

Pour les utilisateurs (ou les rôles qu’on va voir par la suite), on peur définir, retirer ou interdire des autorisations selon le besoin.Par exemple, si on veut donner à un utilisateur le droit le lecture, d’nsertion et de modification des données dans une table spécfique de la base dont on l’a crée, on a recours à l’ordre sql grant tel que :

Grant  select, insert, update, delete

  ON nom_table To  nomUser

4- Interdire des autorisations à un utilisateur

On peut interdire des autorisations pour des utilisateurs ou des rôles .Par exemple, si on veut interdire à un utilisateur le droit le lecture, d’nsertion et de modification des données dans une table spécifique de la base dont on l’a crée, on a recours à l’ordre sql deny tel que :

Deny  insert,select,update,delete

 ON nom_table to nomUser

5-Retirer l’autorisation

Aussi, on peut retirer des autorisations aux utilisateurs de la base de données ou les rôles déjà crées .Par exemple, si on retirer à un utilisateur le droit le lecture, d’nsertion et de modification des données dans une table spécifique de la base dont on l’a crée, on a recours à l’ordre sql revoke tel que :

Revoke   insert,select,update,delete 

ON nom_table to nomUser

6-Creation des rôles (groupements de droits):

Create  Role nom_Role  AUTHORIZATION  nomUser

Exec sp_addrolemember ‘nom_Role’ ,’nomUser’

Remarques : rôles prédéfinis 

– Principaux rôles fixes de serveur :

  • sysadmin : permet l’éxecution de toutes les activités
  • dbcreator : Création et modification des bases de données
  • processadmin : Gestion des processus SQL Server
  • serveradmin : Gestion des connexions et autorisations

–   Exemples rôles fixes de BD :

  • public : Conservation de toutes les autorisations par défaut
  • db_owner : Exécuttion de toutes les activités sur une base
  • db_accessadmin : Ajout ou suppression d’utilisateurs , groupes et roles.
  • db_ddladmin : Ajout, modification ou suppression d’objets de base de données
  • db_securityadmin: affectation d’autorisations d’instruction et sur les objets
  • db_backupoperator : sauvegarde et restauration de la base de données
  • db_datareader : lecture des données dans toutes les tables
  • db_datawriter : Ajout, modification ou suppression des données
  • db_denydatareeader: impossible de lire les données
  • db_denydatawriter : impossible de modifier les données

Exemple:

1- Créer trois utilisateurs a1(123), a2(321), a3 (abc)

2 -Créer trois rôles Surveillant, Formateur, Directeur

3- Donner le droit de modification (insert, update, delete )

    -sur Etudiant par Surveillant

    -sur Matière par  Formateur

    -sur Evaluer par  Directeur

4- Ajouter  des utilisateurs

      -a1  dans Surveillant

      -a2  dans  Formateur

      -a3  dans  Directeur

Vous pouvez suivre la liste des vidéos du cours base de données (Merise + Sql + Transact sql) sur notre chaine youtube : Vidéos Bases de données.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *