Я думал о Azure хранилищах ключей, но я не знаю, как я могу использовать атрибут [Authorize] с Azure хранилищем ключей?
Вы не можете использовать Azure хранилище ключей для аутентификации вашего основного webapi. Потому что Azure Key Vault является инструментом для безопасного хранения и доступа к секретам . Секрет - это все, к чему вы хотите строго контролировать доступ, например, ключи API, пароли или сертификаты.
Существуют ли другие решения?
В ASP. NET В качестве ядра вы можете использовать платформу удостоверений Microsoft и Azure Active Directory для аутентификации и авторизации вашего webapi.
Вы можете обратиться к этому учебнику , в котором веб-приложение ASP. NET использует промежуточное программное обеспечение OpenID Connect и библиотеку аутентификации Active Directory (ADAL. NET) для получения Маркер-носитель JWT для вошедшего в систему пользователя с использованием протокола OAuth 2.0. Токен-носитель передается в веб-API, который проверяет токен и авторизует пользователя с помощью промежуточного программного обеспечения для аутентификации канала-носителя JWT.