Partage
  • Partager sur Facebook
  • Partager sur Twitter

Isoler transaction SMB sous windows server 2012 R2

    23 décembre 2018 à 10:07:05

    Bonjour.

    J'ai développé une appli sous Windev 22 pour de la consultation de fichiers pdf. Cette application interroge un serveur SQL pour obtenir l'emplacement d'un fichier ainsi que les méta données s'y rapportant, puis accède au fichier proprement dit via un serveur de fichier (SMB) pour l'afficher via un ActiveX. Un fichier INI permet de paramétrer l'adresse IP du serveur.

    Le serveur physique est sous Windows 2012 R2 et supporte une base postgreSQL + serveur de fichier SMB

    Les postes clients sont sous Windows 7 et prochainement Windows 10. Le lancement de l'application se fait en local (chaque poste à son exécutable).

    Côté application, tout est fonctionnel : accès à la base SQL et aux fichiers. Les login + mot de passe pour l’accès SMB sont codés "en dur" dans l'application et l'accès à l'appli est assujetti à une connexion à la base SQL.

    Hors application, si l'utilisateur essaie de se connecter au serveur SMB (via l'explorateur par exemple), il se heurte à un mur puisqu'il lui faut les ID + MDP (sous réserve qu'il ai récupéré l'IP serveur dans le fichier INI).

    Par contre, cela se gâte lorsqu'il essaie de se connecter au serveur de fichier SMB via l'explorateur alors que l'application est ouverte : il peut sans problème accéder à la totalité des fichiers via l'explorateur (limité cependant aux droits sur les fichiers accordés par le serveur en fonction des droits dont il dispose dans l'application... j'espère que vous suivez !).

    En gros, comme le "tunnel" est ouvert par l'application vers SMB, l'explorateur peut en profiter pour y aller aussi.

    C'est inadmissible, que fait la Police !?!

    Bref, vous l'aurez compris, j'aurais besoin d'aide pour trouver une solution pour empêcher l'utilisateur d'aller fourrer son nez dans mes fichiers en dehors de l'application qui lui est gracieusement fournie :). Plus sérieursement, je voudrais que l'utilisateur avec pouvoir (celui de supprimer les fichiers par exemple) soit obligé de passer par l'application car une suppression de fichier ne se limite pas à effacer le fichier PDF (suppression des méta données, vérification de dépendance etc ...).

    Merci de votre aide SVP.

    Et d'ici là, joyeux Noël HO HO HO !

    • Partager sur Facebook
    • Partager sur Twitter
      25 décembre 2018 à 0:06:35

      J'ai pas trop compris, disons même que j'ai rien compris, à ce serveur SMB. Sur mon serveur Windows 2012-R2 les bases de données sont accessibles par leurs ports ouverts (3306 pour MySQl, j'sais plus quoi pour PostgreSQL) Il n'y a que MS SQL Server que je dois loger ailleurs car Krosoft interdit maintenant de le mettre sur un contrôleur de domaine (un peu idiot si c'est une toute petite boîte la fonction CD plus SQL Server ne va pas mettre le système à genoux).

      Bref tout cela communique par les ports dédiés, ouverts dans les pare-feux. Les droits des utilisateurs se gèrent dans chaque base de données (consultation simple de telle ou telle base, suppression et ajout, etc.).

      En programmation cela se fait par les "chaînes de connexion" qui sont strictement les mêmes quelque soit le logiciel ou le langage utilisé.

      La seule utilisation SMB que j'ai fait sur un serveur c'est pour rendre des dossiers partageables avec des droits réglables selon les utilisateurs qui se connectent. Mais cette technique ne s'applique pas aux bases de données.

      • Partager sur Facebook
      • Partager sur Twitter

      Isoler transaction SMB sous windows server 2012 R2

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown