Ανανέωση ιστοσελίδας
ms-office.gr > Forum > Microsoft Access > Access - Ερωτήσεις / Απαντήσεις > [ Ασφάλεια] Ασφάλεια δεδομένων σε ACCESS 2007

Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια!

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 03-11-12, 20:16
Όνομα: Ηλίας
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 31-10-2012
Περιοχή: ΑΘΗΝΑ - ΒΥΡΩΝΑΣ
Μηνύματα: 9
Προεπιλογή Ασφάλεια δεδομένων σε ACCESS 2007

Γεια σας. είμαι νέο μέλος στο forum... μπράβο σε όλους για το τόσο όμορφο, χρηστικό και φιλικό site που έχετε δημιουργήσει ...και ευχαριστώ εκ των προτέρων για την βοήθεια.
Εχω μια εφαρμογή σε ACCESS 2007 και θα ήθελα να ρωτήσω αν υπάρχει "τρόπος" να μην μπορεί κάποιος ανοίγοντας μια νεα access να κανει εισαγωγή "εξωτερικών δεδομένων" απο την παλιά (δηλ πίνακες, ερωτήματα, κλπ)
(οχι με κωδικό κλειδώματος της βάσης...κατι πιο, οσο γίνεται, ασφαλές-πονηρό-έξυπνο)
ευχαριστώ
Απάντηση με παράθεση
  #2  
Παλιά 03-11-12, 22:58
Το avatar του χρήστη Tasos
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.011
Προεπιλογή

Καλησπέρα Ηλία και καλωσόρισες στο φόρουμ!

Από τη στιγμή που ένα αρχείο Access μπορεί να αντιγραφεί στο "φλασάκι" του κάθε χρήστη, οποιαδήποτε μέθοδος και αν εφαρμοστεί δεν εξασφαλίζει την απόλυτη προστασία δεδομένων.
Υπάρχουν αρκετά εμπορικά προγράμματα που μπορούν και παρακάμπτουν τους διάφορους τρόπους προστασίας σε *mdb 'η *.accdb.

Το ιδανικό θα ήταν οι πίνακες της βάσης να μην ήταν πίνακες Access αλλά πίνακες SQL σε SQL Server (εφαρμόζεται συνήθως σε εταιρίες με εταιρικό δίκτυο και κοστίζει).

Αν δεν υπάρχει τέτοια δυνατότητα, μπορεί κανείς σε επίπεδο ασφάλειας των Windows να ορίσει ειδικά δικαιώματα στον φάκελο που περιέχει το αρχείο και να επιτρέπει την πρόσβαση μόνο σε επιλεγμένους χρήστες (το πιο έξυπνο).

