Всем привет.
Я слышал что в .NET Core есть такая штука как UserSecrets, позволяющая скрывать определённые данные (например, локальную строку подключения к базе данных) от System Version Control типа Git.
Расскажите про это, пожалуйста
Всем привет.
Я слышал что в .NET Core есть такая штука как UserSecrets, позволяющая скрывать определённые данные (например, локальную строку подключения к базе данных) от System Version Control типа Git.
Расскажите про это, пожалуйста
В Azure у вас есть возможность настраивать конфигурации настроен прямо из настроек вашего веб приложения, перегружая при этом настройки вашего файла config. При этом не имеет значения это web.config или appsetting.json.
Однако у нас нет возможности проделывать то же самое на локальной машине разработки, т.к. там нет такой конфигурации. Итак, где и как же можно скрыть данные?
С платформой .NET Core получается что-то похожее. Есть так называемый инструмент SecretManager, который поддерживается .NET Core SDK. (Microsoft.Extensions.SecretManager.Tools), к которому можно получить доступ через дотнет CLI.
Что бы испольовать инструмент SecretManager, вам необходимо кликнуть на раздел "Tools" вашего project.json, вроде такого:
"Microsoft.Extensions.SecretManager.Tools": { "version": "1.0.0-preview2-final", "imports": "portable-net45 win8 dnxcore50" },
Будьте уверены что у вас есть userSecretId в вашем проекте project.json. С этим ID SecretManager проинициализирует user secrets в вашем приложении:
"userSecretsId": "aspnet-UserSecretDemo-79c563d8-751d-48e5-a5b1-d0ec19e5d2b0",
и тд...
Прочтите документацию, описанную на сайте - https://asp.net-hacker.rocks/2016/07/11/user-secrets-in-aspnetcore.html