共用方式為


ACS 效能方針

套用至

  • Microsoft Azure Active Directory 存取控制服務 (也稱為「存取控制服務」或 ACS)

  • Windows Identity Foundation (WIF)

總結

本主題概述當您開發使用 ACS 的應用程式和服務時,應考慮的重要效能指導方針。 尤其,本主題還提供權杖大小和加密編譯的指導方針,及其如何影響整體效能。

概觀

一般而言,效能的主要屬性包括回應時間、輸送量和資源使用量。 例如,如果應用程式的資源有限,例如記憶體,有些資訊很可能進入檔案系統,這比記憶體中的作業還要慢許多 - 將影響整體回應時間。 還有另一個例子,如果應用程式經由頻寬受限的網路傳送大量資料,則導致比理想的回應時間更慢。 解決效能問題的一個方法是增加更多資源,例如網路頻寬、更快的 CPU 和更多記憶體。 此方法不見得一定有用,但仍有幫助。 另一種方法是改進程式碼,讓它使用更少的資源和交換較少的資料。 考慮宣告感知應用程式的內容,以及開發人員控制下的內容,有一些與使用 ACS 相關的重要因素會影響效能,也就是權杖和與權杖相關的密碼編譯作業。

目標

  • 定義影響使用 ACS 之應用程式中效能的層面。

  • 提供如何改進各層面效能的指導方針。

權杖大小和加密

權杖大小和加密是開發人員控制下的重要因素,會影響與 ACS 整合之應用程式的效能。

  • 權杖大小。 權杖大小以兩種方式影響效能。 首先,在某種程度上,直接影響網路頻寬有關的效能。 權杖越大,耗用的網路頻寬就越多,導致整體回應越慢。 其次,權杖越大,驗證完整性和擷取權杖中的宣告所需的 CPU 週期就越多。 權杖處理包括剖析權杖並還原序列化為二進位格式,讓程式碼能夠使用它,此處理也包括數個加密編譯作業,例如簽章驗證和解密 (選擇性)。 權杖越大,處理所花費的 CPU 週期就越多,導致較高的資源使用率和較慢的整體回應。 權杖大小取決於幾個因素:權杖格式、套用至權杖的密碼編譯,以及權杖中的宣告。 ACS 支援 SAML、SWT 和 JWT 權杖。 一般而言,SWT 或 JWTJWT 權杖小於具有同等資訊數量的 SAML 權杖。 如需詳細資訊,請參閱 ACS 中支援的權杖格式。 注意,不同權杖格式已針對不同通訊協定和應用程式架構而最佳化。

    • SWT 權杖是透過 WS-Federation、WS-Trust 和 OAuth WRAP 或 OAuth 2.0 通訊協定發行。 這表示 SWT 權杖可用於 Web 應用程式、WCF (SOAP) 服務和 WCF (REST) 服務中。 WIF 不支援 SWT 權杖處理常式。

    • SAML 權杖是透過WS-Trust和WS-Federation通訊協定發行。 這表示 SAML 權杖可用於 Web 應用程式和 WCF (SOAP) 服務中。 WIF 支援 SAML 2.0 與 SAML 1.1 權杖。 在下列主題中深入瞭解 WIF Windows Identity Foundation

    • JWT 權杖是透過 WS-同盟、WS-Trust 和 OAuth 2.0 通訊協定發出。 這表示 SWT 權杖可用於 Web 應用程式、WCF (SOAP) 服務和 WCF (REST) 服務中。

    決定權杖大小的最重要因素是權杖中包含的宣告。 權杖攜帶的宣告越多,權杖就越大。 在大部分情況下,權杖隨附的宣告都由開發人員所掌控。 應用程式所使用的宣告會新增、移除或變更安全性權杖服務 (STS) ,例如 AD FS 或 ACS。 ACS 會使用規則群組和規則,在權杖中新增、移除或變更宣告。 如需詳細資訊,請參閱 規則群組和規則

  • 加密。 加密和其他加密編譯作業會直接影響效能,例如簽署、簽章驗證和解密。 加密編譯作業涉及複雜的演算法,所以會耗用運算資源。 ACS 會簽署所有簽發的權杖,作為完整性措施來防止竄改攻擊。 權杖的簽章驗證不是選擇性。 如果信賴憑證者應用程式是不使用 SSL 來加密通訊的 Web 服務,則需要權杖加密。 使用 SOAP 的 WCF 服務需要加密的持有證明權杖,以及 WS-Trust 通訊協定。 為了保護未加密通道上的機密資訊,需要權杖加密。 不過,如果通訊通道已加密,例如使用 SSL 加密,則使用權杖加密為選擇性,且可能不會套用,以利於提高效能。

另請參閱

概念

ACS 安全性指導方針
憑證與金鑰管理指導方針