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 :

évolution de DB-MSDE par script SQL


Sujet :

MS SQL Server

  1. #1
    Membre du Club Avatar de papouAlain
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 127
    Points : 64
    Points
    64
    Par défaut évolution de DB-MSDE par script SQL
    Je viens de faire évoluer une base de données tant au niveau des TABLES que des SP.
    J'ai diffusé la mise à jour sous forme d'un Patch appliqué sur mon application à tous les utilisateurs.
    Alors que la mise à jour fonctionne sur la plupart des postes. certains sont plantés. Il semble que les scripts SQL ne se soient pas appliqués entierement.
    Dans les scripts je fais des :
    ALTER et ADD COLUMN, des ADD CONSTRAINT sur des IX et FK et des ALTER PROCEDURE.
    J'ai contrôlé pas à pas que tous les scripts étaient appliqués.

    est-ce qu'il y a des précautions particlières à prendre, ou une opération de validation générale en fin d'opération ???
    C'est au pied du mur, qu'on voit le mieux le mur !!!

  2. #2
    Membre du Club Avatar de papouAlain
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 127
    Points : 64
    Points
    64
    Par défaut
    je me rends compte que mes SP modifiées par un ALTER PROCEDURE, n'ont pas de gestion de droits de type :
    DENY EXECUTE ON [dbo].[My_SP_Name] TO [public] CASCADE
    GRANT EXECUTE ON [dbo].[My_SP_Name] TO [My_User_Name]

    Par défaut elles auront donc quel droit d'execution ?

    Dans la mesure ou je veux en limiter l'utilisation à mon seul User, est-ce que je dois passer un :
    DENY EXECUTE ON [dbo].[My_SP_Name] TO [public] CASCADE
    GRANT EXECUTE ON [dbo].[My_SP_Name] TO [My_User_Name]
    sous forme de script SQL ?
    ou sous quelle autre forme, puis obtenir ce résultat ?
    C'est au pied du mur, qu'on voit le mieux le mur !!!

  3. #3
    Membre du Club Avatar de papouAlain
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 127
    Points : 64
    Points
    64
    Par défaut
    pour finir de compléter ma question :
    My_User_Name est db_Owner mais n'est pas db_Security admin ni ddl_admin...
    dois-je avant de procéder aux évolutions de SP, le passer en db_Security admin et/ou ddl_admin ?
    comment ?


    merci d'avance à ceux qui pourront m'aider à progresser...
    C'est au pied du mur, qu'on voit le mieux le mur !!!

  4. #4
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    Quelques réponses en vrac :

    - db_owner inclut tous les droits, donc tu n'as pas besoin de rajouter d'autres droits. Par contre, pour une gestion plus précuationneuse des droits, il vaudrait mieux enlever ton user de db_owner et lui donner les droits spécifiques.

    - Si le user est db_owner, il peut exécuter tes sp sans plus de formalité, sinon tu doit faire un GRANT EXEC. Par défaut, sans aucun droit, les membres de public ne peuvent exécuter les sp. A noter qu'un ALTER conserve les droits précédemment attribués.

    - Tu peux ajouter une gestion d'erreur dans tes scripts pour savoir quand ils ont échoué. Regarde aussi l'instruction CREATE SCHEMA dans l'aide en ligne.
    Rudi Bruchez
    Rudi Bruchez EIRL, solutions MS SQL Server et NoSQL
    LinkedIn - [Outil libre de diagnostic SQL Server : Sql Trismegiste]
    LIVRES : Optimiser SQL Server -
    Microsoft SQL Server 2012 Security Cookbook
    - les bases de données NoSQL

    e-learning : LinkedIn Learning - Pluralsight

  5. #5
    Membre du Club Avatar de papouAlain
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 127
    Points : 64
    Points
    64
    Par défaut
    - db_owner inclut tous les droits, donc tu n'as pas besoin de rajouter d'autres droits. Par contre, pour une gestion plus précuationneuse des droits, il vaudrait mieux enlever ton user de db_owner et lui donner les droits spécifiques.
    Est-ce que ça veut dire que je dois l'enlever de db_Owner et le rajouter dans
    db_accessadmin, db_datareader, db_datawriter, db_dlladmin, db_backupoperator ?


    A noter qu'un ALTER conserve les droits précédemment attribués
    Pas dans mon cas ! ça peut venir de quoi ?
    C'est au pied du mur, qu'on voit le mieux le mur !!!

  6. #6
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Points : 4 414
    Points
    4 414
    Par défaut
    Citation Envoyé par papouAlain
    Est-ce que ça veut dire que je dois l'enlever de db_Owner et le rajouter dans
    db_accessadmin, db_datareader, db_datawriter, db_dlladmin, db_backupoperator ?

    A mon avis, les roles db_datareader et db_datawriter suffisent d'une manière générale, en espérant que tu ne gères pas l'administration et les backup dans ton application.

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

  7. #7
    Membre du Club Avatar de papouAlain
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 127
    Points : 64
    Points
    64
    Par défaut
    En effet je ne gère pas l'adminsitration de la DB, mais l'application gère les backup...
    C'est au pied du mur, qu'on voit le mieux le mur !!!

  8. #8
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Points : 4 414
    Points
    4 414
    Par défaut
    Alors tu ajoutes le rôle db_backupoperator aussi.

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

  9. #9
    Membre du Club Avatar de papouAlain
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 127
    Points : 64
    Points
    64
    Par défaut
    Par contre j'ai pas encore trouvé dans le T-SQL comment rajouter des rôles...
    un p'tit coup de pouce synthaxe, SVP...
    C'est au pied du mur, qu'on voit le mieux le mur !!!

  10. #10
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    sp_addrole
    sp_addrolemember
    Rudi Bruchez
    Rudi Bruchez EIRL, solutions MS SQL Server et NoSQL
    LinkedIn - [Outil libre de diagnostic SQL Server : Sql Trismegiste]
    LIVRES : Optimiser SQL Server -
    Microsoft SQL Server 2012 Security Cookbook
    - les bases de données NoSQL

    e-learning : LinkedIn Learning - Pluralsight

Discussions similaires

  1. [2012] DROP CONSTRAINT sans connaitre le nom par script sql
    Par allezjeu dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 31/03/2014, 10h29
  2. Fractionner une date par traitement ETL ou Script SQL
    Par bennas dans le forum kettle/PDI
    Réponses: 2
    Dernier message: 03/04/2013, 13h25
  3. Import Script SQL généré par PowerAMC
    Par nollalolla dans le forum SQL
    Réponses: 2
    Dernier message: 01/04/2013, 16h53
  4. executer script SQL par delphi
    Par ROMILA dans le forum Langage
    Réponses: 14
    Dernier message: 27/07/2011, 22h02
  5. SQL 2005 Suppression de base par script
    Par geof dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 23/04/2008, 15h10

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