2011-04-26 9 views
5

웹 응용 프로그램의 연결 문자열에서 Windows 인증 모드를 사용할 때 궁금합니다. 응용 프로그램 자체는 Windows 인증을 사용하여 권한을 부여합니다. SQL Server에 로그인하는 데 사용할 계정입니다.SQL Server 통합 인증 모드

웹 응용 프로그램 풀 계정이 아닙니까? Windows 인증을 사용하여 웹 응용 프로그램에 로그인 한 사용자 계정은 무엇입니까? 다른 계정은 있습니까?

응용 프로그램은 Win Ser 2008 64 비트 및 IIS 7에서 실행됩니다. 응용 프로그램 풀 계정은 네트워크 서비스입니다.

+0

"통합"모드 ?! 내가 아는 전부는 Windows, SQL Server 로그인 및 혼합 모드 (Windows 인증 및 SQL Server 로그인 모두 지원)입니다. –

+3

ASP.NET 코드를 실행하는 계정이됩니다 (예 : 응용 프로그램 풀 ('ASPNET' 또는'IUSR_ (machinename) '과 같은 계정) –

+0

@OMG 포니 : SqlConnection.ConnectionString을 사용한 적이 있다면 "통합 보안"은 사용자가 지정할 수있는 키워드 중 하나라는 것을 알고 있습니다 연결 모드. 귀하의 의견에 SQL Server 인증 모드를 참조하십시오. OP는 연결 모드를 말하며, 이것들은 다른 것들입니다. 그리고 예, "Integrated Security = true"는 Windows 인증 모드를 의미합니다. –

답변

0

연결 문자열에 통합 보안을 지정한 경우 데이터베이스에 연결하는 응용 프로그램 풀 사용자입니다.

6

구성 방법에 따라 다릅니다. http://msdn.microsoft.com/en-us/library/ms998292.aspxhttp://msdn.microsoft.com/en-us/library/bsz5788z.aspx ...

ASP.NET 응용 프로그램은 기본적으로 가장하지 않습니다. 따라서 Windows 인증을 사용하여 SQL Server에 연결하면 웹 응용 프로그램의 프로세스 ID가 사용됩니다. 이 방법을 사용하면 프런트 엔드 웹 응용 프로그램이 사용자를 인증하고 권한을 부여한 다음 신뢰할 수있는 ID를 사용하여 데이터베이스에 액세스합니다. 데이터베이스는 응용 프로그램의 ID를 신뢰하고 응용 프로그램이 호출자를 올바르게 인증하고 권한을 부여하도록 신뢰합니다. 이 접근 방식을 신뢰할 수있는 하위 시스템 모델이라고합니다.

가장 및 위임 모델이라고하는 대체 모델은 원본 호출자의 Windows ID를 사용하여 데이터베이스에 액세스합니다. 이 방법을 사용하려면 ASP.NET 응용 프로그램을 가장을 사용하도록 구성해야합니다. 이 문서의 "가장/위임 대 신뢰할 수있는 하위 시스템"절을 참조하십시오.

구성 방법에 따라 응용 프로그램 풀 계정 (가장을 사용하지 않을 때) 또는 웹 응용 프로그램을 사용하는 로그인 사용자의 계정 (가장을 사용할 때) 중 하나를 사용할 수 있습니다. .

가장 정보는 http://msdn.microsoft.com/en-us/library/134ec8tc.aspx을 참조하십시오.

0

내가 겪고있는 문제는 SQL Server의 응용 프로그램 풀 계정이 작동하기 전에 db_owner 역할로 설정해야한다는 것이 었습니다. 나는 이것을 이해하려고 오랜 시간을 보냈다.

Windows 인증, Windows 7 홈 프리미엄 및 IIS를 모두 동일한 컴퓨터에서 사용하고있었습니다. 다른 사람이 비슷한 문제에 부딪혔을 때를 대비해이 글을 올리고 있습니다. 내가 사용한 책은 db_owner를 사용하지 않고 독자와 작가 계정을 대신 사용한다고합니다.