Vous êtes sur la page 1sur 4

Soit le schma relationnel GestStg Suivant : Stagiaire(idStg, Nom, Prenom) Matiere (idMat, Libelle, Coeff) Note (idStg, idMat,

Note) 1)Crer la base de donne avec un jeu de test 2)Crer trois utilisateurs SQL Server login/Mot de pass (Ali/123, Ahmed/321, Imane/abc) 3)Crer trois Rles (Surveillant, Formateur, Directeur) 4)Donne le droit de lecture pour les trois utilisateurs avec le rle fixe base de donnedb_datareader 5)Donner les droits de modification (Insert, Update, Delete) sur Stagiaire avec Surveillant sur Matiere avec Directeur sur Note avec Formateur 6)Ajouter les utilisateurs Ali dans Survaillant Ahmed dans Formateur Imane dans Directeur 7)Configurer le serveur sur authentification mixte, et Faire un test avec chaque utilisateur sur les trois tables, avec les oprations (Select, Insert, Update, Delete)

--1 Use Master create database GestStg Go use GestStg create table stagiaire(idstg int, nom varchar(50), prenom varchar(50)) create table matiere(idMat int, libelle varchar(50), Coeff real ) create table note(idstg int, idmat int, note real) Go insert into stagiaire values (1, 'stg 1', 'stg 1') insert into stagiaire values (2, 'stg 2', 'stg 2') insert into stagiaire values (3, 'stg 3', 'stg 3') Go Insert into Matiere values (1, 'SGBD 1', 2) Insert into Matiere values (2, 'SGBD 2', 3) Go Insert Into Note values (1,2,15.3) Insert Into Note values (1,1,13.5) Insert Into Note values (3,2,11.25) Insert Into Note values (2,2,16) Go -- 2 Use Master CREATE LOGIN ali WITH PASSWORD = '123', DEFAULT_DATABASE =GestStg; go CREATE LOGIN ahmad WITH PASSWORD = '321', DEFAULT_DATABASE =GestStg; go CREATE LOGIN imane WITH PASSWORD = 'abc', DEFAULT_DATABASE =GestStg; GO Use GestStg CREATE USER Ali FOR LOGIN ali CREATE USER Ahmad FOR LOGIN ahmad CREATE USER Imane FOR LOGIN imane GO --3 USE GestStg

CREATE ROLE Formateur CREATE ROLE Directeur CREATE ROLE Surveillant GO --4 -- Soit avec le rle db_datareader Exec sp_addrolemember db_datareader,Ali Exec sp_addrolemember db_datareader,Ahmed Exec sp_addrolemember db_datareader,Imane -- Ou avec Grant sur select GRANT SELECT ON stagiaire TO Formateur,Directeur,Surveillant GO GRANT SELECT ON matiere TO Formateur,Directeur,Surveillant GO GRANT SELECT ON note TO Formateur,Directeur,Surveillant GO --5 GRANT INSERT, UPDATE,delete ON matiere TO directeur GO -GRANT INSERT, UPDATE, delete ON stagiaire TO surveillant GO -GRANT INSERT, UPDATE, delete ON note TO formateur --6 Exec sp_addrolemember surveillant,Ali

Exec sp_addrolemember formateur,ahmad Exec sp_addrolemember directeur,imane