Τέλος, μπορεί κανείς να ασφαλίσει τα δεδομένα των πινάκων μια βάσης χρησιμοποιώντας τη μέθοδο "Κρυπτογράφηση με κωδικό πρόσβασης" (λιγότερο ασφαλές αλλά ικανοποιητικό αν χρησιμοποιείται από μέσους, μη κακόβουλους χρήστες.

Στην τελευταία περίπτωση, για να μην πληκτρολογείται κωδικός κάθε φορά που ανοίγει η εφαρμογή θα πρέπει να γίνουν τα παρακάτω βήματα.

  1. Διαίρεση της Βάσης. Έτσι θα έχουμε τους πίνακες χωριστά στη βάση παρασκηνίου που θα δημιουργηθεί.
  2. Ανοίγουμε την Access (2007)
  3. Επιλέγουμε "Άνοιγμα"
    Στο παράθυρο διαλόγου που θα εμφανιστεί , αφού επιλέξουμε την Παρασκηνιακή Βάση δεδομένων, επιλέγουμε "Άνοιγμα" για αποκλειστική χρήση (Πατάμε το βέλος στο κουμπί "Άνοιγμα").
  4. Πάμε στην καρτέλα "Εργαλεία βάσης δεδομένων" και κατόπιν επιλέγουμε "Κρυπτογράφηση με κωδικό πρόσβασης".
    Πληκτρολογούμε τον κωδικό και κλείνουμε την βάση.
  5. Ανοίγουμε τη Βάση δεδομένων (Frontend)
    Με το που θα ανοιχτεί κάποιος συνδεδεμένος πίνακας, θα μας εμφανιστεί η ειδοποίηση "Μη έγκυρος κωδικός"
  6. Διαγράφουμε ΟΛΟΥΣ τους συνδεδεμένους πίνακες που έχουν σχέση με την Παρασκηνιακή Βάση και τους συνδέουμε ξανά.
    Αυτή τη φορά, θα μας ζητηθεί να πληκτρολογήσουμε τον κωδικό που χρησιμοποιήσαμε στο βήμα 3
Έτσι, η Παρασκηνιακή Βάση δεν μπορεί να ανοιχτεί χωρίς την καταχώρηση κωδικού από οποιονδήποτε χρήστη ή πρόγραμμα ΕΚΤΟΣ από την Frontend.

Ελπίζω να σου έδωσα κάποιες ιδέες.

Φιλικά

Τάσος
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών
Απάντηση με παράθεση
  #3  
Παλιά 03-11-12, 23:36
Όνομα: Ηλίας
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 31-10-2012
Περιοχή: ΑΘΗΝΑ - ΒΥΡΩΝΑΣ
Μηνύματα: 9
Προεπιλογή

Τάσο σ ευχαριστώ πολύ που διέθεσες το χρόνο σου να μου απαντήσεις.
Θα μελετήσω τα όσο μου έγραψες και αν αντιμετωπίσω κάποιο προβλημα θα σε "ξαναενοχλήσω"

Με εκτίμηση

Ηλιας
Απάντηση με παράθεση
  #4  
Παλιά 04-11-12, 20:55
Όνομα: Ηλίας
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 31-10-2012
Περιοχή: ΑΘΗΝΑ - ΒΥΡΩΝΑΣ
Μηνύματα: 9
Προεπιλογή

καλησπέρα και πάλι

Τάσο έκανα τα βήματα που μου πρότεινες και εχω δημιουργήσει δυο βάσεις
1. την παρασκηνιακή που εχει τους πίνακες κ εχω βάλει κωδικό πρόσβασης
2. την Βάση δεδομένων (Frontend) που έχει ολα τα υπολοιπα αντικείμενα (και τους συνδεδεμένους πίνακες).

Πιστεύω οτι όλα τα έκανα σωστά.. δεν μου λείνει όμως το αρχικό πρόβλημα γιατί αφενός μπορεί κάποιος να πειράξει τούς πίνακες στη βάση (Frontend) (χωρίς κωδικό) κ αφ ετέρου αν κάνεις απο την βάση (Frontend) αντιγραφή εναν συνδεδεμένο πίνακα και κατόπιν επικόληση (με επιλογή στην επικόληση πίνακα : "δομή κ δεδομένα (τοπικός πίνακας)"), σε μια καινούργια βαση δεδομένων ... κ (επαναλαμβάνοντας το αντιγρ.-επικόληση για όλα τα αντικείμενα) ξαναφτιάχνω την αρχική βάση απο την οποία ξεκίνησα.
Μήπως κάτι δεν έκανα καλά ή κάτι δεν εχω καταλάβει ??

ευχαριστω
Απάντηση με παράθεση
  #5  
Παλιά 05-11-12, 00:04
Το avatar του χρήστη Tasos
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.011
Προεπιλογή

Καλησπέρα Ηλία!

Ναι δεν είναι η ιδανική λύση στο πρόβλημα σου για αυτό την τοποθέτησα στο τέλος των μεθόδων που ανέφερα στο προηγούμενο μου μήνυμα.

Αν δεν σε εξυπηρετεί θα πρέπει να εξετάσεις τις άλλες 2 περιπτώσεις (SQL Server ή να ορίσεις ειδικά δικαιώματα στον φάκελο που περιέχει το αρχείο).

Παραμένω όμως στο θέμα.

Η αντιγραφή ενός πίνακα με οποιονδήποτε κλασσικό τρόπο από την BackEnd δεν υφίσταται γιατί θα ζητηθεί από το χρήστη κωδικός πρόσβασης της BackEnd.

Το επόμενο σου βήμα είναι να ρυθμίσεις την FrontEnd έτσι που να μην μπορεί κανείς να επεξεργαστεί οτιδήποτε.

Θα σου πρότεινα να δεις το παράδειγμα στον παρακάτω σύνδεσμο: http://www.ms-office.gr/forum/access...dedomenon.html
.
Δοκίμασε και πες μας.

Όλα όμως αυτά δεν θα εμποδίζουν κάποιον να αντιγράψει τη βάση σου σε ένα φλασάκι και να την "ανοίξει με την ησυχία του" στο σπίτι του.

Φιλικά

Τάσος
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών
Απάντηση με παράθεση
  #6  
Παλιά 14-11-12, 20:08
Όνομα: Ηλίας
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 31-10-2012
Περιοχή: ΑΘΗΝΑ - ΒΥΡΩΝΑΣ
Μηνύματα: 9
Προεπιλογή

γεια σε όλους
λόγου του ότι η ACCESS από μόνη της δεν παρέχει 100% ασφάλεια κατέληξα στα εξής
αφού τελειώσει η εφαρμογή και θέλω με κάποιο τρόπο να την ασφαλίσω (όσο είναι εφικτό) από απλούς χρήστες

1) κρύβω κατ αρχήν τους πίνακες και ότι άλλο απο τα αντικείμενα επιθυμώ
πχ( μακροεντολές, φόρμες κλπ)... (δεξί κλικ > ιδιότητες πίνακα > τσεκάρουμε το κρυφό)

