19-03 Adaptive AUTOSAR 架構(gòu)概述(14)-身份及訪問管理(IAM)

日益增長的信息安全需求驅(qū)動(dòng)了身份和訪問管理(IAM)的概念,因?yàn)锳UTOSAR Adaptive平臺(tái)需要和應(yīng)用程序建立健壯和良好定義的信任關(guān)系盛霎。IAM為Adaptive應(yīng)用程序引入了特權(quán)分離,并針對(duì)攻擊時(shí)的特權(quán)升級(jí)提供了保護(hù)晨抡。另外么库,在部署期間,IAM能夠使集成者提前驗(yàn)證Adaptive應(yīng)用程序要求的資源訪問赖晶。IAM為來自服務(wù)接口,Adaptive平臺(tái)基礎(chǔ)功能簇和相關(guān)模型資源的應(yīng)用程序的請求提供了訪問控制的框架。

14.1 術(shù)語

為了理解框架如何工作的遏插,必須提前定義一些重要的概念捂贿。也可以參考 RFC3189中的“Terminology for Policy-Based Management”?(https://tools.ietf.org/html/rfc3198).

*Access Control Decision: 這個(gè)值是布爾值來表明操作請求是否被允許。它是基于調(diào)用者的身份和訪問控制策略胳嘲。

*Access Control Policy: 為了訪問特定的對(duì)象(比如服務(wù)接口)厂僧,這個(gè)值是用來定義必須滿足的約束。

*Policy Decision Point(PDP): PDP做訪問控制決定了牛。它通過檢查訪問控制策略決定了應(yīng)用程序是否被允許執(zhí)行請求的任務(wù)颜屠。

*Policy Enforcement Point(PEP): PEP會(huì)通過從PDP請求訪問控制策略來打斷來自應(yīng)用程序請求的控制流程。

*Capability: capability是Adaptive應(yīng)用程序身份的一個(gè)屬性鹰祸。對(duì)AUTOSAR資源(例如甫窟,服務(wù)接口)的訪問僅在請求AA擁有該特定資源必須具備的所有功能的情況下才被授予。capability在應(yīng)用程序的manifest中分配蛙婴。

*Grant: 在Adaptive應(yīng)用程序部署期間粗井,設(shè)計(jì)階段要求的每項(xiàng)能力都應(yīng)得到確認(rèn)。Grant元素在元模型中可用街图。授權(quán)將支持集成商審查功能浇衬,但不允許接受部分功能。

*Intermediate Identifier (IntID):?一種標(biāo)識(shí)符台夺,它支持標(biāo)識(shí)正在運(yùn)行的posix進(jìn)程并將其映射到已建模的AUTOSAR進(jìn)程径玖。

*Adaptive Application Identity (AAID): Adaptive應(yīng)用程序的建模標(biāo)識(shí)由AUTOSAR進(jìn)程標(biāo)識(shí)

*Adaptive Application Identifier:?一個(gè)指向AAID的引用程序,即AUTOSAR進(jìn)程颤介,僅指向一個(gè)AAID。

14.2?IAM框架的范圍和重點(diǎn)

IAM框架為Adaptive AUTOSAR 棧和Adaptive 應(yīng)用程序提供了一種機(jī)制赞赖,這種機(jī)制建模每個(gè)應(yīng)用程序功能滚朵,根據(jù)訪問請求提供訪問控制決定并執(zhí)行控制訪問。IAM側(cè)重于提供方法來限制Adaptive應(yīng)用程序?qū)daptive平臺(tái)基礎(chǔ)的接口前域、服務(wù)接口和與功能集群相關(guān)的定義良好的資源(例如KeySlots)的訪問辕近。特別地,對(duì)系統(tǒng)資源(如CPU或RAM)的強(qiáng)制配額不包括在IAM中匿垄。

在允許期間移宅,IAM的進(jìn)程對(duì)Adptive應(yīng)用程序是透明的,除非請求被拒絕并發(fā)出通知椿疗。

遠(yuǎn)程Adaptive 平臺(tái)提供的服務(wù)實(shí)例請求由IAM覆蓋的漏峰。傳入請求的PDPs必須由Adaptive應(yīng)用程序?qū)崿F(xiàn)。

這個(gè)框架可以在運(yùn)行期間執(zhí)行對(duì)AUTOSAR資源的訪問控制届榄。假設(shè)Adaptive 應(yīng)用程序?qū)⒃趩?dòng)時(shí)進(jìn)行身份驗(yàn)證浅乔,并且現(xiàn)有的受保護(hù)的運(yùn)行時(shí)環(huán)境確保Adaptive 應(yīng)用程序被正確隔離,并且防止它們的特權(quán)升級(jí)(例如旁路訪問控制)。

14.3 AUTOSAR規(guī)范的內(nèi)容

下面表格說明了IAM框架的哪一部分是由AUTOSAR定義的靖苇,哪一部分是由開發(fā)人員實(shí)現(xiàn)決定的席噩。

描述:IAM需求規(guī)范;? ?隸屬于:AUTOSAR規(guī)范贤壁;包含在RS_IdentityAndAccessManagement中

描述:IAM框架的行為描述(跟接口相關(guān))悼枢;隸屬于:AUTOSAR規(guī)范;包含在SWS_IdentityAndAccessManagement中

描述:在Adaptive平臺(tái)上實(shí)現(xiàn)AA PDP和PEP 之間通信的API脾拆;隸屬于:AUTOSAR規(guī)范馒索;包含在SWS_IdentityAndAccessManagement中

描述:在Adaptive平臺(tái)上實(shí)現(xiàn)功能簇 PDP和PEP 之間通信的API;AUTOSAR沒有說明假丧;

描述:應(yīng)用程序功能和訪問控制策略(Manifest 文件信息)双揪;隸屬于:AUTOSAR規(guī)范;包含在TPS_Manifest_Specification中

描述:認(rèn)證失敗應(yīng)用程序收到的警告和錯(cuò)誤信息的格式和內(nèi)容包帚;隸屬于:AUTOSAR規(guī)范渔期;包含在SWS_IdentityAndAccessManagement中

描述:活動(dòng)日志記錄的API;隸屬于:AUTOSAR規(guī)范渴邦;還沒決定

描述:日志信息的內(nèi)容疯趟;隸屬于:AUTOSAR規(guī)范;還沒決定

描述:Adaptive 應(yīng)用程序和功能簇之間的接口谋梭;AUTOSAR沒有說明信峻;

描述:Adaptive應(yīng)用程序在運(yùn)行期間的標(biāo)識(shí);AUTOSAR沒有說明瓮床;

14.4 IAM 框架的架構(gòu)

14.4.1.1 通用架構(gòu)

IAM架構(gòu)夾認(rèn)證實(shí)體按照邏輯劃分為兩個(gè)盹舞。一個(gè)實(shí)體來決定Adaptive 應(yīng)用程序是否被允許訪問資源(PDP),一個(gè)實(shí)體來執(zhí)行訪問控制決定(PEP)隘庄。需要限制對(duì)其應(yīng)用程序接口的訪問的功能集群需要實(shí)現(xiàn)PEP來執(zhí)行由PDP提供的訪問控制決定踢步。由于這個(gè)原因,如果Adaptive應(yīng)用程序請求訪問這樣的接口丑掺,PEP要和PDP通信获印。基于請求和應(yīng)用程序功能街州,訪問控制決定發(fā)回送給PEP兼丰。訪問控制決定的必要信息是基于在Adaptive應(yīng)用程序的應(yīng)用清單中的功能的。這個(gè)應(yīng)用清單初始化請求和策略唆缴。策略表示應(yīng)用于接口的規(guī)則鳍征。例如,Adaptive應(yīng)用程序?yàn)榱耸占L問必須完成的準(zhǔn)備工作琐谤。對(duì)于訪問控制下的每個(gè)資源蟆技,策略都在功能集群的規(guī)范中定義。

準(zhǔn)備工作和假設(shè)

*應(yīng)用程序被設(shè)計(jì)/配置為具有功能(允許它們訪問某些資源的屬性)。

*每一個(gè)功能都將在部署期間得到確認(rèn)质礼。

*部署的應(yīng)用程序?qū)⑦M(jìn)行加密簽名旺聚,以使真實(shí)性驗(yàn)證成為可能。

*應(yīng)用程序與包含功能的應(yīng)用程序清單一起部署眶蕉。

*受IAM約束的Adaptive應(yīng)用程序必須按順序認(rèn)證啟動(dòng)砰粹,其清單必須在部署期間進(jìn)行身份驗(yàn)證。PEP解釋請求并要求PDP做出策略決策(可能在同一個(gè)進(jìn)程中實(shí)現(xiàn)).

14.4.1.2 Adaptive 應(yīng)用程序的識(shí)別

為了從PDP請求策略決定造挽,PEP不得不決定調(diào)用Adaptive應(yīng)用程序的身份碱璃。因?yàn)槊總€(gè)調(diào)用都是通過進(jìn)程間通信進(jìn)行中介的,所以中間件也必須支持這個(gè)標(biāo)識(shí)饭入。

標(biāo)識(shí)本身是對(duì)已建模的AA的引用嵌器。功能綁定到portprototype,因此也綁定到SWComponentType(參見清單規(guī)范)谐丢。

IAM框架沒有完全指定AAs的標(biāo)識(shí)爽航。最合適的解決方案在很大程度上取決于堆棧供應(yīng)商選擇的操作系統(tǒng)和平臺(tái)。許多現(xiàn)代操作系統(tǒng)確實(shí)支持通信端點(diǎn)上對(duì)等點(diǎn)的標(biāo)識(shí)(參見Linux中的SO_PEERCRED乾忱、getpeerid()或QNX中的消息傳遞)讥珍。在不支持這個(gè)機(jī)制的平臺(tái)上,在消息級(jí)實(shí)現(xiàn)協(xié)議可能是合適的窄瘟。

由于EM創(chuàng)建通過建模的AUTOSAR進(jìn)程創(chuàng)建Adaptive應(yīng)用程序的允許實(shí)例衷佃,它負(fù)責(zé)跟蹤正在運(yùn)行的進(jìn)程的屬性(即運(yùn)行Adaptive應(yīng)用程序的PID)或分配屬性如設(shè)置專用的UID,或負(fù)責(zé)為消息級(jí)實(shí)現(xiàn)分配key或uuid蹄葱。EM應(yīng)使PEP能夠?yàn)閷?duì)PEP的每個(gè)有效請求找到建模的Adaptive應(yīng)用程序氏义。

PEP應(yīng)該在Adaptive Foundation中實(shí)現(xiàn),并且應(yīng)該與調(diào)用Adaptive應(yīng)用程序適當(dāng)隔離图云。Adaptive應(yīng)用程序不應(yīng)提供PDP觅赊,因?yàn)槠浔旧硎苷埱蟛僮鞯脑L問控制。

14.4.1.3 IAM序列

1.? Adaptive?應(yīng)用程序(AA)發(fā)起對(duì)資源的請求(比如服務(wù)接口)

2. PEP打斷控制流

3.?PEP通過EM解析請求進(jìn)程的標(biāo)識(shí)琼稻。

4.?PEP將調(diào)用者的標(biāo)識(shí)和請求參數(shù)傳遞給PDP。

5.?PDP檢查AA的功能是否足夠饶囚,并將訪問控制決策返回給PEP帕翻。

6.?PEP通過阻止或允許請求來執(zhí)行訪問控制決策。

傳輸庫與EM用來識(shí)別AAs的機(jī)制是一致的萝风。舉個(gè)例子:通過使用POSIX-Process-IDs嘀掸,EM在調(diào)用fork()期間追蹤從操作系統(tǒng)檢索的PID。EM通過一個(gè)受保護(hù)的功能簇接口提供這個(gè)消息給PEPs规惰。在使用UID時(shí)睬塌,EM應(yīng)該主動(dòng)地設(shè)置新的POSIX進(jìn)程的UID。

14.4.1.4 策略決定點(diǎn)的實(shí)現(xiàn)

