OVH Cloud OVH Cloud

Droits sur les colonnes d'une table

1 réponse
Avatar
Mimi
Bonjour,

Je souhaite accorder des droits de update aux utilisateurs non pas sur
l'ensemble d'une table mais sur certaines colonnes. Après avoir appliqué ces
restrictions, j'éxécute : update matable
set nom_col_deny = 'test'
where clause = ''
le résultat est le suivant :

Autorisation UPDATE refusée sur la colonne 'nom_col_deny' de l'objet
'matable', base de données 'test', propriétaire 'dbo'.

Je crée une proc pu_maj_matable avec la même instruction, lorsque j'effectue
Exec pu_maj_matable alors la mise à jour est effectuée.

Les droits ne sont plus pris en compte ??
J'avoue ne pas comprendre.

Merci de votre réponse

1 réponse

Avatar
Patrice
Cf par exemple dans la doc "Utilisation de procédures stockées comme
mécanismes de sécurité".

En résumé, les procédures stockées sont exécutées avec les droits du
propriétaire de la procédure stockée. Cela permet donc d'accorder à des
utilisateurs le droit d'effectuer des opérations alors même qu'ils ne
pourraient pas réaliser ces mêmes opérations directement sur les tables...

Patrice






--

"Mimi" a écrit dans le message de
news:
Bonjour,

Je souhaite accorder des droits de update aux utilisateurs non pas sur
l'ensemble d'une table mais sur certaines colonnes. Après avoir appliqué


ces
restrictions, j'éxécute : update matable
set nom_col_deny = 'test'
where clause = ''
le résultat est le suivant :

Autorisation UPDATE refusée sur la colonne 'nom_col_deny' de l'objet
'matable', base de données 'test', propriétaire 'dbo'.

Je crée une proc pu_maj_matable avec la même instruction, lorsque


j'effectue
Exec pu_maj_matable alors la mise à jour est effectuée.

Les droits ne sont plus pris en compte ??
J'avoue ne pas comprendre.

Merci de votre réponse