編輯:關於Android編程
1. 什麼是SEAndroid
SEAndroid(Security-Enhanced Android)是有美國國家安全局(NSA)開發的開源安全項目,是在谷歌Android 開源軟件的基礎上開發而來,主要是將原本運用在Linux操作系統上的MAC強制存取控管套件SELinux,移植到Android平台上。通過SELinux的MAC安全機制強化Android操作系統對App的存取控管,建立基於角色的安全管控機制,確保Android 內核及上層應用程序的安全運行。
SELinux 是 2.6 版本的 Linux內核中提供的強制訪問控制(MAC)系統。對於目前可用的 Linux安全模塊來說,SELinux 是功能最全面,而且測試最充分的,它是在 20 年的 MAC 研究基礎上建立的。SELinux 在類型強制服務器中合並了多級安全性或一種可選的多類策略,並采用了基於角色的訪問控制概念。SELinux 是美國國家安全局「NSA=The National Security Agency」 和SCC(Secure Computing Corporation)開發的 Linux的一個擴張強制訪問控制安全模塊,2000年以 GNU GPL 發布。
2. SEAndroid 的核心理念及工作原理
SEAndroid的核心理念是基於角色的訪問控制(Role-based access control,RBAC)是通用的安全模型,可以通過把角色分配給用戶然後把權限分配給這些角色來簡化管理。RBAC 在 Security-Enhanced Linux (SELinux) 中用作用戶與底層類型增強(Type Enforcement,TE)模型之間的抽象層,用於提供細粒度的訪問控制,但是並不是針對簡化管理。
3. SEAndroid 源代碼下載及編譯
3.1 源代碼下載
git clone https://bitbucket.org/seandroid/manifests.git mkdir seandroid cd seandroid repo init -u https://android.googlesource.com/platform/manifest repo sync cp ../manifests/local_manifest.xml .repo repo sync3.2 源代碼編譯
為了可以在Nexus 5機器上運行,我們將編一個可以在Nexus 5上可以運行的調試版本。
編譯之前請根據http://source.android.com/source/initializing.html 的要求對本地環境進行配置。
默認為Host 為Ubuntu x64位版本。
配置完成後執行下面命令,完成對seandriod的編譯。
$cd seandroid
$. build/envsetup.sh
$lunch
選擇hammerhead_userdebug 選項,
$make [-j8]
4. SEAndriod 在Nexus 5上的燒寫及功能驗證
完成編譯後,將在seandroid/out/target/product/hammerhead/下生產可以燒寫到Nexus 5上的鏡像文件。
此時,連接Nexus 5手機,如果手機未解鎖,需先解鎖手機。
解鎖過程如下:
1. 關閉nexus 5手機,同時按下開機+Volume up+Volume Down,手機進入燒寫模式。
2. 連接手機到Ubuntu
3. 執行
$fastboot unlock
完成對手機的解鎖。
燒寫編譯好的seandroid 鏡像。
$fastboot -w flashall
燒寫完成後,nexus 5會自動重啟,進入seandroid的系統界面。
一、簡述 最近項目組打算引入weex,並選定了一個頁面進行試水。頁面很簡單,主要是獲取數據渲染頁面,並可以跳轉到指定的頁面。跟之前使用RN 相比,weex 確實要簡單很
前言MVC、MVP、MVVP相信大家已經耳熟能詳了,作為Android最出名的三個框架,它們的應用是非常的廣泛。這篇博客就來簡單介紹下其中二種框架。也加強下自己對這方面的
前言 這篇文章主要是介紹一下Android Intent,並且從Android源碼的角度對Intent查詢匹配過程進行分析。 Intent介紹 Intent的中文是&ld
今天偶遇以github上gesturelock關於手勢鎖的一個例子(有興趣的去搜索下看看),於是下載下來研究,無奈基本沒有注釋,代碼上存在一些問題(當設置gravity=