2) χρησιμοποιώ τις προτάσεις του Τάσου Κλείδωμα Βάσης δεδομένων "LockDB.mdb" (προστασία αντικειμένων βάσης δεδομένων από επεξεργασία - αποκλείει την προβολή σχεδίασης σε φόρμες) σε συνδυασμό με το "Login_Splash.mdb" (κωδικό για είσοδο στην εφαρμογή σαν διαχειριστής ή σαν χρήστης) ελαφρώς τροποποιημένα και προσαρμοσμένα στην εφαρμογή μου.

Αν μπεις σαν διαχειριστής (κωδικός 123456) μπορείς να κλειδώσεις ή να ξεκλειδώσεις τη βάση.
Αν μπεις σαν χρήστης (κωδικός 222222) περνάς στην εφαρμογή.
Αν η βάση είναι ξεκλείδωτη ανοίγει με shift για επεξεργασία
Αν η βάση είναι κλειδωμένη δεν μπορεί να την ανοίξει κάποιος.
Αν η βάση είναι κλειδωμένη και ανοίξει κάποιος μια νέα βάση για να τραβήξει τα αντικείμενα σ αυτήν ... αυτά που έχουμε κρύψει δεν θα φαίνονται.
Αν την πάρει κάποιος με "φλασάκι" την πάει σε άλλο υπολογιστή και δεν την "τρέξει" .... μπορεί ανοίγοντας μια νέα βάση να τραβήξει τα πάντα (Αχίλλειος πτέρνα) αν όμως την τρέξει έστω κ μια φορά η βάση κλειδώνει στον συγκεκριμένο υπολογιστή.

3) αλλάζω το όνομα της βάσης από test.accdb σε test.accdr (μια επιπλέον "προστασία") και δίνω στον χρήστη αυτό το αρχείο.


Τάσο σ ευχαριστώ για τις προτάσεις

δείτε τα και .... σχολιάστε

σας ευχαριστώ
Ηλίας
Συνημμένα Αρχεία
Τύπος Αρχείου: accdb test.accdb (504,0 KB, 139 εμφανίσεις)

Τελευταία επεξεργασία από το χρήστη eliok : 14-11-12 στις 21:20.
Απάντηση με παράθεση
  #7  
Παλιά 14-11-12, 21:38
Το avatar του χρήστη editolis
Super Moderator
Όνομα: Τολης
Έκδοση λογισμικού Office: Ms-Office 2007, Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 02-01-2010
Περιοχή: ATHENS-GREECE
Μηνύματα: 180
Προεπιλογή

Εαν δεν κανω λαθος υπαρχει και η λυση του Volume Serial Number του σκληρου δισκου. Η Βαση ανοιγει μονο στον υπολογιστη που θελεις. Με καποιες μικροτροποποιησεις κανεις δεν μπορει να την ανοιξει ακομα και εαν την εχει παρει με φλασάκι.
Απάντηση με παράθεση
  #8  
Παλιά 15-11-12, 09:39
Όνομα: Ηλίας
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 31-10-2012
Περιοχή: ΑΘΗΝΑ - ΒΥΡΩΝΑΣ
Μηνύματα: 9
Προεπιλογή

καλημέρα Τόλη

Συμφωνώ μαζί σου για τη λύση "Volume Serial Number του σκληρού δίσκου" αλλά πιστεύω ότι δεν καλύπτει την περίπτωση που την πάρει κάποιος με "φλασάκι" και από τον ίδιο ή άλλον υπολογιστή δημιουργήσει μια (νέα) κενή βάση δεδομένων και κάνει λήψη εξωτερικών δεδομένων επιλέγοντας την βάση (Access) που έχει στο φλασάκι.

Με αυτό τον τρόπο παίρνει όλα τα δεδομένα ξεκλείδωτα και μπορεί να αλλάξει ότι θέλει, είτε σε πίνακες, είτε σε VB κώδικα, ή οτιδήποτε άλλο…….

