How to develop locally when you have Authentication enabled?

#1

Just a general question - how have you handled developing your dashboard when you have authentication enabled? I just began testing the auth features out and I’m pushing the project to an IIS dev server to test. However, since I’ve enabled Windows auth I can’t really launch the dashboard on my workstation. This is mostly fine except sometimes the build/release can take a while so constantly pushing changes to the dev server isn’t always desirable.

Let me know your thoughts on how you’ve handled this. Thanks!

#2

I haven’t had a problem with this. Why can’t you run it on your workstation? Is the workstation not in the same domain as the server?

Thanks,
Tim Curwick

#3

I copied my dashboard.ps1 file to a test-dashboard.ps1 and commented out -Wait -Allowhttpforlogin on my Start-UDDashboard line and commented out the LoginPage parameter on my New-UDDashboard line.

Left everything else the same. I seldom have to make changes to my auth policies so i find this work very well for me.

Hope it helps you @mattmcnabb!

E: Also for the sake of my own sanity, i modified the -title on the dashboard to have "TEST - " infront of the name. Sometimes i have my prod dashboard open as well as my test one… I’ve made the mistake of not looking closely enough sometimes.

#4

I forgot that I didn’t know this when I first started working with UD, and then answered above as if this was common knowledge.

IIS is an optional feature on Windows 10. No need to go to a server to test during development.

Thanks,
Tim Curwick

1 Like
#5

@MadWithPowerShell and @Jacob-Evans thanks for your answers!

I know that I can install IIS on my windows 10 machine, but am really just looking at a way to bypass auth entirely while I’m developing locally.

When I try to run the dashboard I get several errors returning types from the namespace Microsoft.AspNetCore so I was thinking I might check for those bits and pivot on that. So maybe not load the login page and auth policies at all when it’s local? That will be a little unwieldy to design since there is login related code distributed through the project, but I may come up with something eventually.