<titledata-rh="true">OAuth Provider Configuration | OAuth2 Proxy</title><metadata-rh="true"name="viewport"content="width=device-width,initial-scale=1"><metadata-rh="true"name="twitter:card"content="summary_large_image"><metadata-rh="true"property="og:url"content="https://oauth2-proxy.github.io/oauth2-proxy/docs/next/configuration/providers/"><metadata-rh="true"name="docusaurus_locale"content="en"><metadata-rh="true"name="docsearch:language"content="en"><metadata-rh="true"name="docusaurus_version"content="current"><metadata-rh="true"name="docusaurus_tag"content="docs-default-current"><metadata-rh="true"name="docsearch:version"content="current"><metadata-rh="true"name="docsearch:docusaurus_tag"content="docs-default-current"><metadata-rh="true"property="og:title"content="OAuth Provider Configuration | OAuth2 Proxy"><metadata-rh="true"name="description"content="You will need to register an OAuth application with a Provider (Google, GitHub or another provider), and configure it"><metadata-rh="true"property="og:description"content="You will need to register an OAuth application with a Provider (Google, GitHub or another provider), and configure it"><linkdata-rh="true"rel="icon"href="/oauth2-proxy/img/logos/OAuth2_Proxy_icon.svg"><linkdata-rh="true"rel="canonical"href="https://oauth2-proxy.github.io/oauth2-proxy/docs/next/configuration/providers/"><linkdata-rh="true"rel="alternate"href="https://oauth2-proxy.github.io/oauth2-proxy/docs/next/configuration/providers/"hreflang="en"><linkdata-rh="true"rel="alternate"href="https://oauth2-proxy.github.io/oauth2-proxy/docs/next/configuration/providers/"hreflang="x-default"><linkrel="stylesheet"href="/oauth2-proxy/assets/css/styles.4014daec.css">
with Redirect URI(s) for the domain you intend to run <code>oauth2-proxy</code> on.</p><p>Valid providers are :</p><ul><li><ahref="/oauth2-proxy/docs/next/configuration/providers/google">Google</a><em>default</em></li><li><ahref="/oauth2-proxy/docs/next/configuration/providers/azure">Azure</a></li><li><ahref="/oauth2-proxy/docs/next/configuration/providers/adfs">ADFS</a></li><li><ahref="/oauth2-proxy/docs/next/configuration/providers/facebook">Facebook</a></li><li><ahref="/oauth2-proxy/docs/next/configuration/providers/github">GitHub</a></li><li><ahref="/oauth2-proxy/docs/next/configuration/providers/gitea">Gitea</a></li><li><ahref="/oauth2-proxy/docs/next/configuration/providers/keycloak">Keycloak</a>/<ahref="/oauth2-proxy/docs/next/configuration/providers/keycloak_oidc">Keycloak OIDC</a></li><li><ahref="/oauth2-proxy/docs/next/configuration/providers/gitlab">GitLab</a></li><li><ahref="/oauth2-proxy/docs/next/configuration/providers/linkedin">LinkedIn</a></li><li><ahref="/oauth2-proxy/docs/next/configuration/providers/azure_ad">Microsoft Azure AD</a></li><li><ahref="/oauth2-proxy/docs/next/configuration/providers/openid_connect">OpenID Connect</a></li><li><ahref="/oauth2-proxy/docs/next/configuration/providers/login_gov">login.gov</a></li><li><ahref="/oauth2-proxy/docs/next/configuration/providers/nextcloud">Nextcloud</a></li><li><ahref="/oauth2-proxy/docs/next/configuration/providers/digitalocean">DigitalOcean</a></li><li><ahref="/oauth2-proxy/docs/next/configuration/providers/bitbucket">Bitbucket</a></li></ul><p>The provider can be selected using the <code>provider</code> configuration value.</p><p>Please note that not all providers support all claims. The <code>preferred_username</code> claim is currently only supported by the
OpenID Connect provider.</p><h2class="anchor anchorWithStickyNavbar_LWe7"id="email-authentication">Email Authentication<ahref="#email-authentication"class="hash-link"aria-label="Direct link to Email Authentication"title="Direct link to Email Authentication"></a></h2><p>To authorize a specific email-domain use <code>--email-domain=yourcompany.com</code>. To authorize individual email addresses use
<code>--authenticated-emails-file=/path/to/file</code> with one email per line. To authorize all email addresses use <code>--email-domain=*</code>.</p><h2class="anchor anchorWithStickyNavbar_LWe7"id="adding-a-new-provider">Adding a new Provider<ahref="#adding-a-new-provider"class="hash-link"aria-label="Direct link to Adding a new Provider"title="Direct link to Adding a new Provider"></a></h2><p>Follow the examples in the <ahref="https://github.com/oauth2-proxy/oauth2-proxy/blob/master/providers/"target="_blank"rel="noopener noreferrer"><code>providers</code> package</a> to define a new
<code>Provider</code> instance. Add a new <code>case</code> to
<ahref="https://github.com/oauth2-proxy/oauth2-proxy/blob/master/providers/providers.go"target="_blank"rel="noopener noreferrer"><code>providers.New()</code></a> to allow <code>oauth2-proxy</code> to use the