Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

SQL server 2005 security & VB .... Χάθηκα :)

Îåêßíçóå áðü ôï ìÝëïò DrMad. Τελευταία δημοσίευση από το μέλος martsel στις 18-08-2006, 17:06. Υπάρχουν 20 απαντήσεις.
Σελίδα 1 από 2 (21 εγγραφές)   1 2 >
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  16-07-2006, 02:32 14795

    SQL server 2005 security & VB .... Χάθηκα :)

    Καλησπέρα

    Για όποιον θέλει και μπορεί να βοηθήσει, το πρόβλημά μου είναι το εξής:

    Έχω φτιάξει ένα πρόγραμμα σε VB 2005 το οποίο βασίζει τη λειτουργία του συνεργαζόμενο με μια βάση δεδομένων σε SQL server 2005. Μέχρι εδώ όλα καλά. Το θέμα είναι ότι αυτό το πρόγραμμα πρόκειται να λειτουργήσει σε έναν υπολογιστή ο οποίος θα είναι ξέφραγο αμπέλι και θέλω να εμποδίσω άλλους να δούν τα περιεχόμενα της βάσης με άλλο πρόγραμμα εκτός από το δικό μου, διότι θα έχουν πρόσβαση και δυνατότητα αντιγραφής του .mdf αρχείου.

    Ενώ περίμενα (ο παλιομοδίτης) να κάνω κάπου δεξί κλικ, να ορίσω ένα password για την database και το οποίο θα "γνώριζε" μόνο η εφαρμογή μου για να την "ανοίξει", διάβασα τα κατεβατά για τους διάφορους users, user roles κλπ. που έχουν τα σχετικά συγγράματα και τελικά δεν κατάλαβα το εξής:

    Ό,τι users και passwords να ορίσω, αν κάποιος αντιγράψει το mdf αρχείο και το κάνει attach στο δικό του SQL server όπου θα έχει administration priviledges, δεν μπορεί να δεί όλα τα δεδομένα? Πώς μπορώ να το εμποδίσω αυτό? Πρέπει να κάνω encrypt κάποια columns ή υπάρχει κάποιος πιο απλός τρόπος?

    Ευχαριστώ εκ των προτέρων για τη βοήθεια


    Μισώ τα ξυπνητήρια!!!!!!
  •  16-07-2006, 12:04 14798 σε απάντηση της 14795

    Απ: SQL server 2005 security & VB .... Χάθηκα :)

    Μέχρι και τον SQL Server 2000 ισχύει αυτό που λες, όποιος έχει φυσική πρόσβαση στον server ώστε να σταματήσει το service και να πάρει τo mdf αρχείο, έχει σηκώσει τη βάση. Και το μόνο που θα μπορεί να γίνει για να προφυλαχθούν ευαίσθητα δεδομένα είνα να καταφύγεις σε custom λύσεις κάνοντας κρυπτογράφιση στα data καθώς τα γράφεις.

    Στον SQL Server 2005 υπάρχει η δυνατότητα κρυπτογράφισης της βάσης (database encryption). Βέβαια, δεν τόσο απλή διαδικασία σαν να βάζεις ένα password όπως περιγράφεις. Περισσότερες πληροφορίες μπορείς να βρεις εδώ: http://www.databasejournal.com/features/mssql/article.php/3483931

    Πάντως, γενικώς σκέψου ότι πάντοτε η φυσική πρόσβαση στον server είναι πρόβλημα. Υπάρχουν πολλοί τρόποι να πάρεις τα data από μια βάση πέρα από το copy του αρχείου και είναι ιδιαίτερα εύκολο εφόσον στο σενάριο σου db server και application client θα είναι στο ίδιο PC.


    Vir prudens non contra ventum mingit
  •  16-07-2006, 20:24 14806 σε απάντηση της 14798

    Απ: SQL server 2005 security & VB .... Χάθηκα :)

    Πω πω φρίκη......Με βλέπω να ξαναγράφω την εφαρμογή να δουλεύει με Access......ακριβώς και μόνο γι αυτό το λόγο. Οι λόγοι που ήθελα τον SQL server έναντι της Access ήταν 1) επειδή επρόκειτο να υπάρχει και άλλο client σε άλλο pc που θα βλέπει την ίδια βάση οπότε το service-based του SQL server ακούγεται πιο αποτελεσματικό από το file-based της Access (η εφαρμογή δεν προορίζεται για web) , και 2ο) επειδή ήθελα να τον μάθω.

    Ευχαριστώ πολύ Kelman για τις συμβουλές, πίσω τώρα ξανά στο πληκτρολόγιο.....
    Μισώ τα ξυπνητήρια!!!!!!
  •  16-07-2006, 22:44 14821 σε απάντηση της 14795

    Απ: SQL server 2005 security & VB .... Χάθηκα :)

    Αν δε μπορείς να το προστατέψεις, κρύψε το! Εντάξει, είναι γεγονός πως ο SQL Server δεν κρύβεται εύκολα, αλλά θα σου πρότεινα το παρακάτω hack:

    Η εφαρμογή σου, έχει τα αρχεία της βάσης (.mdf & .ldf) μετονομασμένα σε κάτι άσχετο. Όταν ξεκινάει λοιπόν:

    1) Τα μετονομάζει στα κανονικά τους ονόματα.

    2) Ξεκινάει το SQL Server service

    3) Αφού τελειώσεις, αντιστρέφεις τη διαδικασία (δηλαδή, σταματάς το Service, και ξαναμετονομάζεις τα αρχεία).

    Παράκληση! Μην πέσετε να με φάτε, αστειεύομαι! Η μόνη λύση στο πρόβλημά σου, είναι να χρησιμοποιήσεις file database, όπως η Access. Υπάρχουν αρκετές, η κάθε μία με τα δικά της προβλήματα (κυρίως ζητήματα concurrency & integrity).

    Ωστόσο, καλά λόγια (σε σχέση με τις υπόλοιπες) είχα διαβάσει για τη VistaDB. Δεν την έχω δοκιμάσει, και δεν ξέρω, αλλά έχει native .net provider, και προσφέρει encryption. Ρίξε μια ματιά και ο ίδιος: http://www.vistadb.net/features.asp
    Μην αφήνετε τα media να σας "ταΐζουν"!
  •  17-07-2006, 06:14 14829 σε απάντηση της 14821

    Απ: SQL server 2005 security & VB .... Χάθηκα :)

    Ο SQL Server Express μπορεί να χρησιμοποιηθεί και ως file-based.

     

    Σχετικό link: Xcopy Deployment (SQL Server Express)


    while (!dead) learn();
  •  17-07-2006, 10:58 14833 σε απάντηση της 14795

    Απ: SQL server 2005 security & VB .... Χάθηκα :)

    Γιώργο, αυτό όμως είναι file-based γιαλαντζί!

    "SQL Server Express must already be installed on the target computer and has an instance running to use Xcopy deployment."

    Το μεγαλύτερο αβαντάζ των καθαρών file-based dbs, είναι ότι οι ρυθμίσεις και το setup, γίνονται στην ίδια τη βάση, και όχι στον server.
    Μην αφήνετε τα media να σας "ταΐζουν"!
  •  17-07-2006, 11:16 14835 σε απάντηση της 14795

    Απ: SQL server 2005 security & VB .... Χάθηκα :)

     DrMad wrote:

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

     

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

    Όσο για το δίπτυχο MS Access και Security νομίζω πως, ιδιαίτερα από την στιγμή που ο κάθε ένας έχει πρόσβαση στο mdb, αποτελεί κακόγουστο αστείο. (μία σχετική αναζήτηση στο Google θα σας πείσει)

    Εγώ θα πρότεινα να δημιουργήσεις έναν λογαριασμό χρηστών στα Windows, ο οποίος δεν θα έχει administrator rights (για να προστατέψεις το sql server service και το mdf) και να δημιουργήσεις τους κατάλληλους χρήστες στον SQL Server.

    Οτιδήποτε παραπάνω θα αποτελεί εξιδικευμένη λύση, για να αντιμετωπίσεις εξειδικευμένες απειλές από εξειδικευμένους front end users.Άν τελικά αυτό είναι το σενάριο... περαστικά!!!

  •  17-07-2006, 16:58 14850 σε απάντηση της 14795

    Απ: SQL server 2005 security & VB .... Χάθηκα :)

    Αφού ευχαριστήσω για τη βοήθεια και τις τόσες απαντήσεις, θέλω να αποσαφηνίσω το εξής:

    Δεν είναι αναγκαίο να προστατεύσω το mdb από τα χέρια του προχωρημένου χρήστη, το πρόγραμμα θα λειτουργήσει σε νοσοκομείο και από τους γιατρούς συνήθως δεν πρέπει να περιμένει και κανείς πολλά. (Για να μην με κατηγορήσετε για κοινωνικό ρατσισμό κι εγώ γιατρός είμαι.....) Επειδή όμως η βάση αναγκαστικά θα είναι σε υπολογιστή από τον οποίον περνούν πολλά χέρια (+1 client), προτιμώ να έχει κάποιος στα χέρια του το password-protected mdb, όπου θα πρέπει να μπεί στη διαδικασία να τρέξει κάποιο office recovery πρόγραμμα, παρά το .mdf που απλά θα το κάνει mount στο δικό του SQL server και θα το δει ανεξαρτήτως users και passwords που θα έχω ορίσει.

    Το αν θα δουλεύει το ίδιο καλά, θα σας το πω εκ των υστέρων, το test του να γραφοσβήνουν συγχρόνως στην ίδια εγγραφή οι 2 υπολογιστές που θα δουλέψει η εφαρμογή επίκειται.......
    Μισώ τα ξυπνητήρια!!!!!!
  •  20-07-2006, 14:13 15015 σε απάντηση της 14795

    Απ: SQL server 2005 security & VB .... Χάθηκα :)

    Καλησπέρα (από το Πανεπιστήμιο που μιλήσαμε σήμερα στο τηλέφωνο),

    Το κοίταξα πάλι λιγάκι και νομίζω ότι είναι αυτό που σου είπα.

     

    Αν κάποιος κάνει απλά copy του αρχείου και το βάλει σε αλλο μηχάνημα με SQL Server δεν θα παίξει.

    Ο μόνος τρόπος για να γίνει μεταφορά σε άλλο server είναι να μπει κάποιος στο Enterprise manager να κάνει ένα back up ας πούμε και να πάρει το back up ή να κάνει detach την database και τα login files και να τα βάλει στον destination server.

     

    Για να γίνει κάτι τέτοιο όμως πρέπει να ειναι sa στον sql server, αυτό όμως μπορεί να οριστεί μόνο από αυτόν που εγκαθιστά τον SQL Server.

     

    Άρα, εν κατακλείδι, αν είσαι εσύ ο sa, μόνο εσύ μπορείς να κάνεις την 2η διαδικασία και κανείς άλλος (εκτός αν έχεις εσύ ορίσει χρήστες που να μπορούν).

    Η πρώτη διαδικασία με απλό copy/paste από server σε server δεν παίζει.

     

    Θανάσης

     

  •  20-07-2006, 23:00 15036 σε απάντηση της 15015

    Απ: SQL server 2005 security & VB .... Χάθηκα :)

    Χμ, το πιθανότερο είναι ότι στα μηχανήματα που έπαιξα δεν είχα κάνει καλό "καθάρισμα" της βάσης από χρήστες/προνόμια, θα το ξανακάνω και θα σου πώ.

    Ευχαριστώ πάρα πολύ για τη βοήθεια και κυρίως για το χρόνο και την υπομονή σου .
    Μισώ τα ξυπνητήρια!!!!!!
  •  20-07-2006, 23:19 15038 σε απάντηση της 15036

    Απ: SQL server 2005 security & VB .... Χάθηκα :)

    Έχε υπόψην σου ότι στον SQL Server μπορείς να διαλέξεις το authentication να γίνεται σε ένα από τα παρακάτων δύο modes:

    • Αποκλειστικά Windows Authentication mode: Σημαίνει ότι αυτός που πάει να χρησιμοποιήσει τον server ελέγχεται βάσει των credencials του windows logon που έχει κάνει. Εκεί τυπικά ορίζεις windows χρήστες και τι δικαιώματα έχουν σε κάθε βάση και στον ίδιο τον server. Προσοχή γιατί οποιοσδήποτε χρήστης ανήκει στο group των administrators του τοπικού μηχανήματος είναι αντίστοιχα και administrator του SQL Server.
    • Mixed mode: Windows Authentication KAI SQL Server authentication. Εδώ ισχύει ό,τι και προηγουμένως αλλά επιπρόσθετα μπορούμε να κανονίσουμε ζευγάρια User Name - Password και να χρησιμοποιούμε αυτά για να συνδεθούμε στον SQL Server. Όλα αυτά αποθηκεύονται μέσα στον SQL Server.

    Vir prudens non contra ventum mingit
  •  21-07-2006, 00:28 15039 σε απάντηση της 15038

    Απ: SQL server 2005 security & VB .... Χάθηκα :)

    Kelman, to peirama pou kanw einai to e3hs:

    Exw valei SQL server se mixed mode kai exw svhsei ola ta logins plhn tou sa, sumperilambanomenwn kai twn groups Buitin\Administrators, klp klp.

    Ftiaxnw ena neo login me password kai meta ftiaxnw mia nea vash dedomenwn me opou svhnw olous tous users. Sth vash auth ftiaxnw ena user kai meta paw sta properties tou login pou eixa ftia3ei prin sto server kai to kanw map sth vash (mesw tou user mapping).

    Otan syndeomai mesw tou login autou pragmatika ektos apo th nea vash, mporw na dw ta onomata twn allwn alla oxi ta periexomena tous.

    E, afotou stamathsa to service kai antegrapsa to mdf kai ldf arxeia se allo pc, me to pou dokimasa na kanw attach sth bash, ta eide kanonikotata.

    Ti la8os kanw?
    Μισώ τα ξυπνητήρια!!!!!!
  •  21-07-2006, 00:43 15040 σε απάντηση της 15039

    Απ: SQL server 2005 security & VB .... Χάθηκα :)

    Κανένα λάθος, όλες αυτές οι ρυθμίσεις που κάνεις αφορούν τον server και δεν τις σέρνει μαζί της η βάση. Αν στον άλλον server μπορείς να κάνεις login πχ ως administrator, θα δεις τη βάση κανονικά.

    Θα σου πρότεινα να εγκαταλείψεις αυτή τη προσέγγιση και να το πάρεις απόφαση να κάνεις encrypt τα δεδομένα καθώς τα γράφεις στη βάση και decrypt όταν τα διαβάζεις. Στο Google θα βρεις πολύ υλικό και μιας δεν θέλεις encryption πολύ υψηλού επιπέδου αλλά απλή προστασία από τον μέσο χρήστη, δεν χρειάζεται να υλοποιήσεις καμιά 99.99999% boolet proof λύση. Μπορείς ακόμα-ακόμα να δοκιμάσεις να γράψεις και managed κώδικα στον SQL Server γι αυτόν το σκοπό, πχ μια function για το encryption και μια για το decryption.


    Vir prudens non contra ventum mingit
  •  21-07-2006, 14:04 15063 σε απάντηση της 14806

    Απ: SQL server 2005 security & VB .... Χάθηκα :)

    Καλησπέρα ξανά,

    Το έκανα κι εγώ σήμερα με διακοπή του service και αυτό πράγματι γίνεται. Αυτό δεν αφορά την ασφάλεια του SQL Server, αλλά γίνεται έτσι όπως το λες, δίχως να χρειάζεται να κάνεις detach.

    Αν δεν μπορείς να διαχειριστείς την ασφάλεια στο pc, τότε η μόνη μέθοδος είναι πραγματικά κρυπτογράφηση.

    Θανάσης

  •  21-07-2006, 14:09 15064 σε απάντηση της 15063

    Απ: SQL server 2005 security & VB .... Χάθηκα :)

    Πάντως οι απλοί χρήστες δεν μπορούν να κόψουν το service, μόνο ο Admin, οπότε αν εμπιστεύεσαι τον admin ok, αλλιώς υπάρχει θέμα ασφάλειας.

    Θανάσης
Σελίδα 1 από 2 (21 εγγραφές)   1 2 >
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems