ClaimsPrincipalPermissionAttribute Class

[Starting with the .NET Framework 4.5, Windows Identity Foundation (WIF) has been fully integrated into the .NET Framework. The version of WIF addressed by this topic, WIF 3.5, is deprecated and should only be used when developing against the .NET Framework 3.5 SP1 or the .NET Framework 4. For more information about WIF in the .NET Framework 4.5, also known as WIF 4.5, see the Windows Identity Foundation documentation in the .NET Framework 4.5 Development Guide.]

Represents the attribute used to declaratively request access checks using the claims authorization manager.

Namespace: Microsoft.IdentityModel.Claims
Assembly: Microsoft.IdentityModel (in Microsoft.IdentityModel.dll)

Usage

'Usage
Dim instance As ClaimsPrincipalPermissionAttribute

Syntax

'Declaration
<AttributeUsageAttribute(AttributeTargets.Class Or AttributeTargets.Method, AllowMultiple:=True)> _
Public Class ClaimsPrincipalPermissionAttribute
    Inherits CodeAccessSecurityAttribute
[AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Method, AllowMultiple=true)] 
public class ClaimsPrincipalPermissionAttribute : CodeAccessSecurityAttribute
[AttributeUsageAttribute(AttributeTargets::Class|AttributeTargets::Method, AllowMultiple=true)] 
public ref class ClaimsPrincipalPermissionAttribute : public CodeAccessSecurityAttribute
/** @attribute AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Method, AllowMultiple=true) */ 
public class ClaimsPrincipalPermissionAttribute extends CodeAccessSecurityAttribute
AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Method, AllowMultiple=true) 
public class ClaimsPrincipalPermissionAttribute extends CodeAccessSecurityAttribute

Example

The following code example shows how to attribute a method. The claims authorization manager will be invoked to authorize any IClaimsPrincipal that tries to execute the method.

    class Program
    {        
        //
        // Declarative access check using the permission class
        //
        [ClaimsPrincipalPermission( System.Security.SecurityAction.Demand, Resource = "resource", Operation = "action")]
        [ClaimsPrincipalPermission( SecurityAction.Demand, Resource = "resource1", Operation = "action1" )]
        static void ProtectedMethod()
        {
        }

Remarks

The ClaimsPrincipalPermissionAttribute is used to declaratively request an access check using the configured claims authorization manager through the ClaimsPrincipalPermission class. See the Claims Based Authorization SDK sample in the <Installation Directory>\Windows Identity Foundation SDK\<Version>\Samples\Extensibility directory for a full example of how to invoke the claims authorization manager to authorize access for protected sections of code.

Inheritance Hierarchy

System.Object
   System.Attribute
     System.Security.Permissions.SecurityAttribute
       System.Security.Permissions.CodeAccessSecurityAttribute
        Microsoft.IdentityModel.Claims.ClaimsPrincipalPermissionAttribute

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Target Platforms

Windows 7, Windows Server 2008 R2, Windows Vista SP2, Windows Server 2008 SP2, Windows Server 2003 SP2 (32-bit or 64-bit)

Change History

See Also

Reference

ClaimsPrincipalPermissionAttribute Members
Microsoft.IdentityModel.Claims Namespace

Copyright © 2008 by Microsoft Corporation. All rights reserved.