策略決策點(diǎn)為二進(jìn)制策略決策處理的清單提供接口。這些決策基于定義良好的Adaptive應(yīng)用程序的功能及其應(yīng)用程序清單揩晴。

功能由單個(gè)功能集群特定語義的portprototype建模勋陪。因此PDP不得不為這些功能提供特定的接口。IAM框架不推薦也不支持通過功能來處理功能集群的單個(gè)方法硫兰。相反诅愚,能力是以資源為中心的。PDP通過檢查對(duì)所請求資源的AAs引用來提供策略決策劫映。

Crypto API提供了一個(gè)功能示例违孝。通過給KeyOwner分配一個(gè)參考特定建模密鑰的功能,可以允許對(duì)key進(jìn)行修改操作泳赋。

在受信任的Adaptive應(yīng)用程序?qū)崿F(xiàn)PDP的應(yīng)用程序場景是可能的雌桑,并且在SWS_IdentityAndAccessManagement中說明。關(guān)于這個(gè)場景的用例信息在AP18-10提供祖今。

14.5 平臺(tái)之間的通信

由于應(yīng)用程序時(shí)分布在不同的ECU或虛擬機(jī)上校坑,所以我們必須處理跨平臺(tái)的身份和訪問管理。下面的圖片舉了一個(gè)例子衅鹿。

如上面右手邊描述的撒踪,平臺(tái)實(shí)例A實(shí)現(xiàn)了一個(gè)PEP去檢查應(yīng)用程序A的訪問權(quán)限。在這我們假定PDP是在OEM特定的Adaptive應(yīng)用程序中實(shí)現(xiàn)的大渤。在左邊的平臺(tái)實(shí)例B中制妄,我們希望實(shí)現(xiàn)第二個(gè)PEP,它也連接到OEM特定的PDP泵三。第二個(gè)PEP是非常必要的以防在A被破壞并且不再可靠地執(zhí)行策略時(shí)耕捞。然后,第二個(gè)PEP檢查是否至少允許A的一個(gè)應(yīng)用程序訪問B上的Adaptive應(yīng)用程序Y烫幕。然后俺抽,第二個(gè)PEP檢查是否至少允許A的一個(gè)應(yīng)用程序訪問B上的自適應(yīng)應(yīng)用程序Y。

一個(gè)實(shí)例的所有功能集需要與其他實(shí)例同步较曼,以便第二個(gè)PEP能夠提供正確的實(shí)施磷斧。由于Adaptive平臺(tái)沒有標(biāo)準(zhǔn)的交換格式,所以我們建議使用OEM特定的格式來描述功能捷犹。這允許OEM定義自己的同步協(xié)議弛饭,即使是非autosar平臺(tái)。

14.6 IAM的實(shí)現(xiàn)和使用

下面列表說明了對(duì)FC實(shí)現(xiàn)這或系統(tǒng)設(shè)計(jì)這使用IAM必要的步驟萍歉。更多的信息可見AUTOSAR_EXP_FCDesignIdentityAndAccessManagement.pdf侣颂。請注意上面文檔描述的信息來自AUTOSAR 論證者,僅可被視為實(shí)現(xiàn)建議或例子枪孩。

準(zhǔn)備步驟(在設(shè)計(jì)的時(shí)候):

*?應(yīng)用程序被設(shè)計(jì)/配置為具有功能(允許它們訪問某些資源的屬性)憔晒,并且只能看到特定的服務(wù)接口藻肄。

*部署的應(yīng)用程序?qū)⑦M(jìn)行加密簽名,以使真實(shí)性驗(yàn)證成為可能拒担。

*應(yīng)用程序和包含功能的執(zhí)行清單一起部署

*執(zhí)行清單還包含諸如應(yīng)用程序ID嘹屯,有多少應(yīng)用程序?qū)嵗约斑@些應(yīng)用程序?qū)嵗齀D之類的信息。

*FC實(shí)現(xiàn)PEP的實(shí)施邏輯澎蛛。

*FC和策略一起部署抚垄。這些策略描述了那些功能需要訪問提供的服務(wù)接口。

使用知道(運(yùn)行期間)

