Newsgroup: it.comp.www.php
Titolo: passaggio variabili tra server diversi

ciao a tutti.
ho 2 siti diversi, dovrei settare una variabile sul primo e fare in
modo che anche il secondo la legga senza che l'utente se ne accorga. ho
provato con i cookie e con le variabili di sessione, ma ho scoperto che
il loro raggio d'azione e' sempre e cmnq il solo server su cui vengono
create. 
quali tecniche si utilizzano in questo caso?

 modo che anche il secondo la legga senza che l'utente se ne accorga.
Salvala nello stesso posto (es. DB, FS etc) oppure passala criptata da
un sito all'altro.
-- 
I am what I am, I do what I can
Sei un newbie? Leggi questo 
http://url.repository.biz/go/3C
Vuoi supportarmi? 
http://url.repository.biz/go/3E
Do. Or do not. There is not try.

mi interesserebbe di piu' "passala criptata da un sito all'altro", ma
e' proprio questo che non so realizzare: come la passo? con che
tecnica?
per entrare nello specifico, nel sito1 ho un portale con Xoops in cui
mi autentico, poi linko alcune pagine che stanno sul sito 2 (il pc di
casa mia...), ma qui l'ingresso e' consentito SOLO a chi si e'
autenticato nel sito1. volevo mettere un semplice flag boolean.
grazie cmnq!

 autenticato nel sito1. volevo mettere un semplice flag boolean.
Quando mandi l'utente al sito 2 gli fornisci un link tipo:
http://www.sito2.com/index.php?hash=b95f6e680daa39e2f0c2d46e15eb56f8
L'hash lo generi ad esempio cosi:
$hash = md5 ($_SERVER['REMOTE_ADDR'] . date ('Ymd') . 'secret');
Sul sito2 poi fai un confronto dei vari hash.


 Sul sito2 poi fai un confronto dei vari hash.
geniale direi. credo proprio che posso adattarlo ai miei scopi, per ora
grazie tante!!!
(ma sei lo stesso Setec che gravita sui forum di delphi ?!)

 (ma sei lo stesso Setec che gravita sui forum di delphi ?!)
Si.


ciao!
c'e' un caso in cui questo sistema non mi funziona e non so perche': e'
il caso in cui ci si colleghi da reti aziendali configurate in qualche
modo che non conosco.
puo' dipendere da $_SERVER['REMOTE_ADDR'] , che ritorna un valore
diverso? o la funzione date ('Ymd')? cerchero' di fare qualche prova,
il fatto e' che devo farmi aiutare da un mio amico e farlo provare da
dove lavora e non sempre lo trovo disponibile. spero vi venga in mente
qualcosa!
grazie - Fod.

 o la funzione date ('Ymd')?
Si, anche se basterebbe allineare le date dei server per risolverlo (a
meno di grosse differenze di fuso tra le varie macchine).


grazie setec.
ho ragionato questo: abbiamo il server A che invia la stringa al server
B, e l'utente C che si connette. la data viene letta su A e su B,
quindi se fosse diversa nessun utente potrebbe entrare, e so che non e'
cosi'.
l'IP di C viene letto da A e da B: perche' le due letture dovrebbero
essere diverse? se fosse mascherato, ci sarebbe un IP aziendale
fittizio ma cmnq sempre lo stesso. trovi sbagliato questo discorso?
ho paura che il problema possa essere sul passaggio della variabile
stringa lètta col $_get[]: esistono opzioni su IE che ne limitano
l'uso per aumentare la sicurezza?
Fodox

 server B, e l'utente C che si connette. 
Definisci "invia". L'utente C a chi si connette?


> Definisci "invia". L'utente C a chi si connette?
in sostanza l'utente C si connette ad A, effettua il login sul
portalino, poi clicca su un link a una pagina (sempre su A) che fa
alcuni controlli, se tutto va bene fa un redirect al server B in questo
modo:
header('location: http://'.$homeip.'/index.php?auth='.$hash);
dove: $homeip e' l'ip del server B; index.php e' il file su B che
ricostruisce l'hash e lo paragona a $hash passato come parametro; $hash
e' calcolato come mi hai detto tu all'inizio. ripeto, questo sistema
funziona con connessioni classiche casalinghe, funziona anche da dove
lavoro che ho un router pirelli della telecom.

 da dove lavoro che ho un router pirelli della telecom.
Prepara uno script che visualizzi id dati usati per la generazione
dell'hash e verifica che siano uguali.
-- 
I am what I am, I do what I can


 dell'hash e verifica che siano uguali.
giusto. se i dati visualizzati su A e su B corrispondono allora e' un
problema di "passaggio" di variabile.
grazie dell'indizio, vedro di verificare!
Fod.

ho provato: i dati di IP, DATA e HASH vengono creati identici sia su A
che su B.
A questo punto può essere solo la chiamata a $_GET['auth'] sul server
B che mi fa casino. Ha dei limiti conosciuti la $_GET?

Risolto il mistero (almeno in parte). La stringa viene passata e
ricevuta regolarmente, ma il problema e' un'altro. Su B, non appena il
controllo sull'hash ha successo, imposto una variabile di sessione che
mi serve da flag per tutte le pagine (praticamente da li' in avanti mi
autorizza l'accesso all'utente). Ebbene, su Internet Explorer questa
variabile non viene vista mentre sugli altri browser si. Sfiga vuole
che ho fatto provare ai miei amici, tutti con Firefox o col browser del
Mac...solo 2 che lavorano in azienda avevano IE, e da li' ho tratto
conclusioni sbagliate.
Ora provo a capire cosa non va su IE, eventualmente apro un altro
thread.
Ciao!
  Fod.