ASP.net не может получить доступ к базе данных за пределами домена

Я создал веб-сайт, используя ASP.net 2.0, IIS 5.1 и SQL Server 2000.

Доступ к веб-сайту с локального хоста и того же домена, что и сервер, работает правильно.

При доступе к веб-сайту из внешнего домена я могу получить доступ только к коду ASP.net, всякий раз, когда есть доступ к базе данных, генерируется ошибка.

Пожалуйста, дайте мне знать, как решить эту проблему.

Ошибка:

Event code: 3005 
Event message: An unhandled exception has occurred. 
Event time: 3/30/2011 4:54:28 PM 
Event time (UTC): 3/30/2011 1:54:28 PM 
Event ID: 44111a894d594247ad5e92e934d56c01 
Event sequence: 6 
Event occurrence: 1 
Event detail code: 0 

Application information: 
    Application domain: /LM/W3SVC/1/Root/SurveySite-12-129459668610468750 
    Trust level: Full 
    Application Virtual Path: /SurveySite 
    Application Path: c:\inetpub\wwwroot\Survey\ 
    Machine name: MIND****** 

Process information: 
    Process ID: 560 
    Process name: w3wp.exe 
    Account name: NT AUTHORITY\NETWORK SERVICE 

Exception information: 
    Exception type: SocketException 
    Exception message: No such host is known 

Request information: 
    Request URL: http://10.7.1.20/surveysite/Default.aspx 
    Request path: /surveysite/Default.aspx 
    User host address: 10.1.1.65 
    User:  
    Is authenticated: False 
    Authentication Type:  
    Thread account name: NT AUTHORITY\NETWORK SERVICE 

Thread information: 
    Thread ID: 12 
    Thread account name: NT AUTHORITY\NETWORK SERVICE 
    Is impersonating: False 
    Stack trace:    at System.Net.Dns.GetAddrInfo(String name)
   at System.Net.Dns.InternalGetHostByAddress(IPAddress address, Boolean includeIPv6, Boolean throwOnFailure)
   at System.Net.Dns.GetHostEntry(String hostNameOrAddress)
   at _Default.btnStart_Click(Object sender, EventArgs e) in c:\Inetpub\wwwroot\SurveySite\Default.aspx.cs:line 21
   at System.Web.UI.WebControls.Button.OnClick(EventArgs e)
   at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)
   at System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)
   at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
   at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

С уважением,


person Ahmad Hajou    schedule 30.03.2011    source источник
comment
Я попытался добавить пользователя NT AUTHORITY\NETWORK SERVICE на сервер базы данных и в базу данных, но это бесполезно.   -  person Ahmad Hajou    schedule 30.03.2011


Ответы (1)


Оказывается, проблема не связана с SQL-сервером, я звонил DNS-серверу, чтобы запросить имя машины с внешним IP-адресом.

Это вызвало ошибку.

Все, что мне нужно было сделать, это удалить это и сохранить только IP-адрес.

Интересно, можно ли получить доступ к имени хоста клиентского ПК через ASP.net.

person Ahmad Hajou    schedule 31.03.2011