siti web multiple e fanno richieste “cross-site” illegali
-
18-09-2019 - |
Domanda
Ho due siti IIS che punta a cartelle fisiche diffent. Questo è quello di essere in grado di differenziare il web.config ed i file e le assemblee utilizzato per i siti Database è impostato su punto alla stessa istanza per entrambi i siti Nel web.config configurati per l'avvio da diverse parti Lo stucture è come questo:
-
/ Sitecore / contenuti / home / default
-
/ Sitecore / content / home / intranet
Fin qui tutto bene.
Ora, il problema è che io sono in grado di recuperare il contenuto non appartenente al sito vero e proprio inserendo il suo percorso completo. Vale a dire.
http://www.default.com/sitecore/content/home/intranet.aspx
<-. Questo non dovrebbe essere consentito, in quanto www.default.com
è configurato con /sitecore/content/home/default
come root
Esiste un meccanismo incorporato per dissallow questo o devo sottoclasse l'itemresolver per fare "siti incrociati" -Le richieste illegali.
Soluzione
Questo è qualcosa a che fare con il modo in Sitecore risolve articoli, ho trovato 3 URL differenti per ogni elemento. Per esempio dire che ho la seguente struttura:
-sitecore
-content
-home
-page1
Posso accedere page1 sia attraverso:
-
http://mysite/sitecore/content/home/page1.aspx
-
http://mysite/page1.aspx
-
http://mysite/home/page1.aspx
Tuttavia sapendo questo non aiuterà a risolvere il problema. La soluzione migliore che posso suggerire è quello di utilizzare la protezione. Tuttavia, se entrambi hanno bisogno l'accesso anonimo sito la domanda è come si fa a controllare questo?
Immagino che da quando si dispone di due distinti web.config vi hanno anche separare sezioni di configurazione Sitecore. Così quello che possiamo fare è creare un processo di oleodotto che viene eseguito come parte della richiesta http inizio pipeline (nel web.config come oleodotti / configurazione / Sitecore / / httpRequestBegin) la creazione di uno per ogni sito e l'aggiornamento del web.config in questione. Quando questo processo è chiamato potrebbe creare un utente virtuale che appartiene a un gruppo che limita l'accesso al sito l'utente ha richiesto.
C'è un po 'di codice qui che vi mostra come creare un utente virtuale:
qui su tubazioni:
Spero che questo aiuti: -)
Altri suggerimenti
Beh, se la voce intranet (e sotto) sono protetti con la sicurezza Sitecore non dovrebbe essere problema né possibile l'accesso:)
Se non è possibile gestire con sicurezza quindi vorrei andare con l'ItemResolver.
Saluti