2011-02-03 3 views
1

우리 조직의 보안 처리 방식은 모두 SQL Server를 기반으로합니다. 기본적으로 사용자는 Active Directory 그룹에 추가되고이 그룹은 데이터베이스와 연결됩니다.iis7 Windows 인증 사용자가 SQL 백엔드에 액세스하기 위해 응용 프로그램 풀에

그래서 인트라넷 기반 Silverlight RIA 응용 프로그램이 있습니다. Windows 인증 및 가장을 사용하도록 설정되어 있습니다. 호스팅되는 웹 서버가 가장 (impersonation) 및 Windows 인증을 사용하도록 설정됩니다.

이 응용 프로그램은 SQL Server 백 엔드에 액세스하므로 인증 된 사용자 세부 정보를 응용 프로그램 풀로 전달할 수 있습니다. 그러면 응용 프로그램은 자격 증명을 사용하여 데이터베이스를 쿼리합니다. 또는 어떻게 내가 IIS를 통해 자신의 자격 증명을 사용하여 데이터베이스를 조회 할 수 있습니다 7.

감사

답변

1

NTLM 만 (하나의 서버에 클라이언트 (실버)에서 자격 증명을 전달할 수있는 곳은, 고전적인 이중 홉 문제 웹 계층). 이 시점에서 서버에는 사용자/패스 쌍이 아닌 토큰 만 있으므로 두 번째 서버 (이 경우 SQL)로 전달할 다음 토큰을 만들 수 없습니다. 이를 통해 원하는 것을 직접 습득 할 수 없습니다.

"앱 풀에서 ID를 가져 오도록 설정할 수 없습니다."; 하지만 올바르게 기억한다면 Keberos 및 AD 인증 위임은 클라이언트 자격 증명을 사용하여 웹 계층을 통해 SQL 액세스의이 시나리오를 해결할 수 있습니다. Solution to avoid double-hop from client > web service > SQL Server

:

하면이 스레드를 살펴 보자