IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MS SQL Server Discussion :

[SQL2K] mettre à jour les autorisations sur plusieurs tables rapidement


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Stephane_br
    Inscrit en
    Septembre 2005
    Messages
    222
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 222
    Par défaut [SQL2K] mettre à jour les autorisations sur plusieurs tables rapidement
    Bonjour,

    Je travaille sur une ancienne version de SQL, la version 8, avec l'ancienne Console Entreprise Manager et j'ai un petit soucis pour attribuer les droits à la connexion d'une base de données.

    En effet, pour une base de données, j'ai énormément de tables et elles sont de surcroît assez volumineuse. Ce qui fait que lorsque je crée une connexion et que je dois attribuer les droits "SELECT", "UPDATE" ...etc, je dois passer en revue chaque table une par une afin de lui attribuer les droits. Ce qui est extrêmement long et je dois faire ça rapidement faute de temps.

    Je sais qu'avec SQL2005, on peut définir les droit d'une connexion (ou d'un utilisateur SQL) sur une base de données et ça se répercute sur toutes les tables. Mais je ne sais pas le faire sous l'ancienne version. Résultat, je passe un temps fout sur cette procédure.

    Ma question : n'y a-t-il pas moyen, comme sous SQL 2005, de définir les droits sur l'utilsateur (la connexion) en une seule fois afin que cela soit pris en compte pour toutes les tables de la base de données ?

    Merci pour votre aide.

    Cordialement.

  2. #2
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Par défaut
    Bonjour,

    Je ne suis pas sûr que vous fassiez la distinction entre connexion et utilisateur de base de données,et je vous invite à un peu de lecture

    Dans SQL Server 2000 comme dans SQL Server 2005 ou 2008, il vous suffit pour cela de créer un rôle de base de données auquel vous attribuez des droits.
    Pour tout nouvel utilisateur, il vous suffit de l'ajouter au rôle pour qu'il hérite des droits octroyés à ce dernier.

    La différence c'est qu'avec SQL Server 2000, pour créer le rôle il faut utiliser sp_addrole, alors qu'avec SQL Server 2005 ou 2008, il faut utiliser CREATE ROLE.
    Pour l'octroi, le refus ou la révocation de droits, cela se passe pareil quelle que soit la version de SQL Server :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    -- Octroi
    GRANT listeDePermissions
    TO ROLE::monRole
     
    -- Refus
    DENY listeDePermissions
    TO ROLE::monRole
     
    -- Révocation
    REVOKE listeDePermissions
    TO ROLE::monRole
    Vous ajoutez ensuite les utilisateurs au rôle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    EXEC sp_addrolemember 'monRole', 'monUtilisateur'
    @++

Discussions similaires

  1. [MySQL] mettre a jour les lignes d'une table sur place
    Par diengkals dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 18/07/2013, 14h44
  2. Comment éviter les jointure sur plusieurs tables
    Par xavier81 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 06/02/2011, 15h12
  3. Réponses: 3
    Dernier message: 14/06/2007, 13h47
  4. Réponses: 1
    Dernier message: 14/05/2007, 15h46
  5. Requete sur plusieurs tables contenant les mêmes champs
    Par Louison dans le forum Langage SQL
    Réponses: 3
    Dernier message: 03/04/2007, 20h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo