Шифрование web.config использование Защищенной бессмысленной Конфигурации?

Причина в том, что declval генерирует временный объект, поэтому, если у вашего кода есть другая перегрузка, такая как

ostream& operator<<(ostream&& out, const Foo& foo) noexcept { return out << foo.value; }

, он будет работать. Обратите внимание, что перегруженная функция принимает ссылку на rvalue. Я проверил это с gcc 4.8.5 и -std=c++11.

5
задан Ryan Sampson 25 March 2009 в 17:48
поделиться

1 ответ

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

  • Скопируйте aspx страницу, содержащую код дешифрования к серверу, и перейдите к нему
  • Войдите в систему на сервере и запустите приложение для дешифрования его.

Но это защищает от дешифрования неавторизованным пользователем, у которого есть доступ для чтения к файловой системе или резервному копированию файловой системы.

Обычно Вы настроили бы свои рабочие серверы так, чтобы только авторизованный adminstrators мог войти в систему сервера или записать в свою файловую систему.

Разработчики могли бы иметь удаленный доступ для чтения в целях поддержки и не смогут дешифровать файл конфигурации удаленно.

Шифрование/дешифрование легко со стандартными библиотеками: твердая часть гарантирует, чтобы только у авторизованных людей был доступ к ключам.

При использовании DPAPI Вы по существу делегируете управление ключами к безопасности Windows. При использовании другого поставщика, такого как RSA необходимо сохранить ключ где-нибудь и защитить его от несанкционированного доступа, например, использования ACL.

6
ответ дан 14 December 2019 в 13:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: