




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、全面理解Android安全机制 (组件安全 )本片博客主要跟大家谈谈Android基本组件的安全问题。每个组件都可在AndroidManifest.xml里通过属性exported被设置为私有或公有。 私有或公有的默认设置取决于此组件是否被外部使用;例如某组件设置了intent-filter意味着该组件可以接收intent,可以吧被其他应用访问,则默认的exported属性为true(没有filter只能通过明确的类名来启动activity故相当于只有程序本身能启动),反之为false(意味着此组件只能由自身的app (同userid或root也行 )启动)。需要注意的是ContentProv
2、ider默认为true,毕竟是共享数据的组件。公有组件能被任何应用程序的任何组件所访问。这是非常有必要的,如MainActivity通常是公有的,方便应用启动;然而大多数组件需要对其加以限制,下面我们针对不同组件来讨论。Activity 安全私有组件此时Activity 只能被自身app 启动。(同 user id 或者 root 也能启动)私有Activity不能被其他应用启动相对安全。创建 Activity 时:1、不指定 taskAffinity /task 管理 Activity 。task的名字取决于根 Activity 的 affinity 。默认设置中 Activity使用包名做
3、为 affinity 。task 由 app 分配,所以一个应用的Activity在默认情况下属于相同task 。跨 task 启动 Activity 的intent 有可能被其他app 读取到。2、不指定 lanchMode / 默认 standard ,建议使用默认。创建新 task 时有可能被其他应用读取intent 的内容。3、设置 exported 属性为 false4、谨慎处理从intent中接收的数据,不管是否内部发送的intent5、敏感信息只能在应用内部操作使用Activity 时:6、开启Activity时不设置FLAG_ACTIVITY_NEW_TASK标签/FLAG_A
4、CTIVITY_NEW_TASK标签用于创建新task (被启动的Activity并未在栈中)。7、开启应用内部Activity使用显示启动的方式8、当 putExtra()包含敏感信息目的应是app9、谨慎处理返回数据,即可数据来自相同应用公开暴露的Activity组件,可以被任意应用启动内的:Activity创建Activity:1、设置exported属性为true2、谨慎处理接收的intent3、有返回数据时不应包含敏感信息使用Activity :4、不应发送敏感信息5、当收到返回数据时谨慎处理More information about Secure ActivityService安
5、全通常 Service 执行的操作比较敏感, 如更新数据库, 提供事件通知等,因此一定要确保访问 Service 的组件有一定权限(也就是给 Service 设置权限 )。在 AndroidManifest.xml 里给 Service 设置权限 (可自定义)。一般设置exported属性为false(或没有intent-filter);如果需要给别的app访问即此属性设置为true ,最好做敏感操作的时候通过checkCallingPermission()方法来提供权限检测。不要轻易把Intent传递给公有的未知名的Service;最好在所传递的Intent中提供完整类名,或者在Servic
6、eConnection的onServiceConnected(ComponentName, Ibinder)里检验Service的包名。Content Provider安全Content Provider为其他不同应用程序提供数据访问方式,需要更复杂的安全措施保护。读写权限分开。一旦应用程序来访,Content Provider需要对权限检测, 只有拥有只读 /只写权限才允许建立连接,否则抛出 SecurityException 。只读 /只写一旦实施就适用于所有数据,如果播放器只要特定音乐数据,给播放器全部访问权限,岂不是权限很大,为了细分权限粒度, 可以使用 Grant-uri-permission机制来指定一个数据集。 Content Provider 可通过属性为其内的 URI设置临时访问权限。Broadcast Receiver安全应用通常用它来监听广播消息。广播发送方通常选择给每个发送Broadcast IntentAndroid权限;接收方不但需要符
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 200MW独立储能项目规划设计方案(范文)
- 2025年5月10日二级建造师《建设工程法规及相关知识》试题(网友回忆版)
- 风险管理工具在企业合规中的作用试题及答案
- 2025年JAVA学习的动力来源试题及答案
- 2025年C语言高效学习试题及答案
- C语言中的抽象数据类型试题及答案
- 深入了解2025年计算机二级ACCESS试题及答案
- 逻辑错误辨识与试题及答案
- 2025年JAVA基础编程试题及答案
- 逻辑在法律判断中的角色试题及答案
- 餐饮企业财务流程解析
- DB37T-九小场所消防安全管理要求
- 【MOOC】兽医外科手术学-华中农业大学 中国大学慕课MOOC答案
- 数控机床装调维修工(技师)职业技能鉴定理论考试题库(含答案)
- 金蝶云星空应用开发初级认证
- 《食品添加剂》课件
- 磁悬浮发动机研发进展
- 中医医术确有专长人员医师资格考核申报资料表
- 电网的电流保护课程设计
- 【课件】第七单元能源的合理利用与开发新版教材单元分析-九年级化学人教版(2024)上册
- 2024年认证行业法律法规及认证基础知识 CCAA年度确认 试题与答案
评论
0/150
提交评论