Come eseguire il debug in Visual Studio 2015 quando la tua app web. è necessario effettuare il login tramite un'altra app Web?

2

La mia app web (in fase di sviluppo) deve accedere tramite link

Dopo aver effettuato il login tramite l'indirizzo sopra, passerà il cookie al link e proseguirà da qui.

Trovo fastidioso che ogni volta che ho bisogno di distribuire il mio codice su link e di effettuare test da lì a causa del login.

Quali sono gli standard del settore per eseguire il debug in questa circostanza?

sta usando le proprietà del progetto - > Web - > Server - > Host esterno - > imposta come http://devWebServer/myApp andando a risolvere il mio problema? Non posso testarlo ora a causa della politica di sicurezza, firewall.

Sono riluttante a scrivere if loginViaExtApp (do this) else (do that) o qualcosa di simile nella mia app web.

    
posta Pop 05.01.2018 - 03:36
fonte

2 risposte

1

Questo è abbastanza facile da fare con una combinazione di flag del compilatore e variabili di ambiente del sistema.

  1. Aggiungi codice nel punto in cui si registra l'utente in che ignora il controllo dell'autenticazione

    #if FAKE_AUTHENTICATION
        if ("true".Equals(Environment.GetEnvironmentVariable("ALLOW_FAKE_AUTHENTICATION"), StringComparison.CurrentCultureIgnoreCase))
        {
            // Code to "log" fake user in without checking password
        }
        else
        {
            throw new Exception("No-way");
        }
    #else
        // Actually check user and password
    #endif
    

    Sì, crea il tuo flag per il compilatore e nominalo come ovvio, come "FAKE_AUTHENTICATION" per assicurarti che le persone capiscano cosa stai facendo.

  2. Aggiungi il flag FAKE_AUTHENTICATION alle proprietà del progetto sotto la configurazione di build appropriata

  3. Aggiungi la variabile d'ambiente di sistema ALLOW_FAKE_AUTHENTICATION

Ora se lo distribuisci accidentalmente su un server reale, non otterrai nient'altro che un'app web in crash.

Se un utente malintenzionato riesce ad aggiungere una variabile di ambiente a uno dei tuoi server, hai WAAAAAAAAAY problemi più grandi da affrontare rispetto a un flag di compilazione.

    
risposta data 04.06.2018 - 14:10
fonte
0

Potresti utilizzare un'impostazione nel file web.config con un flag <appsetting> per far sapere all'app che è necessario ignorare l'accesso tramite il server web.

Tuttavia, ciò che dovrai fare è codificare la logica per creare il cookie o ignorare il cookie anche se il flag è stato trovato in <appSettings> .

Inoltre, sarà necessario rimuovere il flag quando distribuito sul server. Questo può essere fatto facilmente con una trasformazione web.config .

    
risposta data 05.01.2018 - 04:00
fonte

Leggi altre domande sui tag