Кстати, а ты искал как делают api key?
Ну чёт сходу не нашел инфы.
Я в итоге, наверное, буду делать просто по-своему с обменом этого api key на jwt где-нибудь на gw.
Я так понимаю, что апи ключ надо хэшировать, поэтому наверное надо в контракте обязать передавать username + API key, чтобы сначала найти пользователя, а потом проверять с каким из хэшей матчится присланный ключ.
Ну и про время жизни жвт тоже не до конца очевидно.
Было бы проще сделать этот жвт вечным, так как он клиенту не отдается, и просто удалять его из базы при revoke или когда мы блокируем пользователя, но видимо это не совсем корректно.
Я поэтому и хотел какую-то статейку или код посмотреть чей-нибудь.