Imagine someone signing in to your Streamlit app over public Wi-Fi. If the app uses HTTP, their email and password travel without encryption and could be intercepted. HTTPS encrypts communication and lets the browser check that it has reached a server authorized to use your domain. section 12.4 section 12.4.2
That identity check depends on a digital certificate. A browser fully trusts one issued by a trusted Certificate Authority after domain ownership has been verified. A self-signed certificate may instead trigger a browser warning. section 12.4.2 section 12.4.1
For a load-balanced AWS Elastic Beanstalk app, enable HTTPS in four steps:
- Register or use a custom domain, then point it to the app using DNS. section 12.4.1
- Request a public certificate for that domain in AWS Certificate Manager and verify domain ownership through the requested DNS records. section 12.4.2 section 12.6
- In Elastic Beanstalk’s traffic and scaling configuration, add an HTTPS listener on port 443 and attach the issued certificate. The load balancer handles the secure connection before forwarding traffic to the app. section 12.4.3
- Visit the HTTPS address and check that the browser reports a secure connection. section 12.4.3
This path assumes a load-balanced environment. HTTPS on a cheaper, single-instance environment is possible, but its setup is more complicated. section 12.4.3






