Back to top

Autore Topic: [RISOLTO] Login automatico su un altro sito  (Letto 5718 volte)

Offline tampe125

  • Appassionato
  • ***
  • Post: 366
    • Mostra profilo
[RISOLTO] Login automatico su un altro sito
« il: 03 Nov 2010, 21:12:00 »
salve a tutti, so che sto per chiedere una cosa "stupida", ma tant'è...

questa è la situazione:
per ragioni di "marketing" l'utente deve fare il login sul portale e poi dopo essere ridirezionato sulla sua parte del sito che è sempre fatto con Joomla!.
ovviamente anche quest'ultima parte è coperta dal login.
è possibile che una volta effettuato il login sul portale, l'utente venga redirezionato (loggato) direttamente sul secondo sito?
« Ultima modifica: 04 Nov 2010, 17:04:04 da tampe125 »
www.fabbricabinaria.it
Soluzioni originali ad esigenze quotidiane

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Login automatico su un altro sito
« Risposta #1 il: 03 Nov 2010, 21:31:39 »
Ciao
Certo lo puoi fare con jfusion basta che sincronizzi gli utenti delle due installazioni joomla e poi al primo login redirezioni l'utente alla sua parte del secondo sito, non puoi però redirezionare utenti diversi a percorsi diversi.

Offline tampe125

  • Appassionato
  • ***
  • Post: 366
    • Mostra profilo
Re:Login automatico su un altro sito
« Risposta #2 il: 03 Nov 2010, 22:40:20 »
ecco, invece avrei bisogno di fare proprio questo...  :-\
www.fabbricabinaria.it
Soluzioni originali ad esigenze quotidiane

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Login automatico su un altro sito
« Risposta #3 il: 04 Nov 2010, 07:41:22 »
ciao,
non ho capito che vuoi fare.
i due siti sono differenti installazioni di joomla? ogni utente ha un suo sito?

mi loggo sul portale e vengo re-indirizzato al mio sito mantenendo l'autenticazione? si può fare, ma serve un po' di programmazione tosta... come te la cavi?

ciao,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline tampe125

  • Appassionato
  • ***
  • Post: 366
    • Mostra profilo
Re:Login automatico su un altro sito
« Risposta #4 il: 04 Nov 2010, 09:42:01 »
1- si
2- si
3- si

al momento mi sono messo il cappello da minatore e sto guardando come funziona il tutto.
la mia idea era questa (di un forza bruta inaudita):

l'utente si logga sul portale.
io prendo i dati della sessione del portale e li inserisco nel jos_session del "figlio".
creo il cookie con i dati del figlio.
reindirizzamento sul figlio

teoricamente dovrebbe funzionare, è come se facessi il login di joomla e poi ritornassi sul sito figlio.
la mia domanda però è:
problemi per la sicurezza? non mi sembra di vederne (ultime parole famose) perchè la sessione e il suo id vengono creati/inseriti da codice, il cookie serve solo per conferma. mi sembra che sia il modo in cui opera anche Joomla!...

perfavore ditemi di si  :'(
www.fabbricabinaria.it
Soluzioni originali ad esigenze quotidiane

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Login automatico su un altro sito
« Risposta #5 il: 04 Nov 2010, 11:40:34 »
no...
manca l'id dell'utente: aprire una sessione con un id utente non esistente è decisamente pericoloso per l'integrità dei dati. i dati degli utenti sono sincronizzati tra i due db? (un sito per ogni utente?)

io farei così:
1. login sul portale
2. redirect sul sito passando il nome utente e la password (opportunamente allungata e codificata con md5)
3. componente sul sito dell'utente  che provveda all'autenticazione tramite
4.1 db utente sincronizzati: lettura del db
4.2 db non sincronizzati: plugin tipo authentication per check remoto.

ciascun sistema si crea le sue sessioni/cookie e possono anche risiedere su server diversi.

ciao,
marco


mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline tampe125

  • Appassionato
  • ***
  • Post: 366
    • Mostra profilo
Re:Login automatico su un altro sito
« Risposta #6 il: 04 Nov 2010, 12:02:18 »
mhm... mi pare un'ottima idea; lavorare con i cookie e cose del genere mi sembrava una cosa "sulle corna alle zanzare" :)

teoricamente la tabella degli utenti del db personale è un sottoinsieme della tabella utenti del db portale.
solo una domanda: passando i dati utente/pwd in md5, come faccio a fare il decript?

grazie mille per il consiglio, vedo di provarlo immediatamente e ti faccio sapere.

mi hai salvato la vita :D

p.s. cmq l'id utente ce lo avrei, però quello che hai detto te è la soluzione più giusta e sicura

ULTIMO EDIT: risolto tutto usando la funzione JApplication->login(). Ancora una volta grazie mille per la dritta, mi stavo infilando in un vicolo cieco :)
« Ultima modifica: 04 Nov 2010, 17:03:31 da tampe125 »
www.fabbricabinaria.it
Soluzioni originali ad esigenze quotidiane

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Login automatico su un altro sito
« Risposta #7 il: 04 Nov 2010, 17:06:27 »
non c'è il decrypt di un md5: non è simmetrico.

diciamo che il componente di autenticazione è com_authmd5; fai un redirect a
site.tld/index.php?option=com_authmd5&user=pippo&pw=[..md5Hash]
pw è ottenuto, ad esempio, con md5($userName . $password . 'una Chiave comune Ai DuE siTI!');

dall'altra parte farai un look up sulla tabella degli utenti alla ricerca del nome utente passato. prendi la password, la combini con gli altri valori e la compari con l'md5 passato... se coincide autentichi l'utente.

nota: solitamente parte dell'allungamento è una data/ora, in modo che se qualcuno recupera l'autenticazione dalla cache del browser/proxie questa non valga per più di tanto.

ciao,
marco

mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline tampe125

  • Appassionato
  • ***
  • Post: 366
    • Mostra profilo
Re:Login automatico su un altro sito
« Risposta #8 il: 06 Nov 2010, 12:29:53 »
dall'altra parte farai un look up sulla tabella degli utenti alla ricerca del nome utente passato. prendi la password, la combini con gli altri valori e la compari con l'md5 passato... se coincide autentichi l'utente.

ok, perfetto, ma una domanda:
come la faccio l'autenticazione? il metodo JApplication->login richiede le credenziali in chiaro...
c'è un altro modo per fare l'autenticazione?
www.fabbricabinaria.it
Soluzioni originali ad esigenze quotidiane

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:[RISOLTO] Login automatico su un altro sito
« Risposta #9 il: 06 Nov 2010, 16:52:27 »
il metodo citato lancia (fire) l'evento onLoginUser che sarà gestito dal citato plugin tipo authentication. ehm: io lo ho indicato solo per il check remoto, ma sicuramente è più conforme allo standard code di joomla anche per una autenticazione locale   :P

il metodo prevede dei precisi parametri: il modo in cui essi sono interpretati dipende, ovviamente, dal codice scritto.

ciao,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

 



Web Design Bolzano Kreatif