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

C# Discussion :

gérer l'acces à des fichiers : read only


Sujet :

C#

  1. #1
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 326
    Points : 62
    Points
    62
    Par défaut gérer l'acces à des fichiers : read only
    Bonjour,
    je veux faire un code qui me permet de mettre un fichier en ReadOnly
    j'ai pu accéder aux attributs et je mets le fichier "C:\\xxx.txt" en read only, en fesant ce code du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    File.SetAttributes("C:\\xxx.txt",FileAttributes.ReadOnly);
    mais mon problème, c'est que tout utilisateur en qulicquant droit sur le fichier il accède aux propriétés du fichier et peut annuler la propriété "read only"
    comment je pourais interdire l'accès aux attributs d'un fichier de telle sorte que lorsque je mets read only pour un fichier ca soit de facon permanente?

    merci

  2. #2
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    459
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 459
    Points : 553
    Points
    553
    Par défaut
    Il te faut en fait gérer les autorisations d'accès au fichier (onglet Sécurité dans les Propriétés de ton fichier).
    Je ne sais pas comment on le fait programmatiquement.

  3. #3
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 326
    Points : 62
    Points
    62
    Par défaut
    mais lui aussi on peut y accéder manuellement
    donc ce qu'il me faut c'est bloquer l'accès aux propriétés (tous les attributs)

  4. #4
    Membre chevronné
    Avatar de Piotrek
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Points : 1 904
    Points
    1 904
    Par défaut
    Faudrait maitriser les comptes sur la machine client, l'utilisateur ne devrait pas posseder le droit de changer les attributs des fichiers dans le repertoire (ou avoir le repertoire en lecture seule) pas facile

    Pourquoi ne pas encrypter le fichier?

  5. #5
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 326
    Points : 62
    Points
    62
    Par défaut
    ce que je veux que tout utilisateur pourrait le lire sans le modifier ..mais je comprend pas pourquoi l'encrypter ? si je l'encrypte personne ne pourra le voir sauf celui qui peut le decrypter et il pourra par la suite le modifier !

  6. #6
    Membre chevronné
    Avatar de Piotrek
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Points : 1 904
    Points
    1 904
    Par défaut
    C'etait juste une proposition, pour contourner le fait qu'une appli seule ne peut controler efficacement les droits windows sur un fichier

  7. #7
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 326
    Points : 62
    Points
    62
    Par défaut
    justement je n'ai pas bien compris ta proposition ..est ce que tu peux m'expliquer à quoi sert d'encrypter le fichier dans ce cas ?

  8. #8
    Membre chevronné
    Avatar de Piotrek
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Points : 1 904
    Points
    1 904
    Par défaut
    Tu force l'utilisateur a passer par un programme de decryptage pour consulter et eventuellement modifier le document.

    Je pensais qu'a l'origine, le document a garder en lecture seule n'etait pas sence etre directement ouvert par l'utilisateur (un fichier de configuration d'appli par ex) c'est pour ca que j'ai propose de l'encrypter

  9. #9
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 326
    Points : 62
    Points
    62
    Par défaut
    Tu force l'utilisateur a passer par un programme de decryptage pour consulter et eventuellement modifier le document.
    et comment je pourrais savoir qu'un fichier a été ouvert ?
    je peut tester si le fichier a été ouvert et puis créer un copie et le fermer et l'utilisateur pourra lire la copie !

  10. #10
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    459
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 459
    Points : 553
    Points
    553
    Par défaut
    Si tu définis correctement les autorisations d'accès au fichier dans l'onglet Sécurité, tu peux indiquer qu'il est en lecture seule pour tes utilisateurs : ils ne pourront alors pas modifier les attributs (ils auront un message de type "Accès refusé"). Après, si tu me dis que tes utilisateurs peuvent modifier ces autorisations, c'est qu'il y a un autre problème, plus grave celui-là !

  11. #11
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 326
    Points : 62
    Points
    62
    Par défaut
    ca je sais pas comment y accéder par un programme !

  12. #12
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 326
    Points : 62
    Points
    62
    Par défaut
    il y a aussi la classe : FileIOPermission
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    fileIOPerm1 = new FileIOPermission(FileIOPermissionAccess.Read, "C:\\Examples\\Test\\TestFile.txt");
    mais ca donne rien...

  13. #13
    Membre éclairé
    Inscrit en
    Mai 2003
    Messages
    271
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2003
    Messages : 271
    Points : 720
    Points
    720
    Par défaut
    ta question se rapporte plus à windows lui meme que la programmation.

    Ce que tu fais est en effet equivalent à cocher "readonly" sur les propriétés du fichier, propriété qui existe depuis des lustres sous dos (attrib +r)

    Ce que tu veux est comme suggéré plus haut lié aux parametres du Systeme de Fichier, cad NTFS sous windows, et là, il faut gérer les logins, ce qui n est pas des plus simple (ou peut etre via les groupes).

    c est pas compliqué via du code c# (ex: http://www.thescripts.com/forum/thread505982.html ), mais la question est plutot de savoir si c est vraiment ce que tu veux en terme de besoins utilisateurs...

  14. #14
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 326
    Points : 62
    Points
    62
    Par défaut
    ce que je veux tout simplement:

    je veux mettre des fichiers en read only de telle sorte que lorsque je les envoie à d'autres personnes par email par exemple , ils ne peuvent que lire sans modifier
    est ce que c'est fesable ?
    est il possible de mettre un fichier en read only de facon permanente ? c a d que personne ne puisse accéder aux attributs par exemple ?


    merci

  15. #15
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    459
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 459
    Points : 553
    Points
    553
    Par défaut
    Ce que tu demandes me semble très difficile. Pour ma part, je ne sais pas faire. Je me demande si ce genre de cas n'est pas inclus dans le format Open XML avec les DRM, mais là je m'égare...

  16. #16
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 326
    Points : 62
    Points
    62
    Par défaut
    est ce qu'il n' y a pas moyen d'empecher n'importe quel utilisateur de sauvegarder ce fichier ..est ce possible ??

  17. #17
    Membre éclairé
    Inscrit en
    Mai 2003
    Messages
    271
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2003
    Messages : 271
    Points : 720
    Points
    720
    Par défaut
    c est "marrant" de voir comment un concept apparemment tres simple est quasiment impossible à mettre en oeuvre, du moins comme tu l entends.
    Un fichier lisible pourra toujours etre copié d une facon ou d une autre, vers le meme fichier ou un autre.
    La seule possibilité que je vois rejoint l idee de Piotrek: il te faut crypter / signer le fichier.

    Ton fichier, c est du texte?
    Qd tu dis "lire" le fichier, c est via un programme specifique (que tu as ecris) ou n importe quel editeur?
    Ds le 1er cas, tu pourrais te diriger vers un format binaire que seul ton programme pourra lire (comme le fait le pdf)

  18. #18
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 326
    Points : 62
    Points
    62
    Par défaut
    par exemple un fichier .xls ..lire je veux dire que l'utilisateur peut l'ouvrir et regarder ce qu'il y a dedans sans le modifier

    je peux le crypter et pour l'ouvrir l'utilisateur doit passer par mon programme pour le decrypter et je l'ouvre avec le programe (via filestream) ainsi il pourra pas le modifier mais reste un probleme c'est que il peut le modifier et l enregistrer sous un autre nom ...et ca je sais pas comment empêcher

  19. #19
    Membre éclairé
    Inscrit en
    Mai 2003
    Messages
    271
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2003
    Messages : 271
    Points : 720
    Points
    720
    Par défaut
    si tu veux que l utilisateur puisse lire le fichier xls dans Excel, a quoi sert ton programme?
    Ds ce cas precis, tu peux plutot utiliser la protection des feuilles excels.

    Mais de manière plus generale, ce que tu veux n est pas possible: comment peux tu empecher l utilisateur de copier?

    c est comme si tu pretais un livre à ton voisin, que tu voudrais qu il puisse le lire sans le copier! Non sens!

  20. #20
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 326
    Points : 62
    Points
    62
    Par défaut
    .xls..c'était juste un exemple .. c'est plutot des données CAD donc l'utilisateur peut voir le produit par exemple sans pouvoir modifier les parametres par exemple

Discussions similaires

  1. gérer l'acces à des fichiers : read only / write ..
    Par ryoussef19 dans le forum Visual C++
    Réponses: 21
    Dernier message: 09/08/2007, 15h39
  2. [FPDF] création d'un interface pour accés à des fichiers PDF
    Par StyleXP dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 19/12/2005, 10h18
  3. accés à des fichiers *.db
    Par wincroc dans le forum Bases de données
    Réponses: 4
    Dernier message: 16/08/2005, 14h48
  4. Chemin d'accès des fichiers dans des sous rep
    Par Le Veilleur dans le forum C++Builder
    Réponses: 4
    Dernier message: 17/11/2004, 14h37
  5. Restreindre l'accès des fichiers..
    Par Neilos dans le forum Windows
    Réponses: 6
    Dernier message: 25/08/2004, 00h22

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