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

 

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

Ερώτηση για εφαρμογή αποθήκευσης κωδικών

Îåêßíçóå áðü ôï ìÝëïò gspiros. Τελευταία δημοσίευση από το μέλος RedHat στις 29-02-2008, 17:03. Υπάρχουν 7 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  30-09-2007, 19:32 35665

    Ερώτηση για εφαρμογή αποθήκευσης κωδικών

    Καταρχήν, ελπίζω να έχω κάνει post σε σωστό topic!
    Λοιπόν, σκεφτόμουν να γράψω μια web εφαρμογή όπου θα αποθηκεύω διάφορα δεδομένα όπως κωδικούς κτλ σε μια βάση (ίσως MSSQL).

    Ποίος είναι ο καλύτερος τρόπος για να μπορώ να έχω πρόσβαση στα δεδομένα?
    Να κάνω login στην web εφαρμογή χρησιμποιώντας τα username και password της βάσης ή να κάνω login μέσω κάποιου account που θα έχω φτιάξει (πχ με CreateUserWizard)?
    Ελπίζω να έγινα κατανοητός...
  •  30-09-2007, 19:59 35666 σε απάντηση της 35665

    Απ: Ερώτηση για εφαρμογή αποθήκευσης κωδικών

    Μάλλον θα πρέπει να εξηγήσεις τί θέλεις να κάνεις. Τί είδους κωδικούς θέλεις να αποθηκευσεις? Μήπως αυτό που ζητάς καλύπτεται από τους Membership και Profile Providers του ASP.NET?
    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  30-09-2007, 20:11 35667 σε απάντηση της 35665

    Απ: Ερώτηση για εφαρμογή αποθήκευσης κωδικών

    Αυτό που γίνεται συνήθως είναι να κάνεις login μέσω κάποιου account που έχεις φτιάξει.
    Επίσης, οι κωδικοί και ειδικά τα passwords πρέπει να διακινούνται και να καταχωρούνται κρυπτογραφημένα (π.χ. MD5) μαζί με κάποιο salt....
    Ρίξε μια ματιά εδώ:
    http://www.dotnetzone.gr/cs/forums/thread/32931.aspx

    Nothing to declare...
  •  30-09-2007, 20:28 35670 σε απάντηση της 35667

    Απ: Ερώτηση για εφαρμογή αποθήκευσης κωδικών

    Τα γνωρίζω αυτά για τα Memberships κτλ και ότι πρέπει να είναι κρυπτογραφημένα.
    Θέλω όμως να το φτιάξω για δικιά μου εξάσκηση, οπότε δεν θέλω να χρησιμοποιήσω Memberships και Profiles.
    Αυτό που θέλω να φτιάξω είναι ένα webform, όπου μέσω αυτής θα μπορώ να κάνω edit, insert, delete usernames και passwords.
    Η ερώτησή μου είναι ποιός είναι ο καλύτερος τρόπος για να κάνω login σε μια τέτοια εφαρμογή.
    Μέσω του username και password της βάσης ή μέσω κάπου account που θα μπορεί να φτιαχτεί πχ με CreateUserWizard.
    Ουσιαστικά η αρχική σελίδα θα είναι μόνο ένα απλό κλασσικό login box.
  •  30-09-2007, 20:31 35672 σε απάντηση της 35667

    Απ: Ερώτηση για εφαρμογή αποθήκευσης κωδικών

    Αυτή τη λειτουργία την παρέχει ήδη η ASP.NET μέσω του membership provider και σου επιτρέπει να επιλέξεις αν τα passwords θα είναι hashed με SHA1 (πιο ασφαλές από τον MD5) και salt των 128 bit ή encrypted με AES και ένα τυχαίο κλειδί που δημιουργείται ανά εφαρμογή, αν και οι επιλογές αυτές αλλάζουν από τα config αρχεία. Η επιλογή δεν είναι τόσο απλή όμως, καθώς αν κάνεις hash το password δεν μπορείς να το στείλεις στον χρήστη αν το ξεχάσει.

    Θα προτιμούσα πάντως ο gspiros να μας πει τί θέλει. Μπορεί πράγματι αυτό που θέλει να γίνεται τόσο απλά, χρησιμοποιώντας μόνο τον Membership provider του ASP.NET.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  30-09-2007, 20:34 35674 σε απάντηση της 35670

    Απ: Ερώτηση για εφαρμογή αποθήκευσης κωδικών

    gspiros:
    Τα γνωρίζω αυτά για τα Memberships κτλ και ότι πρέπει να είναι κρυπτογραφημένα.
    Θέλω όμως να το φτιάξω για δικιά μου εξάσκηση, οπότε δεν θέλω να χρησιμοποιήσω Memberships και Profiles.
    Αυτό που θέλω να φτιάξω είναι ένα webform, όπου μέσω αυτής θα μπορώ να κάνω edit, insert, delete usernames και passwords.
    Η ερώτησή μου είναι ποιός είναι ο καλύτερος τρόπος για να κάνω login σε μια τέτοια εφαρμογή.
    Μέσω του username και password της βάσης ή μέσω κάπου account που θα μπορεί να φτιαχτεί πχ με CreateUserWizard.
    Ουσιαστικά η αρχική σελίδα θα είναι μόνο ένα απλό κλασσικό login box.

    ... Μήπως.... δεν έγινα κατανοητός?
    Δεν ξέρω αν απαντάς σε εμένα ή στον Παναγιώτη... καλό θα ήτανε να κάνεις "Παράθεση" για να ξέρουμε σε ποιόν απαντάς.

    Εγώ πάντως δεν αναφέρομαι σε Memberships κλπ... μάλλον δεν διάβασες το link.

    Nothing to declare...
  •  30-09-2007, 20:57 35676 σε απάντηση της 35670

    Απ: Ερώτηση για εφαρμογή αποθήκευσης κωδικών

    Η CreateUserWizard χρησιμοποιεί τον Membership provider οπότε μάλλον θα πρέπει να αντικαταστήσεις και αυτήν - και όλη την υποστήριξη που σου προσφέρει το ASP.NET 2.0.

    Όσον αφορά το "ποιός είναι ο κατάλληλος τρόπος", αυτό εξαρτάται από την εφαρμογή σου. Σε μία internet εφαρμογή δεν μπορείς να φτιάξεις ένα database user ανά χρήστη της εφαρμογής. Επίσης, είναι πιο ασφαλές οι χρήστες να μην έχουν τρόπο πρόσβασης στη βάση παρακάμπτωντας την εφαρμογή. Σε αυτή την περίπτωση θα πρέπει να ακολουθήσεις τη συμπεριφορά του SqlMembershipProvider και ανάλογα με το τί θέλεις, να αποθηκεύεις στη βάση είτε encrypted είτε hashed την τιμή του password.
    Σε ένα περιβάλλον intranet, μπορείς να χρησιμοποιήσεις Windows Authentication οπότε το μόνο που θα χρειάζεσαι θα είναι να προσθέσεις τα κατάλληλα permissions στα folder του web application - π.χ. μπορείς να φτιάξεις ένα Group MyApplicationUsers και να προσθέσεις σε αυτούς τους χρήστες της εφαρμογής σου. Σε αυτή την περίπτωση βέβαια, μάλλον δεν θα χρειάζεσαι εφαρμογή για account management - εκτός και αν θέλεις να φτιάξεις μία εφαρμογή για να προσθέτεις/αφαιρείς χρήστες στο κατάλληλο group.
    Τέλος, αν οι χρήστες ήδη έχουν πρόσβαση στη βάση π.χ. για να χρησιμοποιήσουν άλλες εφαρμογές ή για να δημιουργήσουν reports μπορείς να βασιστείς στα database accounts, επιβάλλοντας η εφαρμογή να συνδέεται στη βάση χρησιμοποιώντας τα username/passwords που έχει δώσει ο χρήστης. Και πάλι, η καλύτερη λύση είναι να δημιουργήσεις ένα ρόλο (κάτι αντίστοιχο με τα Windows Groups) με την εντολή CREATE ROLE και να δώσεις σε αυτή τα απαραίτητα δικαιώματα. Μετά, προσθέτεις και αφαιρείς χρήστες στο ρόλο.

    Μπορείς πάντως να δοκιμάσεις να φτιάξεις τους δικούς σου Membership providers οι οποίοι θα υποστηρίζουν τις παραλλαγές που θέλεις. Θα μπορούσες για παράδειγμα να φτιάξεις ένα provider ο οποίος θα δημιουργεί database users.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  29-02-2008, 17:03 40619 σε απάντηση της 35676

    Απ: Ερώτηση για εφαρμογή αποθήκευσης κωδικών

    Για μία μορφή encryption αν και δεν είναι ακριβώς encryption στους κωδικούς αν χρειαστείς ωραίο είναι και το SHA1 παραδείγματα υπάρχουν άφθονα στο internet και είναι με σίγουρα αποτελέσματα

    Peter Bournakas
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems