2012-01-20 4 views
0

Entity Framework/Sql Server 2008을 사용하여 ASP.NET MVC에서 개발 한 응용 프로그램이 있습니다. 실제로 "sa"계정을 사용하여 데이터베이스에 연결됩니다.최종 사용자의 Windows 자격 증명을 사용하여 EF로 SQL Server에 연결

"sa"대신 최종 사용자 자격 증명을 사용할 수 있습니까? 이렇게하면 각 사용자의 보안 제한을보다 효율적으로 제어하는 ​​데 도움이됩니다. 내 응용 프로그램에서 Windows 인증을 사용합니다.

감사합니다.

+1

예 가능한 체크 아웃은 www.connectionstrings.com입니다. – Kane

답변

1

시스템 전체가 Windows 도메인 내에서 실행되어야하며 사용자는 도메인 계정이 있어야하며 시스템 인프라는 Kerberos 위임 (ServerFault에 속함)에 사용하도록 설정되어야합니다. 첫 번째 사용자는 클라이언트 컴퓨터에서 웹 서버로 인증 한 다음 웹 서버는 사용자 자격 증명을 데이터베이스 서버에 위임합니다. 클라이언트 컴퓨터, 웹 서버 및 데이터베이스 서버가 다른 컴퓨터 인 경우 Kerberos 위임을 사용하도록 설정해야합니다 (db 및 웹이 동일한 서버에서 실행되는 경우 Kerberos가 없어도 괜찮을 것입니다). 웹 응용 프로그램은 가장을 사용해야하며 연결 ​​문자열은 Windows 통합 보안을 사용해야합니다.

EF는 사용자 당 별도의 연결 풀을 유지해야하므로 최종 사용자 자격 증명을 사용하면 시스템 성능이 저하됩니다. SQL 서버 관리자는 응용 프로그램을 사용하여 모든 단일 사용자 (또는 사용자 그룹)에 대한 액세스 권한을 부여해야합니다.

관련 문제