none
That assembly does not allow partially trusted callers.

    Question

  • Why am I getting this? I am trying to debug a C# application on my own machine, so, as I understand it, my program should have full trust.

    Saturday, May 13, 2006 7:40 AM

Answers

  • Any RequestOptional acts as an implicit rejection of any permission for which a RequestMinimum or RequestOptional is not present.  Therefore, due to your RequestOptional for unrestricted FileIOPermission, your assembly ends up being partially trusted.  If you want to enable your assembly to be fully trusted, you'll need to either remove that attribute, change it to a RequestMinimum, or add a RequestOptional for an unrestricted permission grant (aka "full trust").  e.g.:

    [assembly: PermissionSet(SecurityAction.RequestOptional, Unrestricted = true)]

    Wednesday, May 17, 2006 5:58 PM

All replies

  • Might you be willing to provide the full exception details (including call stack listing) as returned by the exception's ToString method?
    Monday, May 15, 2006 1:18 PM
  • System.Security.SecurityException was unhandled
      Message="That assembly does not allow partially trusted callers."
      Source="MS.SD.Admin.Status"
      GrantedSet=""
      PermissionState=""
      RefusedSet=""
      Url="file:///C:/projects/toolbox/SDAdmExp/Whidbey/SDAdmExp/bin/Debug/MS.SD.Admin.Status.DLL"
      StackTrace:
           at System.Security.CodeAccessSecurityEngine.ThrowSecurityException(Assembly asm, PermissionSet granted, PermissionSet refused, RuntimeMethodHandle rmh, SecurityAction action, Object demand, IPermission permThatFailed)
           at MS.SD.Admin.Status.Sample..ctor(String port, EventLog eventlog, String sqlConnectionString)
           at MS.SD.Admin.Status.Sample..ctor(String port, EventLog eventlog) in C:\projects\toolbox\SDAdmExp\Whidbey\MS.SD.Admin.Status\Sample.cs:line 26
           at MS.SD.Admin.Explorer.Form1.Menu_View_Refresh_Click(Object sender, EventArgs e) in C:\projects\toolbox\SDAdmExp\Whidbey\SDAdmExp\Form1.cs:line 1488
           at MS.SD.Admin.Explorer.Form1.Menu_File_Connect_Click(Object sender, EventArgs e) in C:\projects\toolbox\SDAdmExp\Whidbey\SDAdmExp\Form1.cs:line 2326
           at System.Windows.Forms.MenuItem.OnClick(EventArgs e)
           at System.Windows.Forms.MenuItem.ShortcutClick()
           at System.Windows.Forms.Menu.ProcessCmdKey(Message& msg, Keys keyData)
           at System.Windows.Forms.Form.ProcessCmdKey(Message& msg, Keys keyData)
           at System.Windows.Forms.Control.PreProcessMessage(Message& msg)
           at System.Windows.Forms.Control.PreProcessControlMessageInternal(Control target, Message& msg)
           at System.Windows.Forms.Application.ThreadContext.PreTranslateMessage(MSG& msg)
           at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
           at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
           at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
           at MS.SD.Admin.Explorer.Form1.Main() in C:\projects\toolbox\SDAdmExp\Whidbey\SDAdmExp\Form1.cs:line 1313
           at System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)
           at System.Runtime.Hosting.ApplicationActivator.CreateInstance(ActivationContext activationContext, String[] activationCustomData)
           at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssemblyDebugInZone()
           at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
           at System.Threading.ThreadHelper.ThreadStart()
    Monday, May 15, 2006 7:59 PM
  • Have you set your application properties to debug with partial trust?  If you're not sure what this means, take a look at the Security tab of your project's properties window.  Are ClickOnce security settings enabled?  If so, is your application set to run with full trust or partial trust?  If the latter, do the advanced settings indicate that the application should be debugged with the specified permission set?
    Tuesday, May 16, 2006 12:14 PM
  • It is marked as a full trust application. I selected partial trust and clicked Advanced, unchecked "Debug this application with the selected permission set", switched it back to full trust and retried, with the same results.
    Tuesday, May 16, 2006 7:42 PM
  • Does your assembly contain any assembly-level permission attributes?
    Wednesday, May 17, 2006 2:29 PM
  • Does your MS.SD.Admin.Status.DLL try to call into any other assemblies?
    Wednesday, May 17, 2006 2:50 PM
    Moderator
  • [assembly: ComVisible(false)]
    [assembly: CLSCompliant(true)]

    [assembly: FileIOPermission(SecurityAction.RequestOptional, Unrestricted = true)]
    [assembly: ReflectionPermissionAttribute(SecurityAction.RequestMinimum, Unrestricted = true)]
    [assembly: SecurityPermission(SecurityAction.RequestMinimum, Unrestricted = true)]
    [assembly: EventLogPermission(SecurityAction.RequestMinimum, Unrestricted = true)]
    [assembly: UIPermissionAttribute(SecurityAction.RequestMinimum, Unrestricted = true)]

    MS.SD.ADmin.Status.dll references System, System.Data, System.Web, System.XML, and an interop assembly that VS created for a COM dll.

    The same project builds and runs fine on a different [x86] machine.

    Wednesday, May 17, 2006 5:47 PM
  • Any RequestOptional acts as an implicit rejection of any permission for which a RequestMinimum or RequestOptional is not present.  Therefore, due to your RequestOptional for unrestricted FileIOPermission, your assembly ends up being partially trusted.  If you want to enable your assembly to be fully trusted, you'll need to either remove that attribute, change it to a RequestMinimum, or add a RequestOptional for an unrestricted permission grant (aka "full trust").  e.g.:

    [assembly: PermissionSet(SecurityAction.RequestOptional, Unrestricted = true)]

    Wednesday, May 17, 2006 5:58 PM
  • Thanks, changing to RequestMinimum worked.
    Wednesday, May 17, 2006 6:52 PM
  • I'm using a thrid-party DLL. I don't have access to the source code. How can I change the attributes to get rid of this annoying "security" exception.
    Wednesday, June 07, 2006 10:17 PM
  • Are you sure that the problem is caused by assembly-level permission attributes in the third party DLL?  There are many other reasons that security exceptions can be thrown.  If you need help identifying the problem, please post the full exception details (including call stack listing), as returned from the exception's ToString method.

    Wednesday, June 07, 2006 10:43 PM
  • In my Application ,When I am hosted my application , that gives an error....

    "
    Exception: System.Security.SecurityException:That

    assembly does not allow partially trusted callers.

    Description: Application attemped 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 trust level in the configuration file   "

     

    I called the Hosting Company and they confirm that

    the application runs on a Full Trust but their system

    supports application with Medium Trust.

     

    Ok , So I make my changes in Web.Config as

     <trust level="Medium" originUrl=""/>

     

    I am also making a reference to an assembly from where this error is coming and added one line in it's assembly info class as

     <Assembly: AllowPartiallyTrustedCallers()>  

     

    But still the error is same .

    To test the application I set  

     <trust level="Medium" originUrl=""/>    in my machine level config file.

     

    What else should I do.

    This is very urgent.

    Any kind of help is appreciated.

     

    Two more thing to add..

    First ,I am using asp.net 2.0 and secondly, my assembly is referencing  another assembly ( named:  MySql.Data.dll ) which is a third party assembly.

     
    Second , What is the link  of strong name with this error.

    Should my assembly be strong named.
    Friday, June 08, 2007 11:42 AM
  • Hi Everybody,

    Me also got the same problem...

    Please suggest me what can I do now?

    Thanks,
    Saravanan Srinivas
    saravanan@vesttechnologies.com




    Thursday, March 13, 2008 3:40 PM