簡體   English   中英

Aspnet會員資格需要完全信任嗎?

[英]Does Aspnet Membership require Full Trust?

我正在主機上測試我的應用程序,當我嘗試訪問試圖從Aspnet成員資格配置文件中讀取的頁面時,它將返回以下消息:

請求類型為'System.Security.Permissions.SecurityPermission,mscorlib,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'的權限失敗。

看起來Aspnet成員資格要求在完全信任下運行,但是托管服務提供商不允許應用程序在完全信任下運行。 有沒有辦法使它在中等信任級別工作?

1)嘗試從參考( http://forums.asp.net/t/1422162.aspx/1 )中使用以下內容

using System;
  namespace ConsoleApplication
  {
     [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name = "FullTrust")]

or

<System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Assert, Unrestricted:=True)> _

   class Program
      {
          static void Main(string[] args)
          {
               ...
          }  
      }
  }

2)如果這樣做沒有幫助,請嘗試在<system.web>標記內的web.config文件中使用put <trust level="Full" />

3)運行此命令caspol.exe -m -ag LocalIntranet_Zone -url \\\\<network host>\\<share name>\\ FullTrust -n FullTrustShare
(當然,您需要以管理員身份登錄才能執行)

4)轉到控制面板/管理工具/ Microsoft .NET Framework配置/配置安全設置。 然后轉到左側的“我的電腦”->“運行時安全策略”節點,然后單擊右側的“調整區域安全性”鏈接,使其完全信任

經過一些研究,看起來Asp.Net Membership中的Profiles功能要求應用程序具有完全信任安全級別。 因此,如果有人嘗試托管使用Asp.Net成員身份的配置文件功能的應用程序,則最好檢查托管提供程序是否允許應用程序在完全信任級別下運行。 他們大多數都不(我的情況)。 我將自己實現一個Profile結構。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM