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 :

Proteger ou crypter une vue


Sujet :

MS SQL Server

  1. #1
    Membre du Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Janvier 2003
    Messages : 85
    Points : 51
    Points
    51
    Par défaut Proteger ou crypter une vue
    Bonjour,
    Sur une base de donnée j'ai crée une vue assez complexe que j'utilise sur une base de donnée CEGID où j'ai fait un état assez complexe. Dans mon générateur d'état j'appelle ma vue que j'aimerais protéger.

    Merci.

  2. #2
    Membre chevronné

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Août 2007
    Messages : 1 216
    Points : 1 758
    Points
    1 758
    Par défaut
    Bonjour,

    Utilisez l'option WITH ENCRYPTION .

    Bonne journée

  3. #3
    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 : 43
    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
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Protéger de quoi exactement ?
    Est-ce que par exemple cette vue contient des n°s de cartes bancaire ? ...

    @++

  4. #4
    Membre du Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Janvier 2003
    Messages : 85
    Points : 51
    Points
    51
    Par défaut
    Bonsoir,
    Ce que je veux cacher ou crypter, ce n'est pas le contenu des informations mais la requete. Car elle contient des sous requete, des totaux, des critéres de regroupement. Je veux seulement que l'on puisse récupérer les résultat par la vue sans savoir comment elle est constitué.

    Merci pour vos réponse.

  5. #5
    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 : 43
    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
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Dans ce cas le cryptage ne répond pas à votre problématique.
    Attribuez plutôt des privilèges aux utilisateurs, ou mieux, créez des rôles et attribuez les privilèges à ces rôles.

    Vous devrez :

    - donner le privilège de lecture (GRANT SELECT)
    - refuser les privilèges de modification de données (DENY INSERT, UPDATE, DELETE) et de référencement (REFERENCES), et de lecture de la définition de la vue (VIEW DEFINITION).

    Pour créer un rôle : CREATE ROLE.
    Pour ajouter un utilisateur à ce rôle : sp_addrolemember

    @++

  6. #6
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Est ce que vous êtes propriétaire du développent ? J'entends par là que votre société développe et déploie du code qui doit rester confidentiel même auprès de l'administrateur de bases de données chez votre client ... ou est ce que votre besoin est local ?

    Dans le 2ème cas Elsuket a raison .. jouez avec les droits .. dans le 1er cas alors le cryptage peut être intéressant.

    ++

  7. #7
    Membre du Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Janvier 2003
    Messages : 85
    Points : 51
    Points
    51
    Par défaut
    Bonsoir,
    a) On est propriétaire du développement des vues mise en place sur une application. On ne veut pas que d'autres prestataires utilisent des traitements mis en place par nous. Quelle est la meilleure solution et ou trouver de la documentation pour la mettre en oeuvre. Je ne connaissait pas MS SQL-SERVER 2005 il y a 3 mois, je commence à faire des requêtes sympa que j'aimerais protéger en lecture, modification, suppression, etc... mais pas à l'exécution.Ce que je souhaite aussi, c'est pouvoir la modifier moi-même.

    b) comment marche l'option WITH ENCRYPTION


    Bonne soirée.

  8. #8
    Invité
    Invité(e)
    Par défaut
    http://beecy.net/post/2009/01/22/enc...procedure.aspx


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    CREATE view dbo.test_vue_encryptee
    WITH ENCRYPTION
    AS
        SELECT * from aa

  9. #9
    Membre du Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Janvier 2003
    Messages : 85
    Points : 51
    Points
    51
    Par défaut
    Bonsoir,
    comment proteger des vues même de l'admin de la base de données.

    A+

  10. #10
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par d.tellier Voir le message
    comment proteger des vues même de l'admin de la base de données.
    Euh ???
    Je vous invite à relire mon message ci-dessus et à faire un tour sur le lien.
    Et lire ici, par exemple : http://blog.sqlauthority.com/2007/07...ned-functions/
    Et à tester Ce script :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    CREATE VIEW dbo.test_vue_encryptee
    WITH ENCRYPTION
    AS
        SELECT * FROM une_table

  11. #11
    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 : 43
    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
    Points : 12 371
    Points
    12 371
    Par défaut
    Je ne vois toujours pas l'intérêt du cryptage de la vue par rapport à une gestion appropriée des privilèges ... à part peut-être pour augmenter la consommation de CPU ...

    @++

  12. #12
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par elsuket Voir le message
    Je ne vois toujours pas l'intérêt du cryptage de la vue par rapport à une gestion appropriée des privilèges ... à part peut-être pour augmenter la consommation de CPU...
    Et surtout compliqué d'un cran la gestion des sources...

  13. #13
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Je ne vois toujours pas l'intérêt du cryptage de la vue par rapport à une gestion appropriée des privilèges
    Tu es propriétaire d'un logiciel et tu ne veux pas que ton client voit le code d'une vue ... le seul moyen que tu as de protéger ce code est de crypter cette vue. La gestion des droits ne te permettra pas de faire cela car cela sous entend qu'au moins un administrateur du serveur (donc chez ton client) puisse voir le code de ta vue.

    ++

  14. #14
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 453
    Points : 18 391
    Points
    18 391
    Par défaut
    Un petit aparté, mais la traduction française de ENCRYPTION est CHIFFREMENT.

  15. #15
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Très juste Waldar, c'est tout bonnement un anglicisme abusif employé à tort par mes soins

    ++

  16. #16
    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 : 43
    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
    Points : 12 371
    Points
    12 371
    Par défaut
    Tu es propriétaire d'un logiciel et tu ne veux pas que ton client voit le code d'une vue ... le seul moyen que tu as de protéger ce code est de crypter cette vue. La gestion des droits ne te permettra pas de faire cela car cela sous entend qu'au moins un administrateur du serveur (donc chez ton client) puisse voir le code de ta vue.
    Là je suis d'accord. Mais pas dans le cas présent

    @++

  17. #17
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Bah j'ai pas bien compris alors .. moi je vois ça :

    Bonsoir,
    a) On est propriétaire du développement des vues mise en place sur une application. On ne veut pas que d'autres prestataires utilisent des traitements mis en place par nous.
    ++

  18. #18
    Membre chevronné

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Août 2007
    Messages : 1 216
    Points : 1 758
    Points
    1 758
    Par défaut
    Même utilisant la clause with encryption ne protège pas le code de la vue entièrement... Le DBA qui souhaite vraiment voir le code y parviendra surement.

  19. #19
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    C'est sûr ...

    Il existait d'ailleurs une procédure pour pouvoir voir le code de la vue chiffrée sur la version 2000 mais je ne sais pas si elle fonctionne à partir de 2005.

    Le fait est qu'une vue soit chiffrée protégera certainement plus qu'un simple droit initié par le DBA lui même à mon avis ...

    ++

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Crypter une chaine de caractères
    Par Yabo dans le forum Réseau
    Réponses: 18
    Dernier message: 19/11/2004, 23h04
  2. [DEBUTANT] Une vue dans une procedure stockee ?
    Par Invité dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 25/02/2004, 11h57
  3. [TADOTable] reconnaitre le trigger INSTEAD OF d'une vue...
    Par littledoudou dans le forum C++Builder
    Réponses: 2
    Dernier message: 15/12/2003, 12h39
  4. Export d'une vue avec LEFT JOIN
    Par schnourf dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 22/05/2003, 13h57
  5. Créer une vue pour trier une requete UNION ?
    Par Etienne Bar dans le forum SQL
    Réponses: 3
    Dernier message: 03/01/2003, 20h22

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