Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Другие СУБД > Sybase ASE 15.7, ADO.NET и Win7 security


Автор: Wissenstein 19.4.2013, 12:41
Доброго здоровья, коллеги!
Работаю над ASP.NET-проектом, где данные хранятся в базе под управлением серверов Sybase ASE 15.5 и Sybase ASE 15.7.
Для доступа к базе данных использую 32-разрядный Sybase.AdoNet4.AseClient.dll версии 15.7.
Развёртываю разные версии приложения на разные сайты на IIS 7 под управлением Windows 7. Допустим, имена сайтов такие: для предыдущей версии — Minatoku-1.0, для следующей версии — Minatoku-1.1.
Когда захожу через браузер на Minatoku-1.0, он показывает все данные. Когда на Minatoku-1.1, то возникает ошибка:
Код

System.TypeInitializationException: The type initializer for 'Sybase.Data.AseClient1.AseConnection' threw an exception. ---> 
Sybase.Data.AseClient.AseException: Could not load C:\Windows\TEMP\Sybase.AdoNet4.AseClient.32bits.4.157.104.0\sbgse2.dll
   at Sybase.Data.AseClient1.AseConnection.SaveAndLoadLibrary(String dirName, String dllName, Int32 bits)
   at Sybase.Data.AseClient1.AseConnection.LoadLibraries()
   at Sybase.Data.AseClient1.AseConnection..cctor()

В настройках безопасности для папки C:\Windows\TEMP\Sybase.AdoNet4.AseClient.32bits.4.157.104.0 вижу: Owner = Minatoku-1.0, и в списке Permissions назначены специальные разрешения для этого пользователя. Пользователя Minatoku-1.1 в списке вообще нет, и не вижу способа добавить его вручную.

То есть, как я понимаю, к базе данных получить доступ с одной машины сможет только один сайт — который раньше всех начал подсоединение. Все остальные — в очередь без надежды на доступ в обозримом будущем.

Подскажите, пожалуйста, как решить эту проблему. Есть ли возможность заставить AseClient искать sbgse2.dll для каждого проекта в каком-то определённом месте, чтобы передавать его в составе проекта с заранее настроенными разрешениями? Может быть, существует ещё какой-то способ разрешить проекту Minatoku-1.1 использовать sbgse2.dll, развёрнутый проектом Minatoku-1.0? Другие варианты? 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)