{"id":18499679,"url":"https://github.com/chr-fritz/oidc-java-fatclient-demo","last_synced_at":"2025-05-14T05:35:45.174Z","repository":{"id":67577136,"uuid":"556327429","full_name":"chr-fritz/oidc-java-fatclient-demo","owner":"chr-fritz","description":"Demo repository to show how to implement an OIDC Login into a java client application.","archived":false,"fork":false,"pushed_at":"2022-11-09T16:38:07.000Z","size":451,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-17T00:50:00.270Z","etag":null,"topics":["java","oidc","oidc-client","pkce-authentication","pkce-flow","pkce-oauth"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chr-fritz.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":"2022-10-23T15:50:09.000Z","updated_at":"2022-11-02T17:46:52.000Z","dependencies_parsed_at":"2023-02-21T17:15:27.762Z","dependency_job_id":null,"html_url":"https://github.com/chr-fritz/oidc-java-fatclient-demo","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chr-fritz%2Foidc-java-fatclient-demo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chr-fritz%2Foidc-java-fatclient-demo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chr-fritz%2Foidc-java-fatclient-demo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chr-fritz%2Foidc-java-fatclient-demo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chr-fritz","download_url":"https://codeload.github.com/chr-fritz/oidc-java-fatclient-demo/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254077106,"owners_count":22010665,"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":["java","oidc","oidc-client","pkce-authentication","pkce-flow","pkce-oauth"],"created_at":"2024-11-06T13:46:55.326Z","updated_at":"2025-05-14T05:35:45.153Z","avatar_url":"https://github.com/chr-fritz.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# OIDC Java Fat-Client Demo\n\nThis repository contains a small demo about how to authenticate a java client application\nwith [OpenID Connect](https://openid.net/connect/) and\nthe [OAuth2 Authorization Code Flow with PKCE](https://www.rfc-editor.org/rfc/rfc7636).\n\nIt was part of my Talk at the JUG Nürnberg. The slides are available on SlideShare: \n\n\u003chttps://www.slideshare.net/QAware/anwendungsbergreifende-authentifizierung-integrationspattern-fr-openid-connect\u003e\n\n## Run the demo\n\n### Keycloak Setup\n\n1. Start keycloak locally using docker or podman as described in the Keycloak\n   documentation: \u003chttps://www.keycloak.org/getting-started/getting-started-docker#_start_keycloak\u003e\n2. Login into the admin console\n3. Create a new OIDC Client named `java-demo`:\n   ![create client](docs/images/create-client-step1.png)\n   and\n   ![create client step 2](docs/images/create-client-step2.png)\n4. Add the redirect uri `http://localhost:*`:  \n   ![Add redirect uri](docs/images/set-redirect-url.png)\n\n### Run Demo\n\nRun the class `de.chrfritz.oidc.auth.CliTestClient` in `src/test/java`. The example shows the\nRun-Configuration for IntelliJ:\n![IntelliJ Run Config](docs/images/intellij-runconfig.png)\n\nThen a browser window should be opened:\n![Login-Screen](docs/images/login-screen.png)\nAfter a successful login, you should see that the demo got a valid access token and got the\ninformation from the user info endpoint:\n![Logs](docs/images/logs.png)\n\n## Maintainer\n\nChristian Fritz (@chrfritz), \u003cchristian.fritz@qaware.de\u003e\n\n## License\n\nThis software is provided under the MIT open source license, read the [`LICENSE`](LICENSE)\nfile for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchr-fritz%2Foidc-java-fatclient-demo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchr-fritz%2Foidc-java-fatclient-demo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchr-fritz%2Foidc-java-fatclient-demo/lists"}