Skip to content

Add secretRef support for OAuth/OIDC configuration and fix secret injection bug #183

@Skaronator

Description

@Skaronator

The Perses CRD currently requires OAuth/OIDC secrets to be stored in plain text, creating a security risk. Additionally, the current secret implementation appears to be broken, causing literal placeholder text to be used instead of actual secret values.

Current Behavior

OAuth/OIDC client secrets must be hardcoded in clear text directly in the Perses CRD configuration.

The CRD does not support secretRef fields to reference Kubernetes Secrets (which would enable integration with External Secrets Operator or similar tools)

Additionally: when configuring secrets, the Azure sign-in URL incorrectly contains client_id= as a literal string instead of injecting the actual secret value

Expected Behavior

  • The CRD should support referencing Kubernetes Secrets via secretRef fields for sensitive OAuth/OIDC configuration
  • Secret values should be properly injected and resolved when constructing OAuth URLs
  • Support for External Secrets Operator patterns through standard Kubernetes Secret references

Steps to Reproduce (for the bug)

  1. Configure OAuth/OIDC authentication with Azure in Perses CRD
  2. Set up the client secret according to current documentation
  3. Attempt to sign in via Azure
  4. Observe that the redirect URL contains client_id=<secret> instead of the actual client ID value

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions