Ho un Magento multi-sito (una piattaforma eCommerce PHP). Gli account sono condivisi tra i siti, ma le sessioni non lo sono, quindi è necessario accedere a ciascun sito individualmente. Sono interessato a condividere queste sessioni.
Ho trovato una risposta sullo scambio di stack Magento. Condivisione di sessioni tra negozi con domini diversi . La raccomandazione è questa:
cookies.php
setcookie("frontend", htmlspecialchars($_GET['SID']), time() + 86400);
example1.com
<?php $sessionId = Mage::getSingleton('core/session', array('name' => 'frontend'))->getSessionId(); ?>
<img src="https://example2.com/cookie.php?SID=<?phpecho$sessionId;?>" style="display:none;" />
Sto cercando di comprendere le implicazioni di sicurezza di tutto questo. Se non sbaglio, questo URL diventa tutto ciò che è necessario per accedere come utente.
Tutti i nostri siti sono solo HTTPS, quindi penso che questo aiuti a impedire a chiunque stia ascoltando sul traffico di ottenere questo URL, corretto?
Un problema che potrei vedere è che se qualcuno è al computer fisico, avrebbe accesso a tale URL e potrebbe usarlo per accedere da un computer diverso, che altrimenti sarebbe impossibile senza la password. Scadere la sessione impedisce contro quello, però, giusto? Se è così, le sessioni sono al momento piuttosto lunghe, quindi i carrelli rimangono in vita più a lungo, quindi quanto dovrebbero essere brevi le sessioni?
In breve, Si tratta di un'implementazione non sicura di sessioni di accesso a più siti? In tal caso, questo approccio può essere reso sicuro?