Όλα αυτά ισχύουν μόνο αν ο χρήστης δεν "τρέξει" τη βάση (test.accdb στο παράδειγμα μας) γιατί όπως έγραψα αν την τρέξει κλειδώνει σε "τοπικό επίπεδο" (φλασάκι, νέος Η/Υ, κλπ.)

Αν έχεις κάποιο VB κώδικα που να καλύπτει την περίπτωση αυτή θάθελα πολύ να τον ανεβάσεις στο Forum.

φιλικά
Ηλίας
Απάντηση με παράθεση
  #9  
Παλιά 15-11-12, 20:43
Το avatar του χρήστη Tasos
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.011
Προεπιλογή

Καλησπέρα!

Λάβετε υπόψη σας ότι οποιαδήποτε λύση βασίζεται σε κώδικες μπορεί να παρακαμφθεί αρκεί να απενεργοποιήσει κάποιος τις μακροεντολές της Access και να τρέξει το αρχείο από μία μη αξιόπιστη θέση.

Ο ασφαλέστερος τρόπος για να προστατευθούν τα δεδομένα είναι να εφαρμοστεί κρυπτογράφηση με κωδικό και στις δύο βάσεις (BakEnd - FrontEnd).

Εφαρμόζοντας τα παραπάνω και σε συνδυασμό με την απόκρυψη των μενού και άλλων στοιχείων από τα οποία θα μπορούσε κανείς να αποκτήσει πρόσβαση στην FrontEnd εξασφαλίζεται η μέγιστη δυνατή ασφάλεια των δεδομένων, πάντα όμως σε επίπεδο Access.

Δείτε το συνημμένο παράδειγμα.

Κωδικός για είσοδο και στις δύο βάσεις (BakEnd - FrontEnd) = pass

Για να εμφανίσετε μενού κλπ. στο FrontEnd πατήστε CTRL + F12, και στο διάλογο που θα ακολουθήσει
πληκτρολογήστε τον κωδικό 1234.

Επεξεργασία: Το παράδειγμα αφορά τις εκδόσεις Access 2007 - 2010

Φιλικά

Τάσος
Συνημμένα Αρχεία
Τύπος Αρχείου: zip FrontEndBackEnd.zip (1,27 MB, 183 εμφανίσεις)
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών

Τελευταία επεξεργασία από το χρήστη Tasos : 16-11-12 στις 09:38. Αιτία: Αλλαγή μη αναγνωρίσιμου αρχείου από την Access 2007
Απάντηση με παράθεση
  #10  
Παλιά 19-11-12, 20:14
Όνομα: Ηλίας
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 31-10-2012
Περιοχή: ΑΘΗΝΑ - ΒΥΡΩΝΑΣ
Μηνύματα: 9
Προεπιλογή

γεια σε ολους

Τάσο σ ευχαριστώ πολύ για τη βοήθεια είναι η πιο "ασφαλής" λύση (όσο μπορεί νάνε) σε ACCESS, για την προστασία των δεδομένων σε μια βάση .....

Ηλίας Κουρούσης
Απάντηση με παράθεση
Απάντηση στο θέμα


Δικαιώματα - Επιλογές
Δε μπορείτε να δημοσιεύσετε νέα μηνύματα
Δε μπορείτε να δημοσιεύσετε απαντήσεις
Δεν μπορείτε να επισυνάψετε αρχεία
Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας

Ο κώδικας ΒΒ είναι σε λειτουργία
Τα Smilies είναι σε λειτουργία
Ο κώδικας [IMG] είναι σε λειτουργία
Ο κώδικας HTML είναι εκτός λειτουργίας
Trackbacks are εκτός λειτουργίας
Pingbacks are εκτός λειτουργίας
Refbacks are εκτός λειτουργίας


Παρόμοια Θέματα

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
Ασφάλεια Βάσης Δεδομένων jimvasiloudis Access - Ερωτήσεις / Απαντήσεις 11 03-02-12 10:13
Ασφάλεια Βάσης Δεδομένων Meteora Access - Ερωτήσεις / Απαντήσεις 11 13-12-11 10:38
[ Ασφάλεια] Ασφάλεια Βάσης δεδομένων σε επίπεδο χρήστη TZON_FON Access - Ερωτήσεις / Απαντήσεις 4 26-09-10 21:28
[ Ασφάλεια] Ασφάλεια βάσης δεδομένων - Access 2000 artchrist73 Access - Ερωτήσεις / Απαντήσεις 5 10-08-10 12:30


Η ώρα είναι 21:21.