3

自分用の小さなTwitterWebアプリを作成しています。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>

このトピックについて調査したところ、使用している.NET信頼レベルにアクセスするために必要なURIを追加するだけでよいことがわかりました。だから私はMEDIUMに切り替えて変更しました:

C:\ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 \ CONFIG \ web_mediumtrust.config

... そのようです:

オリジナル:

   <IPermission class="WebPermission" version="1">
       <ConnectAccess>
             <URI uri="$OriginHost$"/>
       </ConnectAccess>
   </IPermission>

変更されました:

   <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にあるのか、ここにあるのかわからなかったので、ここから始めます:)

4

1 に答える 1

1

これをもっと早く見つけられなくてすみません。

完全な信頼を使用できない理由はありますか? なぜこれが起こっているのかわかりませんが、バグを報告することができます。TweetSharp は、後で実行時に問題が発生しないように、事前に WebPermission を要求しようとします。

于 2010-02-14T09:19:47.873 に答える