我正在开发的应用程序需要能够跨 Linux、OSX 和 Windows [Vista] 编辑某些受保护的文件。通常,当应用程序需要以提升的权限执行某些操作时,会出现一个密码请求对话框,要求用户验证他们是否希望允许应用程序以管理员身份执行这些操作。
我相信一般来说,Windows Vista 使用 Manifest 文件,OSX 有授权库(https://developer.apple.com/mac/library/documentation/Security/Reference/authorization_ref/Reference/reference.html),Linux 有一个各种 sudo 前端。
是否有一种普遍可接受的跨平台处理方式?我不希望我的应用程序必须以 root 用户身份运行,但我确实希望它能够打开受保护的文件以进行读/写操作,然后恢复到正常用户模式。