SecurityException в приложении ASP.net - PullRequest
1 голос
/ 29 ноября 2008

У меня есть веб-приложение, которое запрашивает индекс Lucene, и оно прекрасно работает на сервере W2K3 в моей сети. Теперь я получил свой лазурный код, поэтому я хотел проверить сервис, загружающий приложение. Чтобы сделать это, мне пришлось установить Vista (я сделал это на виртуальной машине), потому что Azure SDK не будет устанавливаться на компьютер с XP.

Я создал свою облачную службу, добавил файлы из своего приложения, но при запуске (только F5) я получаю исключение SecurityException, когда я вызываю Lucene для запроса индекса:

Приложение попыталось выполнить операция не разрешена политика безопасности. Чтобы предоставить это применение требуется разрешение пожалуйста, свяжитесь с вашей системой администратор или изменить уровень доверия приложения в файл конфигурации.

Я гуглил и находил решения, которые касались изменения файла machine.config, что я не смогу сделать "в облаке".

Может ли кто-нибудь помочь в этом?

Ответы [ 4 ]

1 голос
/ 05 декабря 2008

Я также нашел вопрос, касающийся той же самой проблемы и как, если был исправлен.
Вот ссылка: Lucene.Net не работает на моем хосте, потому что он вызывает GetTempPath (). Что обходится?

1 голос
/ 02 декабря 2008

Хорошо, если кто-то сталкивается с такими же проблемами, это правильный ответ, который я получил с форума Azure:

Это из-за политики доверия для Windows Azure CTP. Переменные среды TEMP и TMP доступны и настроены соответственно. Тем не менее, System.IO.Path.GetTempPath и System.IO.GetTempFile не работают так как они требуют неограниченного разрешения среды. я мог бы Предлагаю вам связаться с Lucene разработчики, чтобы увидеть, могут ли они изменить код, чтобы он работал правильно в среде доверительные среды.

Спасибо Даниэлю К. Вангу за ответ.

0 голосов
/ 01 декабря 2008

Вы можете изменить доверие к web.config, если это не запрещено в machine.config (который часто используется в виртуальном хостинге). внутри вашего пут и посмотреть, что происходит.

Если вам не разрешено это делать, посмотрите, можете ли вы получить свой контрольный GACd, поговорив с вашим провайдером. Если это не сработает, извините, но вам не повезло. Иногда вы можете найти обходные пути, которые не требуют полного доверия для определенного метода, но если dll стороннего производителя требует этого, вы не можете сделать много

0 голосов
/ 29 ноября 2008

Не сделали этого, но не возможно ли иметь настольную версию Live Operating Environment? Это может показаться хорошим началом для устранения неполадок.

...