#asp.net-core #blazor
#asp.net-core #blazor
Вопрос:
Для сервера Blazor я сохраняю настройки Auth0 для API, который я использую, используя хранилище параметров AWS.
Я хочу хранить секреты для приложения Blazor web assembly, и везде мне говорят, что вы не должны хранить какие-либо пользовательские секреты, потому что они загружены клиентом.
Все в порядке — я понимаю почему — но мне нужно взаимодействовать с моим API, для которого требуются ключи Auth0 и т.д. — итак, где мне хранить / использовать эти ключи для моего приложения для веб-сборки?
Комментарии:
1. Где бы вы их «хранили», если бы создавали приложение React или Angular? Возможно, нигде. Blazor WASM на самом деле является React # — компонентная модель идентична , проблемы безопасности те же.
2. Не глядя, как это делают СПА-центры, я бы сказал, что вы нигде не должны хранить секреты. Возможно, токены, предоставляемые сервером, если они часто обновляются и есть способ предотвратить повторные атаки. Я бы посмотрел, как React и Angular решают одну и ту же проблему, и повторил ее. В конце концов, среда браузера такая же
3. Да, я это понимаю. Итак, как клиентское приложение проходит аутентификацию с помощью других API, если вы не можете сохранить ключи?
4. Я бы сначала исследовал это. Никто не знает всего или не может помнить это все время
5. Если вы согласны с тем, что конечный пользователь знает ключи, тогда предоставьте их клиенту. Если нет, то вам нужно отправить запрос на ваш сервер и заставить его выполнить его (при необходимости вызывая другие API).