*在Adaptive平臺(tái)啟動(dòng)期間谋逻,OEM會(huì)提供一個(gè)應(yīng)用程序(實(shí)例)IDs和進(jìn)程IDs 之間的查找表

*當(dāng)Adaptive應(yīng)用程序請求訪問配置了訪問控制的服務(wù)時(shí)呆馁,需要對(duì)其進(jìn)行身份驗(yàn)證,以使引用其功能成為可能

*PEP 將查詢實(shí)現(xiàn)PDP進(jìn)程的請求(可以是同一個(gè)進(jìn)程)

*然后毁兆,PDP檢查應(yīng)用程序ID及其相應(yīng)的功能浙滤,并將其與FC的存儲(chǔ)策略進(jìn)行比較

*PDP發(fā)送訪問控制請求(yes/no)回答PEP

*PEP實(shí)施訪問控制請求(基于這個(gè)決定授權(quán)訪問)

總結(jié)上述步驟,至少應(yīng)考慮以下幾點(diǎn):

FC實(shí)現(xiàn)者需要:

*提供下面放在服務(wù)清單中的規(guī)則

? ? ? ? ? ? 1. 訪問某些服務(wù)需要哪些功能(單個(gè)或多個(gè)功能的組合)

*訪問實(shí)現(xiàn)PDP進(jìn)程的邏輯實(shí)現(xiàn)

*實(shí)施收到的訪問控制決定的邏輯實(shí)現(xiàn)

應(yīng)用程序開發(fā)者需要:

*配置允許訪問服務(wù)的功能气堕。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末纺腊,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子茎芭,更是在濱河造成了極大的恐慌揖膜,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,430評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件梅桩,死亡現(xiàn)場離奇詭異壹粟,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)宿百,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,406評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門趁仙,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人垦页,你說我怎么就攤上這事雀费。” “怎么了痊焊?”我有些...
    開封第一講書人閱讀 167,834評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵盏袄,是天一觀的道長。 經(jīng)常有香客問我薄啥,道長貌矿,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,543評(píng)論 1 296
  • 正文 為了忘掉前任罪佳,我火速辦了婚禮,結(jié)果婚禮上黑低,老公的妹妹穿的比我還像新娘赘艳。我一直安慰自己酌毡,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,547評(píng)論 6 397
  • 文/花漫 我一把揭開白布蕾管。 她就那樣靜靜地躺著枷踏,像睡著了一般。 火紅的嫁衣襯著肌膚如雪掰曾。 梳的紋絲不亂的頭發(fā)上旭蠕,一...
    開封第一講書人閱讀 52,196評(píng)論 1 308
  • 那天,我揣著相機(jī)與錄音旷坦,去河邊找鬼掏熬。 笑死,一個(gè)胖子當(dāng)著我的面吹牛秒梅,可吹牛的內(nèi)容都是我干的旗芬。 我是一名探鬼主播,決...
    沈念sama閱讀 40,776評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼捆蜀,長吁一口氣:“原來是場噩夢啊……” “哼疮丛!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起辆它,我...
    開封第一講書人閱讀 39,671評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤誊薄,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后锰茉,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體呢蔫,經(jīng)...
    沈念sama閱讀 46,221評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,303評(píng)論 3 340
  • 正文 我和宋清朗相戀三年洞辣,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了咐刨。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,444評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡扬霜,死狀恐怖定鸟,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情著瓶,我是刑警寧澤联予,帶...
    沈念sama閱讀 36,134評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站材原,受9級(jí)特大地震影響沸久,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜余蟹,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,810評(píng)論 3 333
  • 文/蒙蒙 一卷胯、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧威酒,春花似錦窑睁、人聲如沸挺峡。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,285評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽橱赠。三九已至,卻和暖如春箫津,著一層夾襖步出監(jiān)牢的瞬間狭姨,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,399評(píng)論 1 272
  • 我被黑心中介騙來泰國打工苏遥, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留饼拍,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,837評(píng)論 3 376
  • 正文 我出身青樓暖眼,卻偏偏與公主長得像惕耕,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子诫肠,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,455評(píng)論 2 359