Eine REST-API abzusichern bedeutet, bei jedem Request drei Fragen zu beantworten: wer bist du (Authentifizierung), was darfst du tun (Autorisierung) und ist der Kanal privat (Transport). Weil REST stateless ist, müssen Credentials mit jedem Request reisen, statt in einer Server-Session zu leben.
Transport: immer HTTPS
Alles Folgende setzt voraus. Ohne es reisen Tokens und API Keys im Klartext und können mitgeschnitten werden. Das ist nicht verhandelbar — ein Bearer Token über HTTP ist ein geleaktes Token.
