Я создаю небольшое веб-приложение для себя. Я использую TweetSharp, но получаю сообщение об ошибке:
Server Error in '/test' Application.
Security Exception
Description: The application attempted to perform an operation not allowed by the security policy. To grant this application the required permission please contact your system administrator or change the application's trust level in the configuration file.
Exception Details: System.Security.SecurityException: You cannot use TweetSharp in partial trust without a policy that allows connecting to API endpoints.
The following policy information (or equivalent) must be added to your trust policy:
<IPermission class="System.Net.WebPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1">
<ConnectAccess>
<URI uri="http://twitter\.com/.*"/>
<URI uri="http://api.twitter\.com/.*"/>
<URI uri="http://search.twitter\.com/.*"/>
</ConnectAccess>
</IPermission>
Source Error:
[No relevant source lines]
Source File: App_Web_kiqglk9p.1.cs Line: 0
Stack Trace:
[SecurityException: You cannot use TweetSharp in partial trust without a policy that allows connecting to API endpoints.
The following policy information (or equivalent) must be added to your trust policy:
<IPermission class="System.Net.WebPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1">
<ConnectAccess>
<URI uri="http://twitter\.com/.*"/>
<URI uri="http://api.twitter\.com/.*"/>
<URI uri="http://search.twitter\.com/.*"/>
</ConnectAccess>
</IPermission>
Я провел некоторое исследование по этой теме и обнаружил, что все, что мне нужно сделать, это добавить URI, которые мне нужны для доступа к уровню доверия .NET, который я использую. Поэтому я переключился на СРЕДНИЙ и изменил:
C: \ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 \ CONFIG \ web_mediumtrust.config
... вот так:
ОРИГИНАЛ:
<IPermission class="WebPermission" version="1">
<ConnectAccess>
<URI uri="$OriginHost$"/>
</ConnectAccess>
</IPermission>
ALTERED:
<IPermission class="WebPermission" version="1">
<ConnectAccess>
<URI uri="$OriginHost$"/>
<URI uri="http://twitter\.com/.*"/>
<URI uri="http://api.twitter\.com/.*"/>
<URI uri="http://search.twitter\.com/.*"/>
</ConnectAccess>
</IPermission>
Тем не менее, я все еще получаю ту же ошибку. Есть идеи?
PS: я не был уверен, принадлежит ли это к ServerFault или здесь, поэтому я начинаю здесь:)