Как не хардкодить пароли и учётки в коде?

94
10 января 2021, 00:30

Как не хардкодить учетные записи? Какие есть варианты решения данной проблемы?

pdf.HtmlOptions.LogonName = "myLogin";
pdf.HtmlOptions.LogonPassword = "myPassword";
Answer 1

Вариантов полно:

  • Хранить в других файлах (всякие конфиги).

  • Хранить в системе – использовать переменные окружения или реестр Винды.

  • Не хранить вообще, а просить ввести это дело пользователя или передавать аргументами при запуске из консоли.

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

Стоит также отметить, в случае получения логина-пароля от внешнего источника (удалённый сервис или человек), их можно сохранять навсегда или на время, в файл или переменную, или разово использовать и не вообще сохранять – то есть, выбор третьего варианта рекурсивно заставляет Вас ещё раз всё обдумать и сделать обоснованный выбор.

Answer 2
  1. Конфигурационные файлы. Самое простое, работает везде - но всё равно в открытом виде где-то хранится логин/пароль
  2. Хранилища данных, типа Azure keyvault. Реализация пляшет от платформы к платформе - но зато пароля не будет ни в одном исходнике.
READ ALSO
Как сделать рейтинг в игре?

Как сделать рейтинг в игре?

Есть игра "Найди элементы на картинке" есть две разных картинки,где нужно искать элементы

110
Форматировать данные в Excel как таблицу

Форматировать данные в Excel как таблицу

Работаю с Excel на c#Задаю имена столбцов, вывожу данные

122
Как сделать при запросе у пользователя имени,чтобы он мог ввести не более 10 символов в textbox?

Как сделать при запросе у пользователя имени,чтобы он мог ввести не более 10 символов в textbox?

есть textbox в него вводится имя нужно сделать несколько условий :

102
Ошибка через 25 минут

Ошибка через 25 минут

Не могу понять в чем проблемаЧерез 25 минут, если ПО в бездействии выбрасывает следующую ошибку в методе get()

87