Include login page to shiny application

Hello everyone,
I want to submit a problem that I can not solve yet.

How can i include a login page to my shinydashboard application? The problem is that, the user should have a login account before having access to the application.
Thanks,

Best!

Hi @Sassire! Welcome!

Your options for user authentication and the details of how it works is going to depend a lot on how you are deploying your application. Can you provide more info on where and how the shiny app will be published?

Hi Jcblum,

For the moment i want to deploy my application on github.

Best,

Do you mean that you are expecting your users to run the app locally (as described in the first option here: https://shiny.rstudio.com/tutorial/written-tutorial/lesson7/)? I’m not sure I’m really understanding what you have in mind.

If users have access to the code on GitHub, then creating a login screen doesn’t make a lot of sense (they could just copy the code into a new app themselves if they didn’t have a valid login). People usually use user authentication when apps are deployed to the web (or on a server inside an organization), as in the second option in the linked tutorial.

Sorry my answer refers to another work. My shiny app in this case will probablement be hosted by an enterprise owned server.

Is there any template of a shiny app that typically runs an enterprise dashboard and includes a login page?

To get enterprise feature, including authentication feature (compatible with enterprise authentication), you should consider RStudio Products. Either Shiny Server or RStudio Connect. They are made for this, making it the easier solution, but yes at a cost. It is also the easier solution if you need integration between the login and your app.

On the on premise product side, there is also ShinyProxy, an OSS product for deploying dockerized shiny app. it has an authentication feature. However, you need to know docker for using this.

Another solution, as you are on premise, is that you can (with help of your IT teams) create a setup where you server serving the shiny apps is behing some proxy that needs to be pass through with authentication. You may already have a solution at work for that. Otherwise, in this configure, the shinyapps server can't be reach without passing through another login service.

If you can go to the cloud, shinyapps.io pro feature allows you to get login for your app.

At last, on the R package side, there are some work from appsilon that can help
https://appsilon.com/user-authentication-in-r-shiny-sneak-peek-of-shiny-users-and-shiny-admin-packages/

I hope this will help you.

5 Likes

Thank you Christophe for all those informations. I am sure it will be very useful for me.

Best,