共用方式為


雲端原生身分識別

小提示

此內容摘錄自適用於 Azure 的電子書《架構雲端原生 .NET 應用程式》,該書可在 .NET Docs 上閱讀,或以 PDF 格式免費下載並離線閱讀。

Azure 電子書的雲端原生 .NET 應用程式封面縮圖。

大部分的軟體應用程式都需要具備呼叫使用者或程式的一些知識。 與應用程式互動的使用者或進程稱為安全性主體,而驗證和授權這些主體的程式稱為身分識別管理,或只是 身分識別。 簡單應用程式可能包含應用程式內的所有身分識別管理,但這種方法無法與許多應用程式和許多安全性主體一起調整。 Windows 支援使用 Active Directory 來提供集中式驗證和授權。

雖然此解決方案在公司網路內有效,但並非設計供 AD 網域外部的使用者或應用程式使用。 隨著以因特網為基礎的應用程式成長和雲端原生應用程式的興起,安全性模型已演進。

在現今的雲端原生身分識別模型中,架構被假設為分散式。 應用程式可以在任何地方部署,並可與任何位置的其他應用程式通訊。 用戶端可能會從任何地方與這些應用程式通訊,事實上,用戶端可能包含平臺和裝置的任何組合。 雲端原生身分識別解決方案會使用開放式標準,從客戶端達成安全的應用程式存取。 這些用戶端的範圍從計算機或手機上的人類使用者,到在線裝載的其他應用程式,到在世界上任何地方執行任何軟體平台的機頂盒和 IOT 裝置。

新式雲端原生身分識別解決方案通常會在確定其身分識別後,使用安全令牌服務/伺服器 (STS) 簽發給安全性主體的存取令牌。 存取令牌通常是 JSON Web 令牌 (JWT),包含有關安全性主體的 宣告 。 這些宣告至少會包括使用者的身分識別,但也可能包含應用程式可用來判定主體存取層級的其他宣告。

一般而言,STS 只會負責驗證主體。 判斷其資源存取層級會留給應用程式的其他部分。

參考資料