SPC020613: Do not define 'SecurityPermission' with 'Unrestricted=true'

The CAS Policy for System.Security.Permissions.SecurityPermission with setting 'Unrestricted=true' is not allowed.

TypeName: DoNotDefineUnrestrictedSecurityPermission
CheckId: SPC020613
Severity: Error
Type: PermissionSetDefinition
Resolution

Remove permission 'SecurityPermission' with setting 'Unrestricted=true' or change to 'Flags=Execution'.

Bad Sample:

<Solution xmlns="http://schemas.microsoft.com/sharepoint/">
  <CodeAccessSecurity>
    <PolicyItem>
      <PermissionSet class="NamedPermissionSet" version="1">
      ...
        <IPermission class="System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Unrestricted="True" />
      ...
      </PermissionSet>
    <PolicyItem>
  <CodeAccessSecurity>
</Solution></code

Good Practice:

<PermissionSet class="NamedPermissionSet" version="1">
...
  <IPermission class="SecurityPermission" version="1" Flags="Execution" />
...
</PermissionSet>

Links

comments powered by Disqus