次の方法で共有


State Server の設計に関する考慮事項

Note

Windows Server 2008 以降、インターネット認証サービス (IAS) の名前がネットワーク ポリシー サーバー (NPS) に変更されました。 このトピックの内容は、IAS と NPS の両方に適用されます。 テキスト全体で、NPS は、最初に IAS と呼ばれたバージョンを含め、サービスのすべてのバージョンを参照するために使用されます。

 

設計によっては、ネットワークに現在ログオンしているユーザーを追跡するためのサーバーが必要になる場合があります。 状態サーバーのメインの課題は、状態サーバー データベース内の情報を、実際にログオンしているユーザーと同期しておくことです。 状態サーバーの情報が同期されていない場合、ユーザーは、その権限がない場合に複数のセッションを持つことに成功する可能性があります。 また、複数のセッションを持たないユーザーは、誤って罰せられる可能性があります。

状態サーバーの実装では、次の事項を考慮する必要があります。

  • 状態サーバーは、数秒でオンラインで決定を行う必要があります。 このため、状態サーバーには、1 秒あたりに多くの更新とクエリをサポートできるスケーリング可能なインフラストラクチャが必要です。 リレーショナル データベースは、このような大規模なクエリと同時更新には適していません。 リレーショナル データベースは、主にデータの一貫性を維持し、すべてのコンシューマーにデータの一貫性のあるビューを提供するために構築されています。 これらは、クイック更新用に構築されていません。
  • 複数のオブジェクト間の更新に対するトランザクション整合性は重要ではありません。 これは、状態サーバーが小さな機会を許容できるためです。 ただし、1 つの更新プログラムのトランザクション整合性は、いずれかの RADIUS サーバーが更新の途中でシャットダウンされた場合に、状態サーバーが不整合な状態になる可能性を減らすために重要です。
  • 永続性 (ネットワークの状態を永続ストレージに保存する) は重要ではありません。これは、永続的な情報がネットワークの実際の状態とすぐに同期しなくなります。
  • ISDN またはその他の形式のマルチリンクがネットワークでサポートされている場合、ステート サーバーはこれらの機能を使用するシナリオを処理できる必要があります。

考えられる設計の 1 つは、認証拡張機能 DLL と承認拡張機能 DLL の両方を実装することです。 これらの DLL はそれぞれ、ネットワーク経由でデータベースと通信できます。 Authorization Extension DLL は、現在ネットワークにログオンしているユーザーに関する情報を使用してデータベースを更新できます。 認証拡張機能 DLL では、この情報をデータベースに照会して、特定のユーザーの認証要求を受け入れるか拒否するかを決定できます。ユーザーが既にログオンしている場合、要求は拒否されます。

認証拡張機能 DLL に状態サーバー データベースを更新させる利点は、認証されたユーザーに関する詳細情報に承認拡張機能 DLL がアクセスできる点です。 承認拡張機能 DLL は、NPS 承認メカニズムからすべての承認属性にアクセスできます。 たとえば、一部のユーザーには、複数のセッションを許可する承認がある場合があります。 状態サーバーでは、このようなユーザーを特別なケースとして扱う必要があります。