kerberos-io / helm-charts

All Kerberos.io helm charts in a single place
3 stars 1 forks source link

Feature/add support for oauth2 proxy #1

Closed cedricve closed 1 month ago

cedricve commented 1 month ago

Motivation and Context

This pull request introduces support for OAuth2 Proxy in our project. The primary motivation behind this change is to enhance the security and access control mechanisms of our application by integrating OAuth2-based authentication. This addition ensures that only authorized users can access our services, thereby fortifying our application's security posture.

How This Improves the Project

  1. Enhanced Security: By implementing OAuth2 Proxy, we add an additional layer of authentication, ensuring that only users with valid OAuth2 credentials can access our application.
  2. Flexible Authentication: OAuth2 Proxy supports multiple providers, including GitHub, allowing for flexible and scalable authentication solutions.
  3. Ease of Use: The integration is seamless and can be configured easily through the values.yaml file, making it straightforward for administrators to enable or disable this feature as needed.
  4. Compliance: This feature helps in aligning our project with modern security standards and best practices, ensuring compliance with industry requirements.

Summary of Changes

  1. GitHub Actions Workflow:

    • Added a new workflow (.github/workflows/pr-description.yml) to autofill PR descriptions using OpenAI.
  2. Helm Chart Changes:

    • Bumped the chart version from 0.56.0 to 0.57.0.
    • Modified the hub-api.yaml and hub-frontend.yaml templates to support OAuth2 Proxy configurations.
    • Introduced a new template (hub-oauth2-proxy.yaml) for deploying the OAuth2 Proxy service.
    • Updated values.yaml to include configurations for OAuth2 Proxy, such as clientId, clientSecret, cookieSecret, organization, and team.

Configuration

To enable OAuth2 Proxy, update the values.yaml file with the necessary credentials and set kerberoshub.oauth2Proxy.enabled to true. Additionally, specify the OAuth2 provider details under the kerberoshub.oauth2Proxy section.

Conclusion

This feature significantly enhances the security and flexibility of our application by integrating OAuth2-based authentication. It is a step forward in ensuring that our project remains secure, scalable, and compliant with modern security standards.