共用方式為


狀態伺服器設計考慮

注意

從 Windows Server 2008 開始,因特網驗證服務 (IAS) 已重新命名為網路原則伺服器 (NPS)。 本主題的內容同時適用於 IAS 和 NPS。 在整個文字中,NPS 會用來參考服務的所有版本,包括原本稱為 IAS 的版本。

 

根據您的設計,您可能需要伺服器來追蹤目前登入網路的使用者。 狀態伺服器的主要挑戰是讓狀態伺服器資料庫中的資訊與實際登入的人員保持同步。 如果狀態伺服器中的資訊未同步,使用者可能會在未獲授權的情況下,成功擁有多個會話。 此外,沒有多個會話的使用者可能會不小心受到處罰。

實作狀態伺服器時,應考慮下列事項:

  • 狀態伺服器必須在幾秒鐘內在線做出決策。 因此,狀態伺服器需要可調整的基礎結構,每秒可支援許多更新和查詢。 關係資料庫不適用於具有同時更新的這類大型查詢。 關係資料庫主要是為了保持數據一致,並且為所有取用者提供一致的數據檢視。 它們並非針對快速更新而建置。
  • 多個物件之間更新的交易一致性並不重要。 這是因為狀態伺服器可以容許一個小的機會視窗。 不過,如果其中一部RADIUS伺服器在更新中間關機,單一更新的交易一致性對於降低讓狀態伺服器處於不一致狀態的機會很重要。
  • 持續性(將網路的狀態儲存至永續性記憶體)並不重要,因為持續性資訊很快就會與網路的實際狀態同步。
  • 如果網路上支援ISDN或其他形式的多重連結,狀態伺服器應該能夠處理使用這些功能的案例。

其中一個可能的設計是實作驗證延伸模組 DLL 和授權延伸模組 DLL。 每個 DLL 都可以透過網路與資料庫通訊。 授權延伸模組 DLL 可以使用目前登入網路的人員相關信息來更新資料庫。 驗證延伸模組 DLL 可以查詢資料庫以取得這項資訊,以決定是否要接受或拒絕特定使用者的驗證要求;如果用戶已經登入,則會拒絕要求。

授權延伸模組 DLL 更新狀態伺服器資料庫的優點是授權延伸模組 DLL 可以存取已驗證使用者的詳細資訊。 授權延伸模組 DLL 可以存取 NPS 授權機制中的所有授權屬性。 例如,某些使用者可能有授權可讓他們擁有多個會話。 狀態伺服器應將這類用戶視為特殊案例。