簡介
本文檔介紹如何使用Azure作為身份提供程式(idP)配置Firepower管理中心(FMC)單一登入(SSO)。
安全斷言標籤語言(SAML)是實現SSO的最常見的基礎協定。公司維護一個登入頁面,在其後面是一個身份儲存庫和各種身份驗證規則。它可以輕鬆配置任何支援SAML的Web應用,從而讓您登入到所有Web應用。它也有安全方面的好處,既不會強迫使用者為其需要訪問的每個Web應用保留(並可能重複使用)密碼,也不會將密碼暴露給這些Web應用。
必要條件
需求
思科建議您瞭解以下主題:
- 對Firepower管理中心的基本瞭解
- 對單點登入的基本瞭解
採用元件
本檔案中的資訊是根據以下軟體版本:
- 思科Firepower管理中心(FMC)版本6.7.0
- Azure - IdP
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
背景資訊
SAML術語
SAML的配置必須在兩個位置完成:在IdP和SP上。需要配置IdP,使其瞭解使用者想要登入到特定SP時向何處傳送以及如何傳送該資訊。 需要配置SP,使其知道可以信任由IdP簽名的SAML斷言。
對SAML至關重要的幾個術語的定義:
-
身份提供程式(IdP) — 執行身份驗證的軟體工具或服務(通常通過登入頁和/或儀表板進行視覺化);檢查使用者名稱和密碼、驗證帳戶狀態、呼叫雙因素等。
-
服務提供商(SP) — 使用者嘗試獲取訪問許可權的Web應用程式。
-
SAML斷言 — 通過瀏覽器重定向通過HTTP傳送的斷言使用者身份和通常為其他屬性的消息
IdP配置
SAML斷言的規範、斷言應包含的內容以及斷言的格式設定由SP提供並在IdP中設定。
- EntityID - SP的全域性唯一名稱。格式各異,但看到此值格式化為URL的情況越來越常見。
範例: <https://<FQDN-or-IPaddress>/saml/metadata>
- 斷言使用者服務(ACS)驗證器 — 正規表示式(regex)形式的安全措施,用於確保SAML斷言傳送到正確的ACS。這僅在由SP發起的登入期間起作用,其中SAML請求包含ACS位置,因此,此ACS驗證程式將確保SAML請求提供的ACS位置是合法的。
示例:https://<FQDN-or-IPaddress>/saml/acs
- Attributes — 屬性的數量和格式可能大不相同。通常至少有一個屬性nameID,它通常是嘗試登入的使用者的使用者名稱。
- SAML簽名演算法 — SHA-1或SHA-256。不太常用的SHA-384或SHA-512。此處提到此演算法與X.509證書結合使用。
SP配置
與上面部分相反,本節介紹IdP提供的資訊並在SP上設定。
FMC上的SAML
FMC中的SSO功能是從6.7開始引入的。新功能簡化了FMC授權(RBAC),因為它將現有資訊對映到FMC角色。它適用於所有FMC UI使用者和FMC角色。目前,它支援SAML 2.0規範以及這些支援的IDP
-
OKTA
-
OneLogin
-
PingID
-
Azure AD
-
其他(符合SAML 2.0的任何IDP)
限制和警告
-
只能為全域性域配置SSO。
-
HA配對中的FMC需要個別組態。
-
只有本地/AD管理員可以配置單一登入。
- 不支援從Idp啟動的SSO。
設定
身份提供程式上的配置
步驟1.登入Microsoft Azure。導航到Azure Active Directory >企業應用程式。
- 步驟2.在「Non-Gallery Application」下建立新應用程式,如下圖所示。
步驟3.編輯已建立的應用程式,然後導覽至Set up single sign on > SAML,如下圖所示。
步驟4.編輯基本SAML配置並提供FMC詳細資訊:
- FMC URL: https://<FMC-FQDN-or-IPaddress>
- 識別符號(實體ID): https://<FMC-FQDN-or-IPaddress>/saml/metadata
- 回覆URL: https://<FMC-FQDN-or-IPaddress>/saml/acs
- 登入URL: /https://<FMC-QDN-or-IPaddress>/saml/acs
- RelayState:/ui/login
將剩餘部分保留為預設值 — 對於基於角色的訪問,將對此進行進一步討論。
這標籤身份提供程式配置的結束。下載將用於FMC配置的聯合後設資料XML。
Firepower管理中心上的配置
步驟1.登入到FMC,導航到設定>使用者>單點登入並啟用SSO。選擇Azure作為提供程式。
步驟2.在此處上載從Azure下載的XML檔案。它會自動填充所需的所有詳細資訊。
步驟3.驗證組態並按一下Save,如下圖所示。
高級配置 — RBAC with Azure
若要使用各種角色型別對映到FMC的角色 — 您需要編輯Azure上的應用程式清單以將值分配給角色。預設情況下,角色具有Null值。
步驟1.導航到建立的Application,然後按一下Single sign-on。
步驟2.編輯使用者屬性和宣告。新增名為:角色並選擇值作為user.assignedroles。
步驟3.導覽至<Application-Name> > Manifest。 編輯清單。檔案採用JSON格式,預設使用者可供複製。例如 — 此處建立了2個角色:使用者和分析師。
步驟4.導航到<Application-Name> > Users and Groups。編輯使用者並分配新建立的角色,如下圖所示。
步驟4.登入到FMC並在SSO中編輯高級配置。對於, 組成員屬性:答 將您在應用程式清單中提供的顯示名稱分配給角色。
完成後,您應該能夠登入到他們的指定角色。
驗證
步驟1.從瀏覽器導航至FMC URL:https://<FMC URL>。按一下「Single Sign-On」,如下圖所示。
系統會將您重新導向至Microsoft登入頁面,且成功登入將返回FMC預設頁面。
步驟2.在FMC上,導航到System > Users,檢視新增到資料庫的SSO使用者。
疑難排解
驗證SAML身份驗證,這是成功授權所實現的工作流程(此映像為實驗室環境):
瀏覽器SAML日誌
FMC SAML日誌
在/var/log/auth-daemon.log上驗證FMC上的SAML日志