自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

51CTO專家專欄 李洋談Android安全框架

原創(chuàng)
移動(dòng)開發(fā) Android
【編者按】移動(dòng)開發(fā)正在成為軟件領(lǐng)域的發(fā)展趨勢(shì),51CTO非常榮幸邀請(qǐng)到從事計(jì)算機(jī)網(wǎng)絡(luò)信息安全研發(fā)工作10多年的安全專家李洋為51CTO移動(dòng)開發(fā)頻道開設(shè)的專家專欄,在未來一段時(shí)間李洋老師這個(gè)專欄里將向我們介紹“Android安全框架”、“Android系統(tǒng)及應(yīng)用程序授權(quán)機(jī)制”等內(nèi)容,希望讀者喜歡。

【51CTO獨(dú)家特稿】本文李洋老師將向我們介紹“Android安全框架概覽”:Android安全結(jié)構(gòu)的中心思想為“應(yīng)用程序在默認(rèn)的情況下不可以執(zhí)行任何對(duì)其他應(yīng)用程序,系統(tǒng)或者用戶帶來負(fù)面影響的操作。”開發(fā)者只有了解到Android的安全架構(gòu)才能設(shè)計(jì)出在使用過程中更加流暢的用戶體驗(yàn)。

1. Android具有哪些權(quán)限

根據(jù)用戶的使用過程體驗(yàn),可以將Android涉及的權(quán)限大致分為如下三類:

(1)Android手機(jī)所有者權(quán)限:自用戶購買Android手機(jī)(如Samsung GT-i9000)后,用戶不需要輸入任何密碼,就具有安裝一般應(yīng)用軟件、使用應(yīng)用程序等的權(quán)限;

(2)Android root權(quán)限:該權(quán)限為Android系統(tǒng)的***權(quán)限,可以對(duì)所有系統(tǒng)中文件、數(shù)據(jù)進(jìn)行任意操作。出廠時(shí)默認(rèn)沒有該權(quán)限,需要使用z4Root等軟件進(jìn)行獲取,然而,并不鼓勵(lì)進(jìn)行此操作,因?yàn)榭赡苡纱耸褂脩羰ナ謾C(jī)原廠保修的權(quán)益。同樣,如果將Android手機(jī)進(jìn)行root權(quán)限提升,則此后用戶不需要輸入任何密碼,都將能以Android root權(quán)限來使用手機(jī)。

(3)Android應(yīng)用程序權(quán)限:Android提供了豐富的SDK(Software development kit),開發(fā)人員可以根據(jù)其開發(fā)Android中的應(yīng)用程序。而應(yīng)用程序?qū)ndroid系統(tǒng)資源的訪問需要有相應(yīng)的訪問權(quán)限,這個(gè)權(quán)限就稱為Android應(yīng)用程序權(quán)限,它在應(yīng)用程序設(shè)計(jì)時(shí)設(shè)定,在Android系統(tǒng)中初次安裝時(shí)即生效。值得注意的是:如果應(yīng)用程序設(shè)計(jì)的權(quán)限大于Android手機(jī)所有者權(quán)限,則該應(yīng)用程序無法運(yùn)行。如:沒有獲取Android root權(quán)限的手機(jī)無法運(yùn)行Root Explorer,因?yàn)檫\(yùn)行該應(yīng)用程序需要Android root權(quán)限。

2. Android的組件模型(Component Model)

Android系統(tǒng)中包括4種組件

(1)Activity:Activity就是一個(gè)界面,這個(gè)界面里面可以放置各種控件。比如:Task Manager的界面、Root Explorer的界面等;

(2)Service:服務(wù)是運(yùn)行在后臺(tái)的功能模塊。如文件下載、音樂播放程序等;

(3)Content Provider:它是Android平臺(tái)應(yīng)用程序間數(shù)據(jù)共享的一種標(biāo)準(zhǔn)接口,它以類似于URI(Universal Resources Identification)的方式來表示數(shù)據(jù),如:content://contacts/people/1101;

(4)Broadcast Receiver:與此組件相關(guān)的概念是Intent,Intent是一個(gè)對(duì)動(dòng)作和行為的抽象描述,負(fù)責(zé)組件之間程序之間進(jìn)行消息傳遞。而Broadcast Receiver組件則提供了一種把Intent作為一個(gè)消息廣播出去,由所有對(duì)其感興趣的程序?qū)ζ渥鞒龇磻?yīng)的機(jī)制。舉個(gè)簡單的例子,:為了實(shí)現(xiàn)一個(gè)系統(tǒng)啟動(dòng)后播放音樂的功能,則可以定義Intent為android.intent.action.BOOT_COMPLETED,由Broadcast Receiver組件將其進(jìn)行廣播,而系統(tǒng)中的Media Player接收到該信息后則進(jìn)行播放。

