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

Access Discussion :

Peut on cacher la cible contenue dans un raccourci vers une base access [AC-2010]


Sujet :

Access

  1. #1
    Membre régulier
    Homme Profil pro
    Responsable qualité
    Inscrit en
    Mars 2012
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable qualité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 341
    Points : 111
    Points
    111
    Par défaut Peut on cacher la cible contenue dans un raccourci vers une base access
    Bonjour,

    J'aimerai pouvoir cacher la cible d'un raccourci qui pointerai vers une base afin d'empêcher un utilisateur malveillant d'aller dans le dossier où se trouve la base.
    Est-ce possible ?

    J'avais bien trouvé une parade en ouvrant une première base qui elle ne contenait dans un module protégé le lien vers la base finale.
    Ce système fonctionne très bien avec ACCESS mais lorsque l'utilisateur utilise les bases avec Runtime ACCESS il plante.
    Voici le code qui s'exécutait à l'ouverture de la première base :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Function OuvreVraiBase()
        Application.CommandBars.ExecuteMso "MinimizeRibbon"
        Application.FollowHyperlink "F:\BASE_1.accdb"
        Application.Quit
    End Function
    Merci pour votre aide

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 023
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 023
    Points : 24 567
    Points
    24 567
    Par défaut
    Bonjour,

    Pourquoi ne pas utiliser un Shell plutôt qu'un hyperlien ? C'est plus logique.

    Cordialement,

  3. #3
    Membre régulier
    Homme Profil pro
    Responsable qualité
    Inscrit en
    Mars 2012
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable qualité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 341
    Points : 111
    Points
    111
    Par défaut
    Bonjour,

    Comment écririez-vous cette syntaxe avec une commande Shell ?

    En vous remerciant

  4. #4
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 023
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 023
    Points : 24 567
    Points
    24 567
    Par défaut
    Bonjour,
    Il n'y a pas 50 formes d'écriture pour la commande shell :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    shell("c:\program files\msoffice....\msaccess.exe f:\mabase.accdb")
    Voir la faq ou l'aide pour plus de précision.

    Cordialement,

  5. #5
    Membre régulier
    Homme Profil pro
    Responsable qualité
    Inscrit en
    Mars 2012
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable qualité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 341
    Points : 111
    Points
    111
    Par défaut
    bonjour merci beaucoup, je vais essayer pour voir si cette commande fonctione en Runtime d'une base à une autre

  6. #6
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 023
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 023
    Points : 24 567
    Points
    24 567
    Par défaut
    C'est un shell, comme si tu lançais ton appli depuis un raccourci. Si ça plante le premier test à faire est de lancer l'appli avec le runtime depuis un raccourci en utilisant la même chaine.

  7. #7
    Membre régulier
    Homme Profil pro
    Responsable qualité
    Inscrit en
    Mars 2012
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable qualité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 341
    Points : 111
    Points
    111
    Par défaut
    Bonsoir,
    Cette commande ne fonctionne pas dans mon cas de figure
    Est-il possible de masquer la cible qui est contenu dans les propriétés d'un raccourcis qui pointe vers une base access ?

    Merci pour votre aide

  8. #8
    Membre régulier
    Homme Profil pro
    Responsable qualité
    Inscrit en
    Mars 2012
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable qualité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 341
    Points : 111
    Points
    111
    Par défaut Cacher la cible d'un raccourcis ouvrant une base
    Bonjour,
    J'ai placé une base Access sur un réseau partagé
    Cette base est stockée dans un dossier caché et j'ai créé un raccourcis malheureusement tout le monde peut voir le chemin d'accès là où est stockée la base dans les propriétés du raccourcis
    Est-il possible de cacher la cible ?
    Merci pour votre aide

  9. #9
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 363
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 363
    Points : 23 833
    Points
    23 833
    Par défaut
    Je ne pense pas.

    Tu pourrais faire une indirection : pointer sur un .bat qui lui-même pointe sur ta cible. Bon un .bat c'est pas très dificile à lire. Plus sécuritaire serait de planquer cela dans un .exe ou un .mde. Donc ton raccourcis appèle le .exe et le .exe ouvre la cible.

    A+

  10. #10
    Membre régulier
    Homme Profil pro
    Responsable qualité
    Inscrit en
    Mars 2012
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable qualité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 341
    Points : 111
    Points
    111
    Par défaut
    Bonjour,
    Merci beaucoup pour tes propositions.
    Il y a une chose que j'ai oublié de dire c'est que tous les utilisateurs utilisent Access via Runtime Access
    J'ai demandé à ce qu'on leur désinstalle Access car les règles de sécurités ont été renforcé et maintenant on ne peut plus choisir dans les paramètres des logiciels office d'activer toutes les macros. Ce paramétrage est grisé et est bloqué sur "désactiver toutes les macros avec notifications"
    Du coup j'ai crée une base qui contient un code qui à l'ouverture exécute une fonction qui ouvre la 2ème base qui elle est caché $ dans un répertoire sur le serveurs
    Cette première base permettait donc d'ouvrir la vrai base sans que personne connaisse le lien.
    Ce système fonctionnait très bien tant tout le monde avait access d'installé mais avec ces nouvelles restrictions sécurité macros les macros qui d'exécutés au démarrage de la première base et de la suivante plantent
    Et et en mode Rutime ce principe ne fonctionne plus j'ai été obligé d'ajouter un formulaire dans la 1ère base avec un bouton que j'ai nommé "suivant" qui exécute le code qui va ouvrir la base finale.
    Comment pourrais-je mettre en application ta solution du fichier .bat je ne connais pas du tout cette manip
    Merci beaucoup pour ton aide

  11. #11
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 023
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 023
    Points : 24 567
    Points
    24 567
    Par défaut
    étrange, bizarre, incroyable que cette simple commande ne fonctionne pas...
    Du coup j'ai fait le test qui s'est avéré totalement concluant. Ce qui m'étonnais.

    Lorsque tu dis :
    Cette commande ne fonctionne pas dans mon cas de figure
    Peux-tu en dire plus ? Poster la commande et décrire précisément ton cas de figure et surtout les éventuels messages que tu obtiens.

    Cordialement,

  12. #12
    Membre régulier
    Homme Profil pro
    Responsable qualité
    Inscrit en
    Mars 2012
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable qualité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 341
    Points : 111
    Points
    111
    Par défaut
    Il y a une chose que j'ai oublié de dire c'est que tous les utilisateurs utilisent Access via Runtime Access
    J'ai demandé à ce qu'on leur désinstalle Access car les règles de sécurités ont été renforcé et maintenant on ne peut plus choisir dans les paramètres des logiciels office d'activer toutes les macros. Ce paramétrage est grisé et est bloqué sur "désactiver toutes les macros avec notifications"
    Du coup j'ai crée une base qui contient un code qui à l'ouverture exécute une fonction qui ouvre la 2ème base qui elle est caché $ dans un répertoire sur le serveurs
    Cette première base permettait donc d'ouvrir la vrai base sans que personne connaisse le lien.
    Ce système fonctionnait très bien tant tout le monde avait access d'installé mais avec ces nouvelles restrictions sécurité macros les macros qui d'exécutés au démarrage de la première base et de la suivante plantent
    Et et en mode Rutime ce principe ne fonctionne plus j'ai été obligé d'ajouter un formulaire dans la 1ère base avec un bouton que j'ai nommé "suivant" qui exécute le code qui va ouvrir la base finale.

    Merci beaucoup pour votre aide

  13. #13
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 023
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 023
    Points : 24 567
    Points
    24 567
    Par défaut
    Je n'arrive pas à comprendre le fil conducteur entre le runtime et l'activation des macros.

    Le runtime est une version ACCESS où les menus sont occultés, il fonctionne donc de la même manière à part qu'il faut une application finie pour avoir un fonctionnement normal.
    L'activation des macros va de pair avec les Emplacements approuvés. Il suffit donc d'enregistrer ces emplacements en Bdr de chaque poste pour que le problème ne se pose plus.

    Comme tu le vois aucun rapport de cause à effet entre le runtime, l'activation des macros et la commande shell. A ce sujet ce n'est pas la commande shell qui ne fonctionne pas mais l'environnement qui n'est pas correctement paramétré.

    Concernant le formulaire au démarrage, tu peux éviter le disgracieux bouton Suivant en utilisant le Timer du formulaire pour lancer l'appli et fermer le "lanceur". Mais je pense que réglé l'environnement serait plus propre que d'essayer de bricoler un raccourci, si tant est que c'est possible (à voir sur le forum Windows).

  14. #14
    Membre chevronné

    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 015
    Points : 2 085
    Points
    2 085
    Par défaut cacher la cible d'un lien
    Bonjour,
    Une autre piste pour cacher la cible d'un lien : utiliser un "msi shortcut" (en fait "Advertised Shortcuts" suivant la terminologie Microsoft).

    Bon pour un informaticien ça ne posera pas un très gros problème pour trouver la cible, mais pour l'utilisateur lambda ça peut suffire .....

    Accessoirement il faudrait aussi a minima interdire l'accès à la liste des processus, services et applications.

    La meilleure solution nécessiterait de savoir quel est l'objectif à atteindre : cacher des informations "confidentielles défense" , éviter qu'un utilisateur bidouille etc

  15. #15
    Membre régulier
    Homme Profil pro
    Responsable qualité
    Inscrit en
    Mars 2012
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable qualité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 341
    Points : 111
    Points
    111
    Par défaut
    Bonjour,
    Merci pour cette solution par contre je ne sais pas comment creer ce raccourcis
    Peux-tu m'expliquer comment procéder ?
    Merci pour ton aide

  16. #16
    Membre chevronné

    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 015
    Points : 2 085
    Points
    2 085
    Par défaut
    Bonsoir,
    Je ne peux pas vraiment t’aider puisque je me suis en fait intéressé à l’opération inverse : le décodage des MSI shortcut et ça je sais faire.

    Pour la création de MSIi shortcut
    Du plus compliqué au plus simple
    - Trouver les spécifications Microsoft et écrire du code dans un langage que tu maitrise (on oublie !)
    - Trouver du code source pour un langage que tu maitrise : on trouve facilement pour créer des .lnk « normaux ». J’ai pas l’impression que ça courre les rues pour les MSI shortcut (peut être chercher en VBS ? Powershell ? bon on oublie aussi)

    - Comme pratiquement tous les MSI shortcut sont créés par le Windows installer Utiliser un logiciel qui crée des fichiers pour Windows installer (fichiers .msi)
    Il faut soit pouvoir utiliser un programme professionnel genre Installshield
    Soit utiliser un programme freeware ou open source par exemple :
    « makemsi » de mémoire c’est pas instinctif …
    Ou
    « WIX » qui est un programme open source de Microsoft (si si ça existe !)
    Perso si je voulais créer un shortcut MSI c’est ce que j’essaierai. Evidemment il faut investir du temps pour s’approprier la documentation et le logiciel.

    Bon courage,

  17. #17
    Membre régulier
    Homme Profil pro
    Responsable qualité
    Inscrit en
    Mars 2012
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable qualité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 341
    Points : 111
    Points
    111
    Par défaut
    Bonsoir,
    Merci beaucoup pour toutes ces pistes mais j'ai peur de ne pas être assez calé pour y arriver
    Merci tout de même !

  18. #18
    Membre habitué
    Homme Profil pro
    Etudiant - Développeur
    Inscrit en
    Mai 2014
    Messages
    119
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Etudiant - Développeur
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2014
    Messages : 119
    Points : 159
    Points
    159
    Par défaut
    j'ai une petite soluce pour toi et ca te fera un fichier dans un dossier protégé par un mot de passe

    crée un nouveau document .txt
    et met y se script



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    Quote: cls 
    @ECHO OFF 
    title Folder Private 
    if EXIST "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}" goto UNLOCK 
    if NOT EXIST Private goto MDLOCKER 
    :CONFIRM 
    echo voulez vous verrouiller le dossier private (Y/N) 
    set/p "cho=>" 
    if %cho%==Y goto LOCK 
    if %cho%==y goto LOCK 
    if %cho%==n goto END 
    if %cho%==N goto END 
    echo mauvais choix tapez Y pour oui et N pour non. 
    goto CONFIRM 
    :LOCK 
    ren Private "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}" 
    attrib +h +s "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}" 
    echo dossier verrouillé 
    goto End 
    :UNLOCK 
    echo Entrez le mot de passe pour accèder au dossier verrouillé 
    set/p "pass=>" 
    if NOT %pass%== mot_de_passe goto FAIL 
    attrib -h -s "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}" 
    ren "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}" Private 
    echo dossier déverrouillé 
    goto End 
    :FAIL 
    echo mot de passe invalide 
    goto end 
    :MDLOCKER 
    md Private 
    echo dossier Private créé 
    goto End 
    :End
    sur la ligne 23 tu trouvera "mot_de_passe"
    change le et met le mot de passe souhaité
    ensuite enregistre sous "locker.bat"
    lance le fichier que tu viens de créer "locker.bat"
    tu verra apparaitre un nouveau petit dossier "private"
    met y les fichiers ou dossiers a proteger
    relance le "locker.bat" tu verra un message disant "voulez vous verrouiller le dossier
    tape y et lance
    le dossier private disparaitra
    pour le faire reparaitre relance locker.bat et met ton mot de passe

  19. #19
    Membre régulier
    Homme Profil pro
    Responsable qualité
    Inscrit en
    Mars 2012
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable qualité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 341
    Points : 111
    Points
    111
    Par défaut
    Bonsoir,

    Merci beaucoup pour ta proposition !
    Entre temps j'ai trouvé une solution à mon problème en compilant des solutions sur plusieurs forum.
    Voici la solution que j'ai mis en application :

    1) créer un script.bat qui contient le chemin et la commande pour ouvrir la base, nommé : OuvreBase.bat
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    @echo off
    Start /WAIT msaccess.exe "C:\Chemin de la base\MaBase.accdb"
    @echo off 
    cls
    2) créer un script.vbs, qui va exécuter "OuvreBase.bat" nommé : OuvreBase.vbs
    Ce script permet d'exécuter le script "OuvreBase.bat" sans que la fenêtre DOS s'ouvre à l'écran
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Set test = WScript.CreateObject("WScript.Shell")
    test.Run "C:\CheminDuScript.....\OuvreBase.bat", 0, True
    Set test = Nothing
    3) créer un script.vbs qui va crypter le script "OuvreBase.vbs" et le transformer en "OuvreBase.vbe"
    Ce script sera distribué aux utilisateurs et il leur sera impossible de connaître le chemin du script "OuvreBase.bat" et donc de connaître le chemin d'accès de la base.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Set scrEnc = CreateObject("Scripting.Encoder")
    Set scrFSO = CreateObject("Scripting.FileSystemObject")
     
        myfile = scrFSO.OpenTextFile("OuvreBase.vbs").ReadAll
        If scrFSO.FileExists("OuvreBase.vbe") Then scrFSO.DeleteFile "OuvreBase.vbe", True
        myFileEncode=scrENC.EncodeScriptFile(".vbs", myfile, 0, "")
     
        Set ts = scrFSO.CreateTextFile("BC-ADMIN.vbe", True, False)
        ts.Write "'**Start Encode**" + vbcrlf + myFileEncode
    ts.close
    Ca marche tip top !!!

    Bien à toi
    Franck

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

Discussions similaires

  1. Récupérer un chemin-cible contenu dans une variable
    Par Myrrdin dans le forum ActionScript 1 & ActionScript 2
    Réponses: 14
    Dernier message: 04/07/2010, 12h24
  2. ouvrir fichier un word contenu dans une base access
    Par seiya18 dans le forum VBA Access
    Réponses: 10
    Dernier message: 12/02/2008, 13h57
  3. [C#] Recuperer un chaine contenu dans un SubItems d'une Listview
    Par superjaja dans le forum Windows Forms
    Réponses: 2
    Dernier message: 30/11/2006, 15h30
  4. Lire le contenu dans fichier raccourci .lnk
    Par THALES dans le forum C++Builder
    Réponses: 2
    Dernier message: 11/10/2005, 12h37
  5. Probleme avec le signe & contenu dans un parametre d'une
    Par Ludo_xml dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 22/08/2005, 15h45

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