В Linux есть приложение KDE Wallet (и GNOME Wallet), которое хранит пароли и другие конфиденциальные данные. Эти кошельки по умолчанию предотвращают случайный доступ к данным приложения, отличного от того, в котором хранятся данные.
например. если часть данных была сохранена /bin/app1
, то /bin/app2
не будет иметь полного доступа к этим данным, и кошелек сначала спросит пользователя, действительно ли он хочет /bin/app2
получить доступ к данным, сохраненным /bin/app1
.
Я считаю эту функцию важной для некоторых аспектов локальной безопасности данных для приложения, в котором я участвую.
В Windows несколько аналогичный UX предоставляется wincred.h
, но, насколько я понимаю, в нем нет никаких ограничений для приложений. Он предоставит доступ к данным любому приложению, запущенному текущим пользователем, и, следовательно, обеспечит меньшую безопасность, чем используемые по умолчанию приложения в кошельках Linux.
Есть ли какой-нибудь способ добиться аналогичной защиты приложений (или поставщика) в Windows, используя только стандартные API?