ApplicationPoolIdentity IIS 7.5에서 SQL Server 2008 R2로 작동하지 않음


11

도메인의 다른 컴퓨터에서 SQL Server 데이터베이스에 대한 연결을 여는 작은 ASP.NET 테스트 스크립트가 있습니다. 모든 경우에 작동하지는 않습니다.

설정:

W2K8R2의 IIS 7.5는 원격 SQL Server 2008 R2 인스턴스에 연결하려고합니다. 모든 컴퓨터가 같은 도메인에 있습니다.

웹 사이트에 ApplicationPoolIdentity를 사용하면 다음과 같이 SQL Server에 연결하지 못합니다.

사용자 'NT AUTHORITY \ ANONYMOUS LOGON'에 대한 로그인에 실패했습니다. 설명 : 현재 웹 요청을 실행하는 동안 처리되지 않은 예외가 발생했습니다. 오류 및 코드에서 발생한 위치에 대한 자세한 정보는 스택 추적을 검토하십시오.

예외 정보 : System.Data.SqlClient.SqlException : 'NT AUTHORITY \ ANONYMOUS LOGON'사용자에 대한 로그인이 실패했습니다.

그러나 프로세스 모델 ID를 NETWORK SERVICE 또는 내 도메인 계정으로 전환하면 데이터베이스 연결에 성공한 것입니다.

SQL Server에서 \ $ 액세스 권한을 부여했습니다.

웹 사이트에서 인증을 수행하지 않고 데이터베이스에 연결하여 작동하는지 확인하는 간단한 스크립트 일뿐입니다.

익명 인증을 사용하고 응용 프로그램 풀 ID를 사용하도록 설정했습니다.

이 작업을 어떻게합니까? ApplicationPoolIdentity가 ANONYMOUS LOGON을 사용하려고하는 이유는 무엇입니까? 또한 익명 로그온 사용을 중지하려면 어떻게해야합니까?


1
언제든지 AppPool ID를 NETWORK SERVICE로 설정할 수 있습니다.
JohnThePro

답변:


4

나도 같은 문제가있었습니다. 에 따라 이 페이지 의 ApplicationPoolIdentity은 시스템 계정 (DOMAIN \ COMPUTERNAME $)와 같은 네트워크 리소스에 액세스하도록되어 있지만, 대신 액세스 SQL 서버에 NT AUTHORITY \ ANONYMOUS LOGON을 사용했다.

문서에서 말한대로 ApplicationPoolIdentity가 작동 하도록 이 핫픽스 를 사용할 수있었습니다 . 이 핫픽스는 NT AUTHORITY \ ANONYMOUS LOGON으로 네트워크 리소스에 액세스하기위한 솔루션을 구체적으로 설명하지는 않지만 컴퓨터 암호 변경과 관련이 있습니다.

이 stackoverflow 스레드 는이 솔루션을 찾는 데 도움이되었습니다.

ASP.NET ID 및 SQL ID 디버깅에 유용한 기타 팁

SQL 통합 인증은 스레드 ID와 관련이 있으므로 사용자 ID, 스레드 ID (가장에 따라 변경됨) 및 SQL 서버 로그인을 볼 수 있으면 유용합니다. 이 ASPX 스 니펫은 다음 세 가지를 모두 표시합니다.

<%@ Import Namespace="System.Security.Principal" %>

<div>ASP.NET Request User identity: <%= User.Identity.Name %></div>
<div>Current thread/process WindowsIdentity: <%= WindowsIdentity.GetCurrent(false).Name %></div>
<asp:SqlDataSource ID="CurrentUserData" runat="server" ConnectionString="<%$ ConnectionStrings:ConnID %>"
           SelectCommand="select SYSTEM_USER" />
<asp:DetailsView DataSourceID="CurrentUserData" runat="server" />

2

나는 똑같은 문제가 있었다. 나는 몇 시간 동안 머리카락을 뽑고 마침내 기계를 재부팅했습니다. 문제가 사라졌습니다! iisreset DID를 통해 IIS를 다시 시작해도 문제가 해결되지 않습니다. 서버를 다시 시작했을 때만 사라졌습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.