Skip to content

[Infisical] dataFrom.find.path should filter by secret folder path, not secret name prefix #5900

@k3dom

Description

@k3dom

Problem

When using dataFrom.find.path with the Infisical provider, the path parameter filters secrets by their name prefix rather than their folder path in Infisical.

For example, with secrets structured like this in Infisical:

/GITHUB_USER
/GITHUB_PAT
/gastrovisor/JWT_SECRET
/gastrovisor/SMTP_HOST

Using dataFrom.find.path: /gastrovisor or path: gastrovisor does not filter to only secrets in the /gastrovisor folder. Instead, it seems to filter by name prefix, which doesn't work since the returned secret keys don't include the folder path.

Current Behavior

The find.path parameter acts as a name prefix filter on the secret key. However, when secrets are returned from Infisical, they come back with just the secret name (e.g., JWT_SECRET) rather than the full path (gastrovisor/JWT_SECRET), making the path filter ineffective.

Expected Behavior

The find.path parameter should filter secrets based on their folder location in Infisical, similar to how secretsScope.secretsPath works in the SecretStore configuration. This would allow users to fetch all secrets from a specific folder without needing to enumerate them explicitly.

Workaround

Currently, the only workarounds are:

  1. Use secretsScope.secretsPath in the SecretStore to scope to a specific folder (but this requires a separate SecretStore per folder)
  2. Use explicit data entries with full paths for each secret
  3. Use dataFrom.find.name.regexp but this can only filter by name patterns, not folder location

Use Case

In a multi-tenant or multi-application setup, it's common to organize secrets by application folder:

/global-secrets/...
/app1/...
/app2/...

Being able to use dataFrom.find.path: /app1 to fetch all secrets from that folder would be very useful and align with how other providers handle path-based filtering.

Environment

  • External Secrets Operator version: latest
  • Infisical provider
  • Using ClusterSecretStore with secretsScope.secretsPath: / and recursive: true

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/infisicalIssues / Pull Requests related to infisical providerbreaking-changeThis pull request introduces a breaking changekind/bugCategorizes issue or PR as related to a bug.

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions