Lizenz¶
JiraBundle ist ein kostenpflichtiges Plugin. Die Kimai-Zeiterfassung läuft stets ohne Lizenz, doch die eigenen Jira-Funktionen des Plugins – Worklog-Sync, Import und die Live-Vorgangssuche – laufen nur mit einem gültigen Lizenzschlüssel. Diese Seite beschreibt, wie Sie die Lizenz kaufen, woher der Schlüssel kommt, die beiden Wege, ihn zu setzen, und was genau geschieht, wenn ein Abonnement ausläuft oder der Schlüssel nicht geprüft werden kann.
Lizenz kaufen¶
JiraBundle wird als Abonnement für 49 €/Jahr verkauft. Kaufen Sie es hier: JiraBundle kaufen – 49 €/Jahr.
Nach dem Bezahlvorgang erhalten Sie den signierten Lizenzschlüssel per E-Mail. Fügen Sie ihn in Kimai unter System → Einstellungen → Jira ein – Den Schlüssel setzen weiter unten beschreibt beide Wege, ihn bereitzustellen, und welcher Vorrang hat.
Ein Eintrag im Kimai-Marktplatz ist eingereicht, aber noch nicht verfügbar; bis dahin führt der Kauf über den Bezahllink oben.
Woher der Schlüssel kommt¶
Sie erhalten den Lizenzschlüssel per E-Mail beim Kauf des Abonnements – dieselbe Auslieferung wie
das Release-ZIP. Es handelt sich um ein signiertes Token (v1.<payload>.<signature>); fügen Sie es
unverändert ein, einschließlich des Präfixes v1..
Den Schlüssel setzen¶
Es gibt zwei Wege, ihn bereitzustellen, und sie haben eine bewusste Rangfolge:
- Umgebungsvariable
JIRA_LICENSE_KEY– für Container- und automatisierte Deployments. Diese gewinnt. Ist sie gesetzt und nicht leer, verwendet das Plugin sie und ignoriert den Wert aus der Systemkonfiguration. - Systemkonfiguration – öffnen Sie als Administrator System → Einstellungen → Jira und fügen
Sie den Schlüssel in das Feld Lizenzschlüssel ein. Wird verwendet, sobald
JIRA_LICENSE_KEYnicht gesetzt oder leer ist.
Die Umgebungsvariable überschreibt das Einstellungsfeld
Ist JIRA_LICENSE_KEY gesetzt, hat das Bearbeiten des Schlüssels unter System → Einstellungen
→ Jira keine Wirkung – die Umgebungsvariable wird zuerst gelesen und beendet die Suche vorzeitig.
Verwalten Sie den Schlüssel bei einem containerisierten Deployment über die Umgebungsvariable und
lassen Sie das Einstellungsfeld leer, um Verwechslungen zu vermeiden.
Offline-Verifizierung¶
Der Schlüssel wird vollständig offline verifiziert. Er trägt eine Ed25519-Signatur, die das Plugin gegen einen eingebetteten öffentlichen Schlüssel prüft – für den Betrieb des Plugins ist kein Aufruf eines Servers nötig. Eine air-gapped Installation mit einem gültigen, nicht abgelaufenen Schlüssel funktioniert vollständig ohne ausgehende Netzwerkverbindung (vorbehaltlich der Offline-Veraltungs-Uhr weiter unten).
Das Kulanzfenster: was aussetzt und wann¶
Läuft eine Lizenz ab, wird sie widerrufen oder veraltet sie (siehe unten), werden die Jira-Funktionen nicht sofort abgeschaltet. Es gibt ein 14-tägiges Kulanzfenster: die Funktionen laufen weiter, und Kimai zeigt ein eskalierendes Banner mit einem Countdown der verbleibenden Tage. Das Banner lautet:
Jira subscription lapsed — sync keeps working for N more day(s), then Jira features are disabled. Renew and update the license key under System settings.
Sind die 14 Tage verstrichen, werden die Jira-Funktionen des Plugins abgeschaltet:
- Worklog-Sync (inline beim Speichern eines Zeiteintrags sowie der Abgleich
kimai:jira:sync) pausiert. Ausstehende Worklogs gehen nicht verloren – sie bleiben in der Warteschlange und werden nachgetragen, sobald wieder ein gültiger Schlüssel aktiv ist. - Import (
kimai:jira:import) ist deaktiviert und beendet sich ohne zu importieren. - Live-Vorgangssuche (die beratende Vorgangsschlüssel-Prüfung im Zeiteintrag-Formular) verstummt – sie liefert nichts zurück, genau wie eine nicht erreichbare Jira, und blockiert nie das Speichern eines Zeiteintrags.
Kimai-Core, die Zeiterfassung und alle vorhandenen Daten werden nie berührt. Diese Sperre entscheidet ausschließlich darüber, ob das plugin-eigene Jira-Verhalten läuft.
Ist überhaupt kein Schlüssel konfiguriert (statt eines abgelaufenen), sind dieselben Funktionen aus, und das Banner fordert Sie stattdessen auf, den beim Kauf erhaltenen Schlüssel einzufügen.
Der tägliche Widerrufs-Heartbeat läuft über kimai:jira:sync¶
Die Verifizierung ist offline, doch das Plugin braucht dennoch einen Weg, ein widerrufenes
Abonnement zu bemerken (eine Rückerstattung oder Rückbuchung). Dazu dient ein einmal täglicher
Widerrufs-Heartbeat, der über den Cron kimai:jira:sync läuft. Der Heartbeat ist
fail-open: nur eine ausdrückliche „widerrufen/inaktiv“-Antwort des Lizenzdienstes startet die
Kulanz-Uhr. Ein nicht erreichbarer Endpunkt, eine Nicht-2xx-Antwort oder nicht parsebares JSON wird
als „unbekannt“ verbucht und deaktiviert eine funktionierende Instanz nie.
Planen Sie kimai:jira:sync ein, sonst degradiert Ihre bezahlte Installation von selbst
Der Cron kimai:jira:sync ist das einzige, das die Offline-Veraltungs-Uhr (unten)
zurücksetzt. Die Live-Funktionen des Plugins – Inline-Worklog-Sync beim Speichern eines
Zeiteintrags, Vorgangssuche – laufen ohne den Cron, daher bleibt er leicht ungeplant. Doch
dann degradiert eine bezahlte, online betriebene Installation ihre Jira-Funktionen nach rund
44 Tagen, berechnet als 30 Tage Offline-Veraltung + 14 Tage Kulanz – weil sie sich nie
meldet. Planen Sie den Cron ein (siehe Einrichtung → Cron) oder setzen Sie
JIRA_LICENSE_OFFLINE_GRACE_DAYS=0, um die Offline-Uhr vollständig zu deaktivieren.
Die Offline-Veraltungs-Uhr (air-gapped Installationen)¶
Fail-open allein würde einer Kopie, die den Lizenz-Host dauerhaft blockiert, erlauben, den Widerruf ewig zu umgehen. Um das zu begrenzen, führt das Plugin eine Offline-Veraltungs-Uhr: nach 30 Tagen ohne erfolgreichen Kontakt mit dem Lizenzdienst startet die Veraltung dasselbe 14-tägige Kulanz-dann-Abschaltung-Fenster. Daher stammt die ~44-Tage-Angabe – 30 (Veraltung) + 14 (Kulanz).
- Die Uhr ist daran verankert, wann diese Installation sich zum ersten Mal gemeldet hat (ihr Erst-Kontakt-Zeitpunkt), nicht daran, wann der Schlüssel ausgestellt wurde – sodass die Wiederherstellung aus einer Sicherung mit einem älteren Schlüssel Sie nie bereits abgelaufen starten lässt.
- Jeder erfolgreiche tägliche Heartbeat setzt sie zurück, sodass eine normal verbundene Installation sie nie auslöst.
- Das Fenster wird über
JIRA_LICENSE_OFFLINE_GRACE_DAYS(Standard30) gesetzt:- erhöhen Sie es für nur zeitweise verbundene Standorte, oder
- setzen Sie es auf
0, um die Offline-Uhr vollständig zu deaktivieren für eine legitim air-gapped Installation.
Air-gapped Installationen
Setzen Sie auf einer bewusst offline betriebenen Installation JIRA_LICENSE_OFFLINE_GRACE_DAYS=0.
Der signierte Schlüssel bleibt für seine gesamte Laufzeit maßgeblich, und die Offline-Uhr greift
nie. Sie erhalten dann keine Widerrufs-Aktualisierungen – das ist der Preis dafür, vollständig
vom Lizenzdienst entkoppelt zu laufen.
Verlängerung und Ablauf¶
- Verlängern Sie, indem Sie den Schlüssel aktualisieren – fügen Sie den neuen Schlüssel unter
System → Einstellungen → Jira ein oder aktualisieren Sie die Umgebungsvariable
JIRA_LICENSE_KEY. Beim nächsten Lauf vonkimai:jira:syncprüft der Heartbeat das Abonnement erneut und aktiviert die Funktionen wieder; in der Warteschlange stehende Worklogs werden dann nachgetragen. - Ein anhaltender Ausfall des Lizenzdienstes selbst (~44 Tage: 30 Veraltung + 14 Kulanz) wird
schließlich die Jira-Funktionen auf ansonsten gesunden, online betriebenen, bezahlten
Installationen deaktivieren. Kimai und Ihre Daten bleiben unberührt, und das Plugin heilt sich
selbst beim nächsten erfolgreichen Kontakt. Falls dieser Kompromiss für Sie relevant ist –
air-gapped, bewusst offline oder Sie möchten sich vollständig von der Verfügbarkeit des Anbieters
entkoppeln – setzen Sie
JIRA_LICENSE_OFFLINE_GRACE_DAYS=0.
Wenn Jira-Funktionen unerwartet aussetzen, siehe Fehlerbehebung → Jira-Funktionen funktionieren nicht mehr.