{"repo":"lastlogin-net/obligator","free":true,"listed":false,"github":"https://github.com/lastlogin-net/obligator","clone":"git clone https://github.com/lastlogin-net/obligator.git","description":"Simple and opinionated OpenID Connect server designed for self-hosters","language":"Go","stars":838,"topics":["oidc","oidc-server","openid"],"license":"MIT","category":"auth-billing-email","readme_excerpt":"Introduction obligator is a relatively simple and opinionated OpenID Connect (OIDC) Provider (OP) server designed for self-hosters. Hacker News discussion [here][13]. Motivation There are lots of great open source OIDC servers out there (see comparison). I made obligator because I needed a specific combination of features I didn't find in any of the others. Here's a brief list. See the feature explanation section for more detailed information. Simple to deploy and manage. Static executable and either flat-file or sqlite storage Support for anonymous OAuth2 client auth Authenticate to multiple domains at once Passwordless email login Configurable at runtime with an API Support for [forward auth][0] Support for [trusted headers][1] Support for upstream social login providers (GitLab, GitHub, Google, etc) Design The overarching philosophy of obligator is that identities are built on email. Email isn't perfect, but it's the globally unique federated identity we have that works today. Thus the purpose of obligator is to validate that a user controls an email address as simply as possible, and communicate that to the application the user is attempting to log in to. Validation can either be done directly through SMTP, or delegated to upstream OIDC (and some plain OAuth2) providers. Running it You can initialize obligator with a config file by passing the -config option with a JSON file matching the following format: If you're already using docker, it's the easiest way to get started","default_branch":null,"files":null,"tree":[],"storefront":"/r/lastlogin-net","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/lastlogin-net/obligator/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}