title: PrincipalPermission vs Authorize Attribute?
body: <p>Can anybody explain to me the differences and use cases of these two attributes? I am quite confused since they behave similarly. </p>
  
  <p>I know that the [Authorize] hooks into the ASP.NET application life cycle and run before the request reach to the Controller/Action. How about the PrincipalPermission?</p>
  
  <pre><code>[PrincipalPermission(SecurityAction.Demand, Role="Admin")]
  </code></pre>
  
  <p>And</p>
  
  <pre><code>[Authorize(Roles="Admin")]
  </code></pre>