У нас есть система, развернутая в удаленных местах, где доступ в интернет не гарантирован, часть системы требует пароль, однако пользователи могут забыть свой пароль и попросить варианты восстановления.
Я пытаюсь создать инструмент, который позволил бы мне создавать пароли восстановления, пароли должны быть уникальными для системы (системы могут предоставлять уникальный числовой идентификатор) и чувствительными ко времени.
В идеале система будет работать следующим образом: пользователь вызывает службу поддержки и предоставляет свой системный идентификатор.Служба поддержки вводит свой идентификатор в инструмент восстановления и возвращает пароль, действительный в течение этого часа / дня.Когда пользователь вводит сгенерированный пароль обратно в свою систему, система разрешает доступ.
Я полагаю, что удаленная система должна будет сгенерировать пароль тем же способом, чтобы сравнить его с паролем, предоставленным службой поддержки, что может создать угрозу безопасности, для кода потребуется некоторое обратное проектирование.Я ищу решение C #, но другие методы приветствуются.