2.訪問控制
AppFabrie訪問控制如圖4-22所示。

一個依賴于訪問控制的應用通常既可以運行在本地平臺上,也可以運行在云平臺上。首先用戶打算通過瀏覽器訪問應用(圖4-22中步驟1)。如果應用接受Idp令牌(Token),那么將重新定位瀏覽器到這個Idp(Identity Providers)。用戶使用Idp來進行授權,比如通過輸入用戶名和密碼的方式來進行授權,Idp返回的令牌包含申明信息(步驟2)。接下來用戶瀏覽器發送Idp Token到訪問控制中去(步驟3),訪問控制驗證接受到得Idp Token,然后根據事先定義好的應用規則來創建一個新的Token(步驟4)。訪問控制包含了一個規則引擎,允許每個應用管理員定義不同的Idp Token轉換到AC(Access Contro)Token方式。比如不同的Idps有不同的定義用戶名的方式,訪問控制規則可以將這些不同格式的用戶名轉換成相同格式的用戶名字符串。然后,訪問控制將AC Token返回到瀏覽器(步驟5),再由瀏覽器將這個新的Token發送給應用(步驟6)。一旦應用獲得了AC Token,可以驗證這個Token并使用其中所包含的聲明(步驟7)。
應用接受來自多個Idps發出的身份和常見聲明的Token,而不是處理包含不同聲明的各種Token,這樣就不需要配置應用來使得不同的Idps可信,這些信任關系可以由訪問控制維持。
圖4-22中,訪問控制是為一些Idps(包括AD FS 2.0、Windows Live ID、Google、Yahoo、Facebook等)提供支撐服務器租用的,它同樣可以對支持OpenID有效。瀏覽器和其他客戶端可以通過0Auth 2或WS-Trust請求AC Token,AC Token通常有不同的格式,包括SAML 1.1、SAML 2.0和SWT(Simple Web Token)。為了創建應用,Windows開發者使用WIF(Windows Identity Foundation)接受AC Token。 |
在每個分布式應用中,身份都是非常重要的。用戶創建的安全應用都是來自于不同提供者的身份,訪問控制的目標是為了使創建過程變得簡單。通過將訪問控制這個服務放到云中,微軟可以保證任何平臺上的應用都可以使用它。