如上所述,4個(gè)組件之間的關(guān)系如下圖:

4個(gè)組件之間的關(guān)系如下圖

3. Android安全訪問設(shè)置

每個(gè)Android的apk(Android Package)包里面都包含有一個(gè)AndroidMainifest.xml文件,該文件除了羅列應(yīng)用程序運(yùn)行時(shí)庫、運(yùn)行依賴關(guān)系等之外,還會(huì)詳細(xì)地羅列出該應(yīng)用程序所需的系統(tǒng)訪問。該文件的基本格式如下:

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android" 
  3.      package="cn.com.fetion.android" 
  4.      android:versionCode="1" 
  5.      android:versionName="1.0.0"> 
  6.    <application android:icon="@drawable/icon" android:label="@string/app_name"> 
  7.        <activity android:name=".welcomActivity" 
  8.                   android:label="@string/app_name"> 
  9.             <intent-filter> 
  10.                 <action android:name="android.intent.action.MAIN" /> 
  11.                 <category android:name="android.intent.category.LAUNCHER" /> 
  12.             </intent-filter> 
  13.         </activity> 
  14.    </application> 
  15.   <uses-permission android:name="android.permission.SEND_SMS"></uses-permission> 
  16. </manifest> 

如上述文件描述中斜體部分,該文件的作用是說明該軟件具備發(fā)送短信的功能。Android定義了106種permission,可供開發(fā)人員使用,具體詳見網(wǎng)址:http://developers.androidcn.com/reference/android/Manifest.permission.html。

李洋李洋博士畢業(yè)于中科院計(jì)算所。10多年來一直從事計(jì)算機(jī)網(wǎng)絡(luò)信息安全研發(fā)工作,曾主持和參與多項(xiàng)國家重點(diǎn)項(xiàng)目以及信息安全系統(tǒng)和企業(yè)信息安全系統(tǒng)的研發(fā)工作。具有Linux系統(tǒng)應(yīng)用、管理、安全及內(nèi)核的研發(fā)經(jīng)驗(yàn),擅長網(wǎng)絡(luò)安全技術(shù)、協(xié)議分析、Linux系統(tǒng)安全技術(shù)、Linux系統(tǒng)及網(wǎng)絡(luò)管理、Linux內(nèi)核開發(fā)等。

【51CTO.com獨(dú)家特稿,非經(jīng)授權(quán)謝絕轉(zhuǎn)載!合作媒體轉(zhuǎn)載請(qǐng)注明原文出處!如果您想與李洋老師探討Android安全架構(gòu)等話題,或者向51CTO移動(dòng)開發(fā)頻道投稿請(qǐng)發(fā)郵件至zhousn#51CTO.com(將“#”換成“@”)】

責(zé)任編輯:佚名 來源: 51CTO
相關(guān)推薦

2011-09-06 13:56:43

李洋iOS安全機(jī)制

2011-08-12 09:06:48

Android系統(tǒng)應(yīng)用程序

2011-08-29 13:52:15

李洋Android應(yīng)用

2011-08-22 08:53:17

Android啟動(dòng)過程李洋

2011-11-03 09:24:57

李洋簽名

2011-09-15 08:58:41

Android短信丟失技術(shù)原因

2012-07-16 10:21:48

Android進(jìn)程線程

2010-08-26 08:57:04

AndroidAndroid開發(fā)

2012-07-23 13:22:42

Intent Filt安全Android

2011-09-22 09:51:41

2010-01-19 11:21:20

51CTO駐站專家

2012-08-27 09:52:48

Android沙箱模型

2016-08-23 18:15:26

2012-07-04 09:07:40

2012-02-02 15:56:48

Android 4.0Launcher源碼分析

2012-02-13 12:47:41

Android 4.0Launcher源碼分析

2012-01-11 16:02:56

Android 4.0Launcher源碼分析

2012-06-05 10:09:45

AndroidManiAndroidMani

2016-06-12 13:48:33

51CTO

2011-09-08 13:50:51

51cto 51CTO
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)