{"id":13551088,"url":"https://github.com/pwillie/oidc-ingress","last_synced_at":"2026-01-16T22:53:34.575Z","repository":{"id":217153746,"uuid":"117919147","full_name":"pwillie/oidc-ingress","owner":"pwillie","description":null,"archived":false,"fork":false,"pushed_at":"2020-10-09T14:27:37.000Z","size":95,"stargazers_count":3,"open_issues_count":0,"forks_count":4,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-03T01:33:59.297Z","etag":null,"topics":["kubernetes","oidc","oidc-ingress"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pwillie.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.md","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-18T02:13:57.000Z","updated_at":"2020-12-08T18:12:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"d064eeaf-5a6d-4007-b043-8e4b9ea20166","html_url":"https://github.com/pwillie/oidc-ingress","commit_stats":null,"previous_names":["pwillie/oidc-ingress"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/pwillie/oidc-ingress","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pwillie%2Foidc-ingress","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pwillie%2Foidc-ingress/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pwillie%2Foidc-ingress/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pwillie%2Foidc-ingress/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pwillie","download_url":"https://codeload.github.com/pwillie/oidc-ingress/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pwillie%2Foidc-ingress/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28486775,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T22:47:06.728Z","status":"ssl_error","status_checked_at":"2026-01-16T22:46:52.401Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["kubernetes","oidc","oidc-ingress"],"created_at":"2024-08-01T12:01:42.136Z","updated_at":"2026-01-16T22:53:34.546Z","avatar_url":"https://github.com/pwillie.png","language":"Go","funding_links":[],"categories":["Go","kubernetes"],"sub_categories":[],"readme":"# oidc-ingress\n\nA webhook authentication service using OIDC and cookies\n\nMotivation for creating this service is to easily add OIDC authentication to any\nservice running behind an Nginx Ingress controller in Kubernetes.  By using cookies\nthere is no need for client side changes and any legacy system/service can be authenticated.\n\n## Kubernetes Nginx Ingress OIDC sequence diagram\n\n![OIDC Sequence Diagram](https://github.com/pwillie/oidc-ingress/blob/master/images/sequence.png?raw=true \"OIDC Sequence Diagram\")\n\nCreated using: *https://sequencediagram.org/*\n\n## Configuration\n\n| Env Var  | CMD line arg | Default Value | Notes |\n|----------|--------------|---------------|-------|\n| CLIENTS  | -clients     | -             | OIDC clients config expressed in yaml (see below) |\n| LISTEN   | -listen      | :8000         | Web server listen address |\n| INTERNAL | -internal    | :9000         | Internal listen address for healthz and metrics endpoints |\n| VERSION  | -version     | -             | When set will print version and exit |\n\n## Clients\n\nClients env var (or cmd line arg) is a YAML formated string.  For example:\n```\n- provider: https://oauth.provider.url/\n  clientid: client_id\n  clientsecret: client_secret\n  noredirect: false (default: false)\n  scopes: (default: - openid)\n    - openid\n    - email\n    - profile\n```\n\n*note:* `noredirect` will suppress the `?rd={redirect url}` from the path.  Handy for Azure AD as querystring is stripped anyway and redirect url must match exactly.\n\n## Building\n\n```console\n$ make build\n$ ./bin/oidc-ingress\n```\n\n## Testing\n\n```\n$ make test\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpwillie%2Foidc-ingress","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpwillie%2Foidc-ingress","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpwillie%2Foidc-ingress/lists"}