Allow auth RequestHandler injection to Tornado web server

Hi Streamlit community!
First of all, kudos to the team that built this. I’ve built ML systems for 10+ years in production and this is a vastly underrated framework.
I’ve already built some useful tooling with streamlit and am amazed by the core framework and the set of community submitted components/extensions.

The problem I’m facing now is that I need this deployed to AWS securely (with 3rd party authentication) and the data that my company deals with is highly critical. The security team requires that the server vending the web content also handle authentication.

I see that streamlit uses Tornado under the hood, which does support a 3rd party authentication handler (tornado.auth — Third-party login with OpenID and OAuth — Tornado 6.2 documentation) but there is no way currently to inject the auth handler into the request chain.

Is this something that the streamlit team is open to? I’d be happy to code it up and send a pull request if this seems like an acceptable direction to take? I believe this will open up the tool to many more usages where they can’t be deployed on Streamlit cloud due to company policies.

Let me know and happy to help contribute in any way I can!

3 Likes

Hi @Naresh_Narayanan,

I’d recommend writing a feature request here so our product team can take a look and let you know their thoughts