인증 프로세스가 비교적 만족 스럽지만 세션/설정에 대한 다른 옵션을 탐색하려고합니다.
내 제안은 설정 (역할, 환경 설정 등)과 관련이 있습니다.)
내 의견으로는 UI에서 비즈니스 계층으로 DB 계층으로 전체 기술 스택을 트래버스해야하는 경우가 종종 있습니다. 세션 중에 변경 될 가능성이없는 데이터의 경우 많은 오버 헤드가 발생합니다. 잠재적으로 여러 가지 데이터 변환이 발생합니다 (DB (관계형 형식) -> ORM -> 웹 서비스 XML 직렬화 -> 웹 계층 직렬화 해제).
무거운 RDBMS 시스템이나 ASP.NET 캐싱/세션 모델에 의존하지 않는 세션 시스템을 고려해보십시오. 매우 성과가 있고 확장 성이 좋은 옵션이 있습니다.
Ayende Rahien (.NET 용)은 RavenDB을 사용할 수 있습니다. 주요 목표는 낮은 대기 시간, 스키마가없는 JSON 문서에 대한 고성능 액세스를 제공하는 것입니다.
이 솔루션을 사용하면 데이터에 대한 액세스가 매우 빠르도록 웹 계층에서 ravenDB를 설정할 수 있습니다. 처음으로 설정을 인증하고 검색 할 때이 세션 DB에 사용자 ID 및 설정 정보를 저장합니다. 그 후에 컨트롤러를로드 할 때마다 RDBMS로 되돌아 가지 않고 설정 데이터에 액세스 할 수 있습니다. 이 DB는 다른 웹 관련 데이터를 캐시하는 데 사용될 수도 있습니다.
보안의 경우 설정 데이터는 사용하는 방법에 관계없이 웹 계층으로 연결합니다. 이 솔루션은 다른 옵션 (암호화되지 않은 쿠키보다 안전함)보다 안전하거나 보안 수준이 낮습니다. 필요한 경우 세션 데이터를 암호화 할 수 있지만 오버 헤드가 다시 증가합니다.
백만 가지 옵션 중 하나만 고려하십시오.
행운을 빕니다,
우리는 당신이 결정을 알려주십시오!
패트릭.
제목을 설명하기 쉽게 만드는 것이 좋습니다. 이 제목은 솔직히 쓸모가 없습니다. "ASP.Net 사이트에서 인증을 어떻게해야합니까?" –
질문과 같은 소리는 주로 성능에 관한 것입니다. 설정 데이터베이스를 너무 자주 사용하는 것처럼 느껴 집니까? –
내가 생각하기에 세션을 사용하지 않고 데이터를 지속시키기위한 간단한 mvc (1 또는 2) 특정 솔루션이 있다고 생각합니다. – chobo