{"id":16849368,"url":"https://github.com/beryju/oidc-test-client","last_synced_at":"2025-03-17T05:32:08.257Z","repository":{"id":40469861,"uuid":"299299761","full_name":"BeryJu/oidc-test-client","owner":"BeryJu","description":"OIDC Client for end-to-end and unittesting","archived":false,"fork":false,"pushed_at":"2025-03-14T13:30:31.000Z","size":428,"stargazers_count":39,"open_issues_count":1,"forks_count":8,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-14T14:30:13.912Z","etag":null,"topics":["e2e","golang","oauth2","oidc","oidc-client","sso","unittest"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BeryJu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-09-28T12:21:02.000Z","updated_at":"2025-03-14T13:30:34.000Z","dependencies_parsed_at":"2023-02-18T05:46:13.058Z","dependency_job_id":"70300c2f-87de-4005-88e2-4d86ce712661","html_url":"https://github.com/BeryJu/oidc-test-client","commit_stats":{"total_commits":146,"total_committers":5,"mean_commits":29.2,"dds":0.3013698630136986,"last_synced_commit":"abd271d6b1a4292c3a869d4715d4db16b2d4e895"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeryJu%2Foidc-test-client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeryJu%2Foidc-test-client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeryJu%2Foidc-test-client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeryJu%2Foidc-test-client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BeryJu","download_url":"https://codeload.github.com/BeryJu/oidc-test-client/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243846976,"owners_count":20357294,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["e2e","golang","oauth2","oidc","oidc-client","sso","unittest"],"created_at":"2024-10-13T13:15:04.679Z","updated_at":"2025-03-17T05:32:07.657Z","avatar_url":"https://github.com/BeryJu.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# OIDC-test-client\n\n![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/beryju/oidc-test-client/ci-build.yml?branch=main\u0026style=for-the-badge)\n\nThis is a small, golang-based OIDC Client, to be used in End-to-end or other testing. It uses the github.com/coreos/go-oidc Library for the actual OIDC Logic.\n\nThis tool can be used to test the traditional Authorization Code Flow. It also tests OIDC Token Introspection, if your provider supports it.\n\nThis tool is full configured using environment variables.\n\n## URLs\n\n- `http://localhost:9009/health`: Healthcheck URL, used by the docker healtcheck.\n- `http://localhost:9009/auth/callback`: OAuth Callback URL\n- `http://localhost:9009/`: Test URL, initiated OAuth Code flow\n- `http://localhost:9009/implicit/`: Tests an Implicit OIDC flow using `id_token token`\n\n## Configuration\n\n- `OIDC_BIND`: Which address and port to bind to. (defaults `0.0.0.0:9009`).\n- `OIDC_CLIENT_ID`: OAuth2 Client ID to use.\n- `OIDC_CLIENT_SECRET`: OAuth2 Client Secret to use. Can be set to an empty string when only implicit flow is tested.\n- `OIDC_ROOT_URL`: URL under which you access this Client. (default http://localhost:9009)\n\n  When using in a subdirectory, make sure to leave out any trailing slashes\n\n- `OIDC_PROVIDER`: Optional URL that metadata is fetched from. The metadata is fetched on the first request to `/`\n- `OIDC_SCOPES`: Scopes to request from the provider. Defaults to \"openid,offline_access,profile,email\"\n- `OIDC_DO_REFRESH`: Whether refresh-token related checks are enabled (don't ask for a refresh token) (default: true)\n- `OIDC_DO_INTROSPECTION`: Whether introspection related checks are enabled (don't call introspection endpoint) (default: true)\n- `OIDC_DO_USER_INFO`: Whether user-info related checks are enabled (don't use userinfo endpoint) (default: true)\n- `OIDC_TLS_VERIFY`: Whether to verify TLS certicates (set to \"false\" for self-signed) (default: true)\n\n## Running\n\nThis service is intended to run in a docker container\n\n```\n# beryju.org is a vanity URL for ghcr.io/beryju\ndocker pull ghcr.io/beryju/oidc-test-client:\ndocke run -d --rm \\\n    -p 9009:9009 \\\n    -e OIDC_CLIENT_ID=test-id \\\n    -e OIDC_CLIENT_SECRET=test-secret \\\n    -e OIDC_PROVIDER=http://id.beryju.io/... \\\n    ghcr.io/beryju/oidc-test-client:\n```\n\nOr if you want to use docker-compose, use this in your `docker-compose.yaml`.\n\n```yaml\nversion: '3.5'\n\nservices:\n  oidc-test-client:\n    image: ghcr.io/beryju/oidc-test-client:\n    ports:\n      - 9009:9009\n    environment:\n      OIDC_CLIENT_ID: test-id\n      OIDC_CLIENT_SECRET: test-secret\n      OIDC_PROVIDER: https://some.issuer.tld/\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fberyju%2Foidc-test-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fberyju%2Foidc-test-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fberyju%2Foidc-test-client/lists"}