Сблъсквал съм се с тази грешка десетки пъти:
Причина
Разрешенията за защита не бяха правилно зададени, когато клиентът на Oracle беше инсталиран на Windows с NTFS. Резултатът от това е съдържанието на ORACLE_HOME
директорията не е видима за удостоверени потребители на машината; това причинява грешка, докато System.Data.OracleClient
комуникира със софтуера Oracle Connectivity от ASP.NET, използвайки привилегии на удостоверен потребител.
Решение
За да разрешите проблема, трябва да дадете на групата Authenticated Users привилегия на началната директория на Oracle.
- Влезте в Windows като потребител с Администратор привилегии.
- Стартирайте Windows Explorer и отидете до
ORACLE_HOME
папка. - Изберете свойства в
ORACLE_HOME
папка. - Щракнете върху Сигурност раздела на Свойства прозорец.
- Щракнете върху Удостоверени потребители елемент в Име списък.
- Премахнете отметката от Прочетете и изпълни поле в Разрешения списък под Разрешаване колона.
- Проверете отново Прочетете и изпълни поле под Разрешаване колона.
- Щракнете върху Разширени бутон и в Записи за разрешения проверете, че Удостоверени потребители са изброени с разрешение:Четене и изпълнение , и Приложи към:Тази папка, подпапки и файлове . Ако не, редактирайте този ред и се уверете, че Приложи към падащото меню е настроено на Тази папка, подпапки и файлове . Това вече трябва да е настроено правилно, но е важно да го потвърдите.
- Щракнете върху бутона OK, докато не затворите всички прозорци със свойства за защита. Курсорът може да покаже часовника за няколко секунди, тъй като прилага разрешенията, които току-що променихте, към всички подпапки и файлове.
- Рестартирайте, за да се уверите, че промените са влезли в сила.
Опитайте приложението си отново.