Веб-сборка Blazor, хранящая секреты auth0

#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).