Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. [Tutorial] La Gestione degli utenti in PHP e MySQL
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • P
      pater Super User • 2 set 2005, 23:55 ultima modifica di

      @Tymba said:

      i miei complimenti :vai: :vai:
      veramente uno spunto OTTIMO su cui ragionare.
      ho letto con molta attenzione quanto scritto ed ora devo metabolizzare :)non sei l'unico, appena imparato da lowlevel ho aggiornato il mio sistema di log 😄

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • E
        emmebar Bannato Super User • 3 set 2005, 05:31 ultima modifica di

        l' idea di LowLevel è di una praticità ed efficacia disarmanti, non è che mi trovi spesso a gestire l'autenticazione degli utenti, comunque non avevo mai pensato ad usare un metodo simile, quindi intanto subito un bel grazie 🙂 .

        Adesso mi guardo bene bene il codice e preparo una mia versione del controllo login in PHP.

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • P
          pater Super User • 3 set 2005, 14:41 ultima modifica di

          @emmebar said:

          l' idea di LowLevel è di una praticità ed efficacia disarmanti, non è che mi trovi spesso a gestire l'autenticazione degli utenti, comunque non avevo mai pensato ad usare un metodo simile, quindi intanto subito un bel grazie 🙂 .

          Adesso mi guardo bene bene il codice e preparo una mia versione del controllo login in PHP.Poi magari cerca di integralrla qui, così vediamo di curare un'altro aspetto del progetto 😄

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • L
            linus User Attivo • 3 set 2005, 16:02 ultima modifica di

            Fino a ieri il mio bizzarro sistema di autenticazione faceva in modo che le password fossero memorizzate nell' id_sessione in chiaro. Ho risolto 😎 (adesso non lo sono più).

            Adesso però devo trovare il modo per non trasmettere più la password utente nel form di login ma bensì quell'informazione combinata di cui si è parlato.

            L'informazione combinata deve tenere conto di due fattori:
            stringa casuale che solo il server conosce;
            password inserita nel form

            Posso creare una funzione personalizzata (stringa/password) per generare l'informazione combinata? Se ho capito bene la risposta è SI.

            Deve essere obbligatoriamente in javascript la funzione? La risposta è NO se ho capito.

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • P
              pater Super User • 3 set 2005, 16:42 ultima modifica di

              @linus said:

              Fino a ieri il mio bizzarro sistema di autenticazione faceva in modo che le password fossero memorizzate nell' id_sessione in chiaro. Ho risolto 😎 (adesso non lo sono più).

              Adesso però devo trovare il modo per non trasmettere più la password utente nel form di login ma bensì quell'informazione combinata di cui si è parlato.

              L'informazione combinata deve tenere conto di due fattori:
              stringa casuale che solo il server conosce;
              password inserita nel form

              Posso creare una funzione personalizzata (stringa/password) per generare l'informazione combinata? Se ho capito bene la risposta è SI.

              Deve essere obbligatoriamente in javascript la funzione? La risposta è NO se ho capito.Si, il java script si 😄

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • E
                emmebar Bannato Super User • 3 set 2005, 18:43 ultima modifica di

                @PaTeR said:

                Poi magari cerca di integralrla qui, così vediamo di curare un'altro aspetto del progetto 😄

                E' esattamante quello che voglio fare 😄 .

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • T
                  tuonorosso Super User • 7 set 2005, 17:51 ultima modifica di

                  come stiamo procedendo? : 😎

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • P
                    pater Super User • 7 set 2005, 20:00 ultima modifica di

                    @Tuonorosso said:

                    come stiamo procedendo? : 8)Cerchiamo nuovi utenti che possono partecipare!!!

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • T
                      tuonorosso Super User • 7 set 2005, 20:47 ultima modifica di

                      ok
                      intanto non ci conviene dividerci i compiti noi che già ci siamo?

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • E
                        emmebar Bannato Super User • 7 set 2005, 20:58 ultima modifica di

                        @Tuonorosso said:

                        come stiamo procedendo? : 😎

                        Per il controllo sono un po' indietro, ho avuto una montagna di cose da fare in questi giorni, comunque ci stò lavorando, anche perchè mi serve per un cliente., ma se volete andate pure avanti voi.

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • P
                          pater Super User • 7 set 2005, 22:06 ultima modifica di

                          @Tuonorosso said:

                          ok
                          intanto non ci conviene dividerci i compiti noi che già ci siamo?Non sarebbe male...

                          Allora ci organizziamo? Per favore scrivete chi è interessato, in fondo è una cosa che servirà a tutti, quindi + siamo meglio è 😄

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • T
                            tuonorosso Super User • 7 set 2005, 22:08 ultima modifica di

                            Tuonorosso
                            Pater

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • E
                              emmebar Bannato Super User • 8 set 2005, 07:58 ultima modifica di

                              eccomi 😉

                              @Tuonorosso said:

                              Tuonorosso
                              Pater
                              emmebar

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • lowlevel
                                lowlevel Super User • 8 set 2005, 08:37 ultima modifica di

                                Tuonorosso
                                Pater
                                emmebar
                                LowLevel

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • F
                                  fab.g User Newbie • 1 dic 2005, 14:54 ultima modifica di

                                  News?

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • P
                                    pater Super User • 1 dic 2005, 17:58 ultima modifica di

                                    @Fab G said:

                                    News?hehe servono utenti volenterosi!

                                    comuqneu la parte software base non è difficile da fare...
                                    vuol dire che mi ci dedicherò un pò di più 😄

                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    • T
                                      tuonorosso Super User • 1 dic 2005, 21:43 ultima modifica di

                                      ops...io mi ero dimenticato :bho:
                                      :quote:

                                      0 Miglior Risposta Ringrazia Cita Rispondi

                                        1 Risposta Ultima Risposta
                                      • P
                                        pater Super User • 1 dic 2005, 21:51 ultima modifica di

                                        @Tuonorosso said:

                                        ops...io mi ero dimenticato :bho:
                                        :quote:utenti non prendete esempio da questo moderatore!

                                        :yuppi: :yuppi: :yuppi:

                                        0 Miglior Risposta Ringrazia Cita Rispondi

                                          1 Risposta Ultima Risposta
                                        • T
                                          tuonorosso Super User • 1 dic 2005, 21:53 ultima modifica di

                                          @PaTeR said:

                                          utenti non prendete esempio da questo moderatore!

                                          :yuppi: :yuppi: :yuppi:

                                          ehhehe...davvero...a meno che non vogliate diventare mister universo...non imitatemi 😄

                                          0 Miglior Risposta Ringrazia Cita Rispondi

                                            1 Risposta Ultima Risposta
                                          • P
                                            pater Super User • 12 dic 2005, 10:53 ultima modifica di

                                            Allora ragazzi la questione password è già stata trattata, ma vorrei discutere ora dell'hashing in sè.

                                            Message-Digest algorithm 5
                                            Ecco qui il famoso MD5... vi sarete chiesti a che serve qualche volta... no? Ebbene, esso non serve affatto a CRIPTARE una password, bensì a calcolare l'hash di una stringa. Per utilizzarlo PHP mette a disposizione la sua bella funzioncina built-in [url=php.net/md5]md5()

                                            
                                            string md5 (
                                                  string str ,
                                                  [ bool raw_output ]
                                            )
                                            
                                            

                                            In questo prototipo troviamo STR che è la stringa da hashare, e l'opzione booleana RAW_OUTPUT che per default è FALSE. Naturalmente non è possibile risalire alla stringa originale, perchè alcune operazioni dell'algoritmo non sono reversibili ( come la moltiplicazione: 6 è 23, ma potrebbe anche essere 16 ).

                                            LA SICUREZZA DI QUESTO ALGORITMO
                                            La sicurezza di questo algoritmo è alta, ma certamente non è sicurissima: sono infinite ( come tutte le cose ) le stringhe possibili che potrebbero dare come risultato lo stesso hash. Però non preoccupatevi: è molto raro che un lamer le trovi, se non con attacco [url=http://en.wikipedia.org/wiki/Brute_force_attack]Brute-Force che tralaltro sarebbe molto dispendioso per lui.

                                            COME EVITARE GLI ATTACCHI BRUTE-FORCE
                                            Per evitare attacchi di questo tipo molti siti permettono un massimo di 3 login per uno stesso utente ogni 15 minuti: come il PIN del cellulare... 3 tentativi, allo scadere di questi l'utnte dovrà aspettare 15 minuti ( o quello che volete voi ) prima di tentare un nuovo accesso! Per gestire questo genere di protezione, vi basta controllare i login di un utente ( non interessa manco l'IP ) ed allo scadere dei tre tentativi ( controllati dallo script di accesso che aumenterà i tentativi falliti ) bloccherà i login di quell'utente trascrivendo nel database il timestamp di quell'accesso permettendo allo script del login di calcolare il tempo necesssario per permettere un nuovo accesso. Molti script usano questo metodo, come phpBB e altri forums.

                                            MD5 in Javascript?
                                            Ma comunque resta un problema: facciamo passare la password in chiaro??? NOOOO!

                                            Ora dobbiamo adottare uno stratagemma!

                                            1. Usare la classe MD5 per javascript
                                            2. Creare un algoritmo proprio

                                            Ora vi spiegherò come usare MD5 in Javascript, sistema che comunque in alcuni casi non funzionerà... perciò bisogna decidere se

                                            1. Obbligare il client ad abilitare js
                                            2. Metterlo al corrente che il sistema non è sicuro e passare la password in chiaro

                                            Così dovremo procedere in questo modo:

                                            Avremo un campo <noscript> che setterà un valore POST in modo tale che esso sarà 'disabled' solo se il js è disattivato

                                            <noscript><input type='hidden' name='js' value='disabled'></noscript>
                                            

                                            ed un campo <script> che setterà il campo su 'enabled'

                                            <script lang='javascript'>document.write&#40;"<input type='hidden' name='js' value='enabled'>"&#41;;</script>
                                            

                                            così, sempre in js cripteremo il campo con [url=http://pajhome.org.uk/crypt/md5/]questo javascript prima che avvenga il passaggio all'altra pagina.

                                            Lo script lato-server controllerà il valore di 'js' e se sarà su enabled non hasherà il campo della password, se invece è su disabled lo hasherà.

                                            LINKS UTILI

                                            http://www.faqs.org/rfcs/rfc1321
                                            http://pajhome.org.uk/crypt/md5/
                                            http://en.wikipedia.org/wiki/Brute_force_attack
                                            http://userpages.umbc.edu/~mabzug1/cs/md5/md5.html

                                            Conclusioni
                                            Ci sono tanti modi per criptare una stringa, io vi ho dato informazioni sul metodo più noto... a voi il resto!

                                            Ciao!

                                            0 Miglior Risposta Ringrazia Cita Rispondi

                                              1 Risposta Ultima Risposta
                                            Caricamento altri post
                                            Rispondi
                                            • Topic risposta
                                            Effettua l'accesso per rispondere
                                            • Da Vecchi a Nuovi
                                            • Da Nuovi a Vecchi
                                            • Più Voti