# Proxmox VE: Warnung „ignore invalid acl token“ nach dem Löschen von Access Tokens

## Zusammenfassung

Nach dem Löschen eines Access Tokens oder eines Benutzers in der Proxmox-GUI kann beim Zugriff auf Container oder VMs (z. B. mittels `pct enter` oder `qm enter`) folgende Warnmeldung erscheinen:

```
user config - ignore invalid acl token 'user@realm!tokenname'
```

Diese Meldung ist harmlos, weist jedoch auf **verwaiste Token-Einträge** in der Proxmox-Konfiguration hin und sollte bereinigt werden.

**Der Text hier benutzt `homepage@pam!homepage-192-168-10-110` als Beispielname.**

---

## Symptome

* Die Warnung erscheint bei:

  * `pct enter <CTID>`
  * `qm enter <VMID>`
  * teilweise auch bei API-Zugriffen
* Die betroffenen Container oder VMs funktionieren weiterhin normal
* `pvesh get /access/acl` zeigt **keine** fehlerhaften ACL-Einträge an

---

## Ursache

Proxmox speichert Benutzer, Tokens und ACLs zentral in der Cluster-Konfigurationsdatei:

```
/etc/pve/user.cfg
```

### Wichtiger Punkt (GUI-Verhalten)

> **Beim Löschen eines Users oder Access Tokens in der GUI werden zugehörige ACL-Einträge oder Token-Definitionen nicht automatisch vollständig entfernt.**

Das führt zu folgendem Zustand:

* Der User oder Token wurde in der GUI gelöscht
* In `user.cfg` existiert jedoch weiterhin ein `token:`-Eintrag
* Beim Laden der Benutzerkonfiguration erkennt Proxmox den Token nicht mehr korrekt
* Ergebnis: die Warnung „ignore invalid acl token“

Die Meldung ist irreführend, da sie nicht zwingend ein ACL-Problem ist, sondern ein **Konfigurationsartefakt**.

---

## Diagnose

### ACLs prüfen

```bash
pvesh get /access/acl
```

Wenn dort **kein** Eintrag mit dem genannten Token erscheint, liegt das Problem sehr wahrscheinlich in `user.cfg`.

### Token-Einträge suchen

```bash
grep '^token:' /etc/pve/user.cfg
```

Oder gezielt:

```bash
grep 'homepage@pam' /etc/pve/user.cfg
```

---

## Lösung (empfohlen)

### 1. Benutzerkonfiguration bearbeiten

```bash
nano /etc/pve/user.cfg
```

### 2. Verwaisten Token entfernen

Einen Eintrag dieser Art **vollständig löschen**:

```
token:homepage@pam!homepage-192-168-10-110:privsep=1:
```

⚠️ **Nur den betroffenen `token:`-Eintrag entfernen**, keine anderen Benutzer-, Rollen- oder ACL-Zeilen.

---

### 3. Dienste neu laden

```bash
systemctl restart pve-cluster pvedaemon pveproxy
```

Die Änderung wird clusterweit sofort wirksam (pmxcfs).

---

### 4. Verifikation

```bash
pct enter <CTID>
```

Die Warnmeldung sollte nicht mehr erscheinen.

---

## Best Practices / Prävention

* Tokens **vor** dem Löschen eines Users entfernen
* ACL-Zuweisungen vor dem Token-Löschen prüfen
* Nach umfangreichen Änderungen an Usern/Tokens:

  ```bash
  grep '^token:' /etc/pve/user.cfg
  ```
* Bei Automatisierung bevorzugt API / `pvesh` nutzen statt ausschließlich die GUI

---

## Hinweis

Das manuelle Bearbeiten von `/etc/pve/user.cfg` ist in diesem Fall **zulässig und sicher**, da es sich um eine vom Cluster-Dateisystem verwaltete Konfigurationsdatei handelt. Änderungen werden sofort synchronisiert.