Приложение, над которым я работаю, требует возможности редактировать определенные защищенные файлы в Linux, OSX и Windows [Vista]. Как правило, когда приложению необходимо сделать что-то с повышенными привилегиями, появляется диалоговое окно запроса пароля, в котором пользователю предлагается подтвердить, что он хочет разрешить приложению выполнять эти операции в качестве администратора.
Я считаю, что в целом Windows Vista использует файлы манифеста, OSX имеет библиотеку авторизации (https://developer.apple.com/mac/library/documentation/Security/Reference/authorization_ref/Reference/reference.html), а в Linux есть множество интерфейсов sudo.
Есть ли общеприемлемый кросс-платформенный способ справиться с этим? Я не хочу, чтобы мое приложение запускалось от имени пользователя root, но я хочу, чтобы оно могло открывать защищенный файл для операций чтения/записи, а затем возвращаться в обычный пользовательский режим.