Deploying Flask/Dash App with OAuth in Render

I thought Chris’s blog piece demo’ing an oauth2 proxy on render was really useful to show it could be done. I wondered if anyone has written a piece explaining implementation for someone who isn’t a DevOps professional.

In my case I have a webservice running on render, which is a Dash App (so Flask) written in Python and it is secured (poorly) using dash_auth from the nice people at Plotly.

Looking at the render Blueprint (linked from the blog) it feels like this should be easy, but I’m getting nowhere between render and the oauth2 docs.

Any help appreciated,

As an aside for the Render team, the (apparent) specialist Dev knowledge required to setup authentication is a key argument in finance from people who don’t want to move business from RShiny… so help really appreciated :slight_smile:

Do you plan to deploy OAuth2 Proxy with your Flask/Dash App?
The high-level steps will be

  1. deploy Flask/Dash App as a Render private service.
  2. fork this repo of OAuth2 Proxy
  3. update the UPSTREAM service name to your Flsk/Dash App
  4. find an Oauth 2 provider and configure it (example: google)
  5. deploy OAuth2 Proxy as web service
  6. update callback URL in the Oauth 2 provider with OAuth2 Proxy onrender URL

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.