Polkit授权管理

 Polkit的配置:
  • 查看polkit服务:

           

一个是agent,一个是polkit服务;

  • agent包含监听接口和一个用户界面(对话窗口),允许用户输入密码。Authentication Agent API Reference是polkit提供的agent开发接口;
  • 授权规则(Authorization Rules),利用javascript实现,在/etc/polkit-1/rules.d或/usr/share/polkit-1/rules.d下,用于让应用程序添加授权规则,比如
polkit.addRule(function(action,subject)
{
if(subject.isInGroup("wheel")&&(action.id.indexOf("com.")==0))
{
    return polkit.Result.YES;
}
});

让所有的属于wheel组的用户且Action ID前缀为"com."的操作都不用输入密码。更详细的例子可以查看此目录下的规则文件。

  • 行为(Actions),在/usr/share/polkit-1/actions目录下,
org.freedesktop.consolekit.policy ——关机
org.freedesktop.NetworkManager.policy ——网络配置
org.freedesktop.policykit.policy ——决定pkexec的密码需求
org.freedesktop.udisks2.policy ——磁盘挂载
org.freedesktop.upower.policy ——挂起和休眠

文件中对每个action都有详细注解,要修改的地方主要是:

<allow_any>auth_admin</allow_any>
<allow_inactive>auth_admin</allow_inactive>
<allow_active>auth_self</allow_active>

 
设置取值有:

  
  
no不通过验证
yes通过验证(不用输入密码)
auth_self
以任意本地用户来验证
auth_admin以管理员身份来验证
auth_self_keep
同auth_self,但在一段时间内保持认证(如5分钟)
auth_admin_keep
同auth_admin,但在一段时间内保持认证(如5分钟)

如下图所示(来自StartOS设备管理器的Actions文件):


注:整理自http://blog.sina.com.cn/s/blog_6640da97010155pk.html

PolicyKit百科:http://wiki.linux.org.hk/w/PolicyKit


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值