다음을 통해 공유


상태 서버 디자인 고려 사항

메모

IAS(인터넷 인증 서비스)는 Windows Server 2008부터 NPS(네트워크 정책 서버)로 이름이 바뀌었습니다. 이 항목의 내용은 IAS 및 NPS 모두에 적용됩니다. 텍스트 전체에서 NPS는 원래 IAS라고 하는 버전을 포함하여 서비스의 모든 버전을 참조하는 데 사용됩니다.

 

디자인에 따라 현재 네트워크에 로그온한 사용자를 추적하는 서버가 필요할 수 있습니다. 상태 서버의 주요 과제는 상태 서버 데이터베이스의 정보를 실제로 로그온한 사용자와 동기화된 상태로 유지하는 것입니다. 상태 서버의 정보가 동기화되지 않은 경우 사용자는 권한이 없는 경우 여러 세션을 성공적으로 수행할 수 있습니다. 또한 여러 세션이 없는 사용자는 실수로 불이용될 수 있습니다.

상태 서버를 구현할 때 다음 사항을 고려해야 합니다.

  • 상태 서버는 몇 초 안에 온라인으로 결정을 내려야 합니다. 이러한 이유로 상태 서버에는 초당 많은 업데이트 및 쿼리를 지원할 수 있는 확장 가능한 인프라가 필요합니다. 관계형 데이터베이스는 동시 업데이트가 있는 대규모 쿼리에는 적합하지 않습니다. 관계형 데이터베이스는 주로 데이터를 일관성 있게 유지하고 모든 소비자에게 일관된 데이터 보기를 제공하도록 빌드됩니다. 빠른 업데이트를 위해 빌드되지 않았습니다.
  • 여러 개체 간의 업데이트에 대한 트랜잭션 일관성은 중요하지 않습니다. 이는 주 서버가 기회의 작은 창을 허용할 수 있기 때문입니다. 그러나 단일 업데이트의 트랜잭션 일관성은 업데이트 중간에 RADIUS 서버 중 하나가 종료되는 경우 상태 서버가 일관되지 않은 상태로 남을 가능성을 줄이는 것이 중요합니다.
  • 지속성(영구 스토리지에 네트워크 상태 저장)은 영구 정보가 네트워크의 실제 상태와 빠르게 동기화되지 않기 때문에 중요하지 않습니다.
  • 네트워크에서 ISDN 또는 다른 형태의 멀티링크가 지원되는 경우 상태 서버는 이러한 기능을 사용하는 시나리오를 처리할 수 있어야 합니다.

한 가지 가능한 디자인은 인증 확장 DLL과 권한 부여 확장 DLL을 모두 구현하는 것입니다. 이러한 각 DLL은 네트워크를 통해 데이터베이스와 통신할 수 있습니다. 권한 부여 확장 DLL은 현재 네트워크에 로그온한 사용자에 대한 정보로 데이터베이스를 업데이트할 수 있습니다. 인증 확장 DLL은 데이터베이스에서 이 정보를 쿼리하여 특정 사용자의 인증 요청을 수락할지 아니면 거부할지를 결정할 수 있습니다. 사용자가 이미 로그온한 경우 요청이 거부됩니다.

권한 부여 확장 DLL이 상태 서버 데이터베이스를 업데이트하도록 하는 장점은 권한 부여 확장 DLL이 인증된 사용자에 대한 자세한 정보에 액세스할 수 있다는 것입니다. 권한 부여 확장 DLL은 NPS 권한 부여 메커니즘의 모든 권한 부여 특성에 액세스할 수 있습니다. 예를 들어 일부 사용자에게는 여러 세션을 가질 수 있는 권한 부여가 있을 수 있습니다. 상태 서버는 이러한 사용자를 특별한 경우로 처리해야 합니다.