Използване на идентичност на IIS 6 App pool за свързване към SQL сървър

Използвам IIS 6 в Server 2003 и SQL server 2008, който се намира в отделна кутия. Сега бих искал да се свържа с помощта на идентичността на набора приложения на уебсайта към SQL сървъра. Но по някакъв начин винаги, когато показвам самоличността в метода page_load, той винаги показва акаунта на Windows, използвайки кой сайт е бил разглеждан. Дадох подробностите по-долу

Сървър: Windows Server 2003 База данни: SQL сървър 2008. Уеб сървърът и DB седят на различни машини. Уебсайт: Използва персонализиран набор от приложения, който работи с персонализиран домейн акаунт. Уебсайтът е с деактивирано анонимно и с активирано Windows удостоверяване. Имитирането не е разрешено в web.config.

Показвам идентификационните данни, като използвам кода по-долу:

Response.Write(HttpContext.Current.User.Identity.Name.ToString());
        WindowsIdentity id = WindowsIdentity.GetCurrent();
        Response.Write(id.Name);

Сега имам нужда от начин за използване на идентичността на пула от приложения за свързване с база данни. Моля, кажете ми как да направя това. Ако задам анонимния акаунт на уебсайта като идентичност на набора от приложения, всичко работи добре, но не искам да го правя. Сега удостоверяването просто протича като анонимно към SQL сървъра и хвърля изключение.


person Ravi    schedule 11.04.2011    source източник


Отговори (2)


Не съм сигурен за IIS6, но в IIS8... В разширените настройки за въпросния набор от приложения има раздел за идентичност. Задайте това на идентификационните данни на Windows, които искате да използвате. Също така задайте „Зареждане на профил на приложение“ на true.

След това във вашето приложение просто трябва да настроите своя низ за връзки, за да използвате trusted_connection вместо потребителско име и парола на SQL сървър.

Само не забравяйте да настроите акаунта на Windows да има парола, която никога не изтича, освен ако не се сетите да актуализирате набора от приложения, когато се промени (или наборът ще спре.)

Дейв

person Dave    schedule 11.04.2011

Това звучи сякаш сте активирали Windows Authentication и използвате IE за свързване със сайта? В този случай самоличността на Windows се предава на IIS.

person Remotec    schedule 03.07.2012