Man in the middle Attacken sind dann aber z.B. über einen Proxy möglich, dessen Zertifikat vom Client akzeptiert wird. Der Proxy sieht den gesamten Traffic dann unverschlüsselt. Zum Beispiel bei Unternehmensfirewalls gibt es solche transparenten Proxyserver.
Geht aber auch nur, wenn der Client es versäumt den Public-Key/des Zertifikat des Servers gegenzuprüfen. Ist diese Vorraussetzung aber erfüllt, dann ist dein Traffic - zumindest für heimliche Mitleser - nicht mehr einzusehen.
Ja, das ist sie. Einziges Problem: der Client kennt das Token
Sehe ich nicht als Problem, da der Client ja autorisiert sein sollte. Ist das nicht garantiert, kann man das Token notfalls auch erst nach einem entsprechenden Login vom Server generieren und an den Client senden lassen.
Wichtig ist nur, dass das Token zufällig gewählt wird, damit ein Angreifer keine Möglichkeit hat z.b. durch einfaches Erhöhen einer Nummer, plötzlich andere Identitäten anzunehmen.