安全linux环境:理解文件和权限(三)-Special Permissions

rwx是三种很常见的权限,但是还有另一种权限,叫附加权限,以s或S,或t/T表示。包括SET位权限(suid, sgid)和粘滞位权限(sticky)。

SET位权限,s会占用原本x所占用的位置,因此,你会见到rws和rwS两种,分别表示有x权限和无x权限。

sticky位权限,t会占用原本x所占用的位置,因此,你会见到rwt和rwT两种,分别表示有x权限和无x权限。

下面看看怎样修改或增加附加权限。

chmod u+s fileuid.txt

或者

chmod 4655 fileuid.txt

前面的4就表示set位suid,表示其他用户执行文件时,具有与所有者同样的权限,如果是2,就是sgid。

umask 可以控制创建权限时的默认权限。输入umask可以查看现在的默认权限。其中各数字表示:

0=read, write, and execute, 1=read and write, 2=read and execute, 3=read only, 4=write and execute, 5=write only, 6=execute only, 7=no permissions.

修改默认权限:将权限修改为0037

umask 037

如果想将这个设置永久化,就需要写进bashrc里.

 

作者czy1121,源码settingscompat,特殊权限(Special Permissions)兼容库,悬浮窗权限(SYSTEM_ALERT_WINDOW)与系统设置修改权限(WRITE_SETTINGS) Android 6.0 以前只要在 manifest 中申请了权限就是默认开启的 Android 6.0+需要在 manifest 中申请并且通过发送 Intent 让用户在设置界面进行勾选 适配 检测 API 23+(Android 6.0+/M) 使用 Settings.canDrawOverlays, Settings.System.canWrite API 18+(Android 4.3+/JellyBean MR2) 通过反射使用 AppOpsManager.checkOp API < 18 默认权限开启,时始终返回 true 授权 API 23+(Android 6.0+/M) 去系统设置面板就好 new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION), new Intent(Settings.ACTION_MANAGE_WRITE_SETTINGS) API 18+(Android 4.3+/JellyBean MR2) 默认权限开启 API < 18 默认权限开启,不做任何处理 切换授权状态 AppOpsManager.setMode 可用于Android 4.3/4.4修改授权状态 API 18 添加 AppOpsManager(被隐藏,在 Android 4.4 公开) API 21 后需要签名验证的权限android.Manifest.permission.UPDATE_APP_OPS_STATS,第方应用用不了了。 ROM 有些 Rom 会默认禁用权限,通常都有自带的权限管理 API 18+ 有些 Rom 会默认禁用权限,通常都有自带的权限管理,这时就需要检测 Rom 类型然后跳转到对应的设置页面 API 23+ 本来去系统设置面板就好了,但有些 Rom 会用自带的权限管理替代系统设置面板,这时仍然需要检测 Rom 类型然后跳转到对应的设置页面 实际上是跳转到手机上的安全中心里对应的权限设置页,当安全中心版本不同时相应的权限设置页也有可能不一样 还有部分 ROM 的应用详细信息页可以设置权限
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值