Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Cron: malformed tenant annotation can stop scheduled actions of other tenants

Fermée
#275 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
20/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
À l'abandon
Stack technique
kubernetes, python
Domaine
backend, cloud

Piste de recherche

The proposed fix is in openserverless-operator for branch 0.9.0, and PR #144 is already open. Read that pull request and its regression test for two tenants with valid recurring and one-shot actions; done means malformed annotations are rejected and do not prevent other scheduled actions from running.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

bug

The OpenServerless 0.9.0 Cron scheduler processes scheduled actions from all namespaces in one batch. An authenticated tenant can persist a malformed cron annotation on an action in its own namespace. The scheduler passes that value to the cron parser without checking its type; an uncaught exception can stop the batch before later tenants' actions are processed. The annotation persists, so subsequent scheduled runs can be affected as well.

Impact: cross-tenant availability of scheduled actions when the Cron component is enabled. This requires a normal tenant credential. We found no anonymous entry point, cross-tenant invocation, or credential disclosure in this path.

Proposed change in openserverless-operator for branch 0.9.0: reject non-string, empty, and excessively long cron expressions before parsing; isolate errors while processing each action so one malformed action cannot stop the remaining batch; add a regression test covering two tenants and valid recurring/one-shot actions.

Validation: the regression reproduced the failure before the fix in a local harness and passed afterward with the pinned croniter 1.4.1. In an isolated K3s lab, Alpha and Beta each produced two fresh scheduled heartbeats while a malformed Alpha action existed. A scheduler job logged the malformed Alpha annotation before successfully dispatching Beta's heartbeat action. The malformed action was removed after the test, and the baseline CronJob image was restored.

Proposed fix: https://github.com/apache/openserverless-operator/pull/144 (target branch 0.9.0).

Langage dominant
Python
Étoiles
577
Forks
29
Merge moyen
3 j 17 h
PR mergées (30 j)
4

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de apache/openserverless

Toutes les issues de apache/openserverless

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.