Bonjour a tous ,
Je veut créer un utilisateur sur Sqlserver ,cet utilisateur a le droit seulement de voir une seule Vue que je l'autorise ,
est ce qu'il y a une possibilité de faire ça ,
merci a tous
Bonjour a tous ,
Je veut créer un utilisateur sur Sqlserver ,cet utilisateur a le droit seulement de voir une seule Vue que je l'autorise ,
est ce qu'il y a une possibilité de faire ça ,
merci a tous
Salut,
Avec un role tu as essayé?
Il suffit de créer la vue et donner les privilèges adéquats.
Démo :
Création de la table et la vue
Création de la vue et octroi des privilèges
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 CREATE TABLE TEST_TABLE (C INT IDENTITY, STRING VARCHAR(32)); GO CREATE VIEW TEST_VIEW AS SELECT STRING FROM TEST_TABLE; GO
Test en se faisant passer pour l'utilisateur "TEST_USER" :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 CREATE USER TEST_USER WITHOUT LOGIN; GO GRANT SELECT, INSERT, UPDATE, DELETE ON TEST_VIEW TO TEST_USER GO
CQFD !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 EXECUTE AS USER = 'TEST_USER'; GO INSERT INTO TEST_VIEW VALUES ('toto') GO --> OK SELECT * FROM TEST_TABLE GO --> KO : L'autorisation SELECT a été refusée sur l'objet 'TEST_TABLE', base de données 'DB_TEST', schéma 'dbo'. SELECT * FROM TEST_VIEW GO --> OK STRING ------------------------------- toto
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager