SE for Android 系列之整體概要(二)

2021-07-28 14:37:17 字數 1170 閱讀 2065

所支援的mac服務

mac和mmac功能概述:

標準的selinux mac 策略是基於type enforcement(te,即型別強制訪問)/ multi-level security (mls,即多級別安全機制),也可以理解為是一種白名單機制;

install mmac策略中的package和signature標籤支援通過setinfo標籤,來指定應用的context(安全上下文,指執行時domain)。該策略只對預裝應用生效,而第三方的應用則無法通過這種方式指定,所有的第三方應用都只能由標籤匹配,而且seinfo的值為「default」。(譯者注,這裡會讓你看得頭暈,建議找到mac_permissions.xml檔案對著看)

seandroid install mmac策略還能能夠檢查應用所申請的許可權列表是否被允許。如果不允許,那麼該應用就不能夠安裝。另外如果這款應用已經安裝在手機上了,後來策略更新並與其產生衝突了,那麼這款應用也不能執行。配置檔案允許的動作有:allow(允許),deny(拒絕)和allow all permissions(允許所有許可權)。 檢查流程如下:

安裝或公升級第三方應用時,它的許可權列表都被會檢查。如果在裡存在任意一項不被允許的許可權,那麼該應用安裝或公升級過程就會失敗;

預裝的應用,他們的公升級過程,系統也會去做一次許可權檢查。如果在package或者signature標籤存在不允許的許可權,更公升級失敗。如果存在某個許可權,在package或者signature標籤中沒有顯式宣告為allow,而在default標籤中宣告為deny的話,公升級過程同樣會失敗;

intent mmac策略的作用是決定intent是否能夠被分發到其他幾種元件。策略會遮蔽掉所有沒有被定義為允許的intent分發。這是乙個可選的策略,並不需要定製的selinux策略支援,不過它可以對「主體」的安全上下文進行合法性校驗。

content provider mmac策略作用是決定content provider的訪問請求是否被允許。策略會遮蔽掉所有沒有被定義為允許的訪問請求。目前的版本支援use, read, read/write三種許可權。這是乙個可選的策略,並不需要定製的selinux策略支援。

revoke permissions策略的作用是決定許可權在執行過程中是否會被檢查,如果許可權被撤消了那麼許可權就會變成denied狀態(也就是說,除了指定的許可權會被變成denied,其他的許可權都是允許的)。這是乙個可選的策略,並不需要定製的selinux策略支援。

OpenStack icehouse系列之問題處理

openstack icehouse系列之問題處理 眾所周知搭建是很容易的 往往排錯是很頭疼的 下面我分享下我在搭建的過程中遇到的問題和解決辦法。glance報錯以及解決方法 執行glance同步資料庫的時候 su s bin sh c glance manage db sync glance su...

PM系列 之驗收

下面的文章與大家共同學習,有些細節是平時我們也講,但沒這麼全面,比如有文字記錄的,要謹慎,邊界不清晰的,可以談,只要是雙方合情合理的,不會過分要求的。我發現我們可能缺乏比較多的是溝通技巧,以及溝通頻率。終端使用者關懷。1 在軟體專案實施過程中注重里程碑的確定,制定階段性目標 如果要做好乙個軟體專案,...

AngularJS系列之JavaScript繼承

所有開發者定義的類都可作為基類。本地類和宿主類不能作為基類。建立的子類將繼承超類的所有屬性和方法,包括建構函式及方法的實現。子類可直接訪問這些方法。子類還可新增超類中沒有的新屬性和方法,也可以覆蓋超類的屬性和方法。建構函式使用 this 關鍵字給所有屬性和方法賦值 即採用類宣告的建構函式方式 因為建...