Мы используем идентификатор ASP.NET в проекте Web Api с SimpleAuthorizationServerProvider
, мы используем OAuth-tokens для авторизации каждого запроса, исходящего от клиента. (Токены имеют и истекают временные интервалы, мы не используем токены обновления.)Как аннулировать токен OAuth при изменении пароля?
Когда пользователи меняют свой пароль, я хотел бы аннулировать маркеры, которые у них могут быть, возможно, на других устройствах. Есть ли способ явно сделать это? Я экспериментировал и видел, что существующие токены работают без каких-либо проблем после смены пароля, что должно быть предотвращено.
Я подумал о том, чтобы положить хэш хэша или часть хэша в токен OAuth в качестве претензии и подтвердить это в методе OnAuthorization
нашего производного фильтра AuthorizeAttribute.
Будет ли это правильным способом решения проблемы?
Не является частью точки с OAuth, что она независима от изменений пароля? Почему бы просто не удалить маркер с сервера аутентификации, когда они меняют пароль, а затем, если они попытаются использовать его на других устройствах, он не будет работать. – DaImTo
«Почему бы просто не удалить токен с сервера аутентификации»: возможно ли это с помощью ASP.NET Identity? Я думал, что токены являются самодостаточными, поэтому их можно использовать на любом экземпляре веб-сервера, поэтому у нас нет сервера аутентификации. –
Если это правда, тогда мне кажется, что мне нужно обновить «ASP.NET Identity». Сожалею. – DaImTo