我已经实现了一个设备管理员应用程序,根据某些必要条件(服务器端逻辑)等来禁用摄像头。
devicePolicyManager = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);
devicePolicyAdmin = new ComponentName(this, MyDevicePolicyReceiver.class);
devicePolicyManager.setCameraDisabled(devicePolicyAdmin, true);
一切都按预期工作。然而,用户能够通过简单地在支持多用户的电话型号(例如,到访客帐户)中切换用户简档来规避限制。该帐户中的设备管理员列表也不反映该应用程序。这被公司政策视为安全漏洞。
我想知道是否:
任何其他建议也将不胜感激。
答案 0 :(得分:0)
(1)根据我的研究,无法创建对设备上的所有帐户具有管理员访问权限的设备管理员。这个帖子中的评论/答案得出了相同的结论:https://android.stackexchange.com/q/138417
(2/3)通过DPM API,看起来不可能阻止用户切换或创建新帐户或监听帐户切换。通过build.prop
fw.max_users=1
修改trevor @ bymason.com
,可以防止用户切换或创建新帐户,请参阅:https://android.stackexchange.com/a/119632
和https://www.reddit.com/r/Android/comments/323l36/android_5x_how_to_disable_guest_additional_user/
如果您因为时间/维护/安全问题而反对root设备,我建议您查看移动设备管理工具。上面的评论提到三星诺克斯,它将允许您通过MultiUserManager禁用设备上的多个用户。
您还可以使用Mason锁定设备/应用程序,方法是关闭多用户,阻止用户下拉状态栏或访问“设置”,或将应用程序锁定在自助服务终端模式。
如果这听起来对您有用,请随时与我联系:$return .= '<li '.$liClass.'><a ' . $aHrefAttr . ' href="index.php?module='.$module.'&item='.$item.'">'.$row['caption'].'</a>';
免责声明:我为Mason工作