
Deploy Steam OpenID Connect Provider on Your Own Server
This server allows you to use Steam as an OpenID Connect Identity provider (OIDC IDP). This way you can use Steam logins in KeyCloak or any other OpenID Connect based authentication client.
Want to deploy Steam OpenID Connect Provider on your server faster? Try Senate with one-command setup, automatic HTTPS and monitoring.
What is Steam OpenID Connect Provider?
Steam OpenID 2.0 -> OpenID Connect Provider Proxy This server allows you to use Steam as an OpenID Connect Identity provider (OIDC IDP). This way you can use Steam logins in KeyCloak or any other OpenID Connect based authentication client.
Self-Host Steam OpenID Connect Provider
Follow these steps to deploy on your own server.
Install Docker
Skip this step if Docker is already installed on your server.
curl -fsSL https://get.docker.com | sh
Configure
Customize the settings below. Defaults work for most cases.
General
Deploy
Copy the configuration and run it on your server.
services:
steam_openid_provider:
image: ghcr.io/byo-software/steam-openid-connect-provider:sha-c8305ce
environment:
Hosting__PublicOrigin: http://openid.example.com
OpenID__ClientID: steamidp
OpenID__ClientSecret: 15a7b8c9e7b482b0
OpenID__RedirectUri: http://example.com/callback
Steam__ApplicationKey: ""
Then run:
docker compose up -d
Access
Once started, access your app at http://localhost:80
Why Self-Host Steam OpenID Connect Provider?
Full Data Ownership
Your data stays on your servers. No third-party access.
No Monthly Fees
Pay only for your server. No per-seat or usage charges.
Complete Control
Customize, backup, and scale on your own terms.
Privacy & Compliance
Meet GDPR, HIPAA, or internal security requirements.
Technical Details
Docker Image
ghcr.io/byo-software/steam-openid-connect-provider:sha-c8305ceOfficial Docs
github.comWant to go faster?
Try Senate! Senate handles Docker, HTTPS, updates, and monitoring for you. Deploy any of our 300+ apps with a single command.
Install on any Linux server:
sh -c "$(curl -sSL https://get.senate.sh)"