Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kharkevich/web-cli-oidc-sso
Demo web and cli application to demonstrate SSO (OIDC) integration
https://github.com/kharkevich/web-cli-oidc-sso
flask oidc private-api public-api sso
Last synced: about 15 hours ago
JSON representation
Demo web and cli application to demonstrate SSO (OIDC) integration
- Host: GitHub
- URL: https://github.com/kharkevich/web-cli-oidc-sso
- Owner: kharkevich
- License: apache-2.0
- Created: 2024-11-26T06:32:56.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2024-12-01T01:16:15.000Z (2 months ago)
- Last Synced: 2025-01-21T17:09:48.130Z (9 days ago)
- Topics: flask, oidc, private-api, public-api, sso
- Language: Python
- Homepage:
- Size: 190 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# CLI-Auth
## Overview
CLI-Auth is a demonstration application that showcases Single Sign-On (SSO) integration using OpenID Connect (OIDC) for both web and CLI applications. This project aims to provide a comprehensive example of how to implement SSO in different types of applications.
## Features
- SSO integration using OIDC
- Web application authentication
- CLI application authentication## Prerequisites
- Node.js
- npm or yarn
- An OIDC provider (e.g., Auth0, Okta)## Setup
1. Clone the repository:
```sh
git clone https://github.com/kharkevich/web-cli-oidc-sso
cd cli-auth
```2. Install dependencies:
```sh
npm install
# or
yarn install
```3. Configure OIDC provider:
- Create an application in your OIDC provider.
- Note down the client ID, client secret, and issuer URL.4. Create a `.env` file in the root directory and add the following environment variables:
```env
CLIENT_ID=your_client_id
CLIENT_SECRET=your_client_secret
ISSUER_URL=your_issuer_url
```## Running the Application
### Web Application
1. Start the web application:
```sh
npm run start:web
# or
yarn start:web
```2. Open your browser and navigate to `http://localhost:3000`.
### CLI Application
1. Start the CLI application:
```sh
npm run start:cli
# or
yarn start:cli
```2. Follow the prompts to authenticate via the CLI.
## License
This project is licensed under the Apache License 2.0. See the [LICENSE](LICENSE) file for details.
## Contributing
Contributions are welcome! Please open an issue or submit a pull request.
## Acknowledgements
- [OpenID Connect](https://openid.net/connect/)