Как / Где хранить конфиденциальную информацию в проекте .netCore в Azure DevOps / Local - PullRequest
0 голосов
/ 18 июня 2020

Вскоре мой сценарий состоит в том, чтобы протестировать удаленный API, если были какие-либо изменения в вызываемых API, например, удален какой-либо параметр или что-то в этом роде.

Чтобы получить эту информацию, мне нужен токен.

Моя проблема в том, что я не могу сохранить его в базе данных и использовать windowsCredentials, потому что в AzurePipeline агенты сборки не имеют доступа и подключения к базе данных. И если я передам токен через переменные в конвейере, тогда у меня не будет токена, когда я запущу код локально.

appSetting хранится в Git, поэтому это небезопасно.

Есть идеи по этому поводу? Спасибо!

1 Ответ

0 голосов
/ 19 июня 2020

UserSecrets + Переменные среды здесь являются ключевыми. Appsettings. json предназначен для конфигурации, которая не является конфиденциальной, но существует концепция, называемая секретами пользователя (см. Ссылку ниже), которая позволит вам сохранить appsettings. json эквивалент только на вашем компьютере, а не в git. При указании информации в нем следует переопределить или добавить что-либо в настройках приложения. json.

Если эта информация также необходима для производства, следует использовать переменные среды. Вместо файла можно указать / переопределить отдельные конфигурации с помощью переменных среды.

Все это выполняется ТОЛЬКО, если конфигурация основного веб-сервера as pnet настроена для приема из всех этих мест. Настройка по умолчанию из шаблона должна соответствовать sh этому, но прочтите приведенные ниже ссылки, чтобы убедиться, что ваша настройка работает.

Все настройки и передовые методы можно найти здесь .

Нечувствительная информация / По умолчанию: настройки приложения. json

Конфиденциальная информация для разработчиков / спецификаций разработчика c Информация: UserSecrets

Конфиденциальная информация для продукта: переменные среды

...