А чем не устраивает "Просто вызывать break внутри цикла, где выпоняется поток и выходит соответственно из функции, не особо устраивает", чем он будет отличаться для вас от while (isActive) { .... }?
Илья, Противоречие в уникальном ID на токен. Так как это опускает безопасность ниже плинтуса. Тут либо у вас безопасная система JWT на JWT, либо не безопастная ID. Остальные варианты, это плохая не продуманная архитектура.
Илья, И что это меняет, что они разные? JWT это состояние сессии и при этом защищенное, чтобы уменьшить вероятность подделки. Если вы переходите на ID то вам получается абсолютно не нужна эта защищенность, она то и является лишней прослойкой. А значит и не нужен JWT. Эта технология хороша там, где вам нужно проверять авторизацию пользователя, но у вас при этом нет возможности (или она сильно ограничена) это сделать напрямую. Для примера при обращениях к устройствам, что доступны по сети, но которым не доступен интернет.
А смысл тогда создавать JWT токен, если вы только его ID передаете? JWT это обьект позволяющий хранить состояние сессии на клиенте, но если вы работаете с ID, то он и будет являеться указателем на сессию и уже по ID вы востановите состояние, зачем тогда JWT прослойка?
А что значит "писать свой код на dotnet"? dotnet это платформа которая позволяет компилировать приложения на множестве языков и исполнять их.
При этом код для приложения может писаться и без .net в обычном приложении "Блокнот", но удобнее в специальных IDE приложениях.
dotnet распространяется компанией microsoft с помощью инсталятора, который можно скачать и установить на компьютерах с ОС, что поддерживает текущую версию .Net. Поэтому можете скачать и установить его в контейнер docker, где уже развернута нужная ОС.