2011-12-08 15 views
9

Attualmente sto implementando un'applicazione Web in Microsoft Azure. La mia preoccupazione è come utilizzare lo slot di staging insieme a ACS.Utilizzo di ACS nello slot di gestione temporanea di Azure

Voglio spingere la mia applicazione nello slot di staging, verificare che funzioni e quindi fare uno scambio VIP alla produzione.

L'approccio è abbastanza semplice, tranne la configurazione dell'ACS. Poiché lo slot di gestione temporanea riceve un URL casuale durante la distribuzione, la configurazione di ACS deve essere eseguita successivamente. L'applicazione web.config e Relying Party di WebRole in ACS deve essere configurata con il nuovo URL dello slot di staging.

Vittorio Bertocchi descrive nel suo blog post come aggiornare il web.config senza ridistribuire e immagino che l'ACS possa essere aggiornato con uno script dopo la distribuzione in staging.

Questo approccio sembra piuttosto complicato e fragile; Sto cercando una soluzione semplice e solida per il mio processo di implementazione. C'è qualcosa che mi è mancato?

Poiché la configurazione ACS è abbastanza semplice e dritto in avanti in uno slot produzione ho pensato di saltare la sperimentazione di applicazione nella fessura stadiazione e solo utilizzarlo per eseguire il VIP-swap alla produzione (l'applicazione sarebbe testato nel proprio servizio di hosting "QA").

Cosa ne pensi di questo approccio? Ci possono essere differenze tra i servizi ospitati in Azure?

risposta

0

Forse l'applicazione potrebbe impostare a livello di codice l'URL di ritorno quando si reindirizza a ACS. Ciò reindirizza l'utente allo slot di gestione o allo slot di produzione dopo l'autenticazione.

Questa domanda mostra come impostare il regno, ma l'URL di ritorno è solo un altro parametro: WIF cross-domain on one IIS site, dynamically setting of realm

0

Ho risolto questo con la creazione di un nuovo servizio cloud chiamato "test". Quindi, quando spingo la mia applicazione nello slot di staging, spingo un'altra istanza (con web.config differente) nello slot di produzione del mio servizio "test". Se l'applicazione "test" funziona correttamente, elimino l'app di test e sostituisco gli slot di produzione temporanea.

Non è la soluzione ideale, ma potrebbe risolvere il problema.

0

Ho appena usato le voci del file host per testare le istanze di staging. Ad esempio, supponiamo che il tuo servizio sia ospitato su myservice.cloudapp.net. Lo slot di staging in genere riceve un URL come [guid] .cloudapp.net ma ottiene anche un VIP pubblico (è possibile ottenerlo dal dashboard del servizio o eseguendo un nslookup [guid] .cloudapp.net). È possibile aggiungere una voce di file host come "[Public VIP] myservice.cloudapp.net". Una volta fatto questo, puoi istanziare la tua staging semplicemente usando myservice.cloudapp.net e la configurazione di ACS non deve essere cambiata.

Problemi correlati