Note that there are some explanatory texts on larger screens.

plurals
  1. POReading configuration section from a restricted appdomain
    primarykey
    data
    text
    <p>I have some configuration section defined in a signed assembly A, that are used in an app domain that loads its own configuration file, created by the assembly A. </p> <p>The assembly loaded B is not a full trust application. </p> <p>All assemblies are written using .Net 4. </p> <p>The assembly security is managed using PermissionSet.</p> <p>The problem is that the domain created is not able to access the section, resulting in a SecurityException "Request Failed." The action demanded is : <code>&lt;PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true"/&gt;</code></p> <p>I already tried to give lots of permissions, without any effects : </p> <pre><code> permSet.AddPermission(new System.Security.Permissions.FileIOPermission(PermissionState.Unrestricted)); permSet.AddPermission(new System.Security.Permissions.ReflectionPermission(ReflectionPermissionFlag.MemberAccess)); permSet.AddPermission(new System.Security.Permissions.SecurityPermission(SecurityPermissionFlag.ControlEvidence)); permSet.AddPermission(new System.Security.Permissions.SecurityPermission(SecurityPermissionFlag.ControlPolicy)); permSet.AddPermission(new System.Security.Permissions.SecurityPermission(SecurityPermissionFlag.SerializationFormatter)); System.Configuration.Configuration cnf = System.Configuration.ConfigurationManager.OpenMachineConfiguration(); permSet.AddPermission(new System.Security.Permissions.FileIOPermission(FileIOPermissionAccess.Read, cnf.FilePath)); permSet.AddPermission(new System.Security.Permissions.GacIdentityPermission(PermissionState.Unrestricted)); permSet.AddPermission(new System.Security.Permissions.EnvironmentPermission(PermissionState.Unrestricted)); permSet.AddPermission(new System.Security.Permissions.PublisherIdentityPermission(PermissionState.Unrestricted)); permSet.AddPermission(new System.Security.Permissions.RegistryPermission(PermissionState.Unrestricted)); permSet.AddPermission(new System.Security.Permissions.SecurityPermission(PermissionState.Unrestricted)); permSet.AddPermission(new System.Security.Permissions.StrongNameIdentityPermission(PermissionState.Unrestricted)); permSet.AddPermission(new System.Security.Permissions.TypeDescriptorPermission(PermissionState.Unrestricted)); permSet.AddPermission(new System.Security.Permissions.UrlIdentityPermission(PermissionState.Unrestricted)); permSet.AddPermission(new System.Security.Permissions.ZoneIdentityPermission(PermissionState.Unrestricted)); </code></pre> <p>I try to access the section like this : </p> <pre><code>(MySection)ConfigurationManager.GetSection("mySectionGroup/mySection") </code></pre> <p>And like this : </p> <pre><code>var configuration = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); var config = (DictionaryConfigurationSection)configuration.GetSection("agent/dictionaries"); </code></pre> <p>The section is defined with the requirePermission set to false.</p> <p>Thanks</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload