Доступ к машинной среде Переменная от MSTest in. NET Core - PullRequest
1 голос
/ 27 января 2020

Я пишу интеграционные тесты для нашего кода, подключающегося к секретному серверу Thycoti c. По соображениям безопасности пароль для сервера Thycoti c шифруется при сохранении в файле appsetting.json. Ключ шифрования должен храниться в переменной среды системного уровня. Кроме того, политика безопасности гласит, что зашифрованный пароль и ключ шифрования никогда не могут храниться в одном месте. Зашифрованный пароль может быть в коде, но ключ шифрования не должен быть. Их рекомендуется хранить как переменную среды системного уровня. Эта договоренность была реализована нашей корпоративной командой ИТ-безопасности, и я не могу ее изменить.

Сейчас я пытаюсь написать интеграционные тесты для этого процесса. Я сталкиваюсь с проблемами доступа к системным переменным уровня изнутри тестовых устройств. Environment.GetEnvironmentVariable возвращает ноль. Единственное, что до сих пор работало, это использование Environment.SetEnvironmentVariable(Name, Value) внутри тестового класса. К сожалению, это помещает в код как ключ шифрования, так и зашифрованный пароль, что нарушает политику.

Я искал Stack Overflow и Google, чтобы найти решение для этого, но все указывает на использование Environment.SetEnvironmentVariable в код, и так как это не то, что я могу сделать, я застрял.

Кто-нибудь знает, как я могу получить доступ к переменной среды уровня системы внутри текстового фиксатора MSTest на. NET Core? Есть ли какой-то ресурс, который я пропустил в своем поиске в Google?

1 Ответ

0 голосов
/ 28 января 2020

Я упустил тот факт, что при создании новой переменной среды Windows System Visual Studio необходимо перезапустить, чтобы увидеть добавление / изменение. Это больше не проблема.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...