Share via


AccessControlledMetadataObject Class

Represents an object that has authorization checks embedded in one or more of its methods.

Inheritance Hierarchy

System.Object
  Microsoft.SharePoint.BusinessData.Administration.Client.MetadataObject
    Microsoft.SharePoint.BusinessData.Administration.Client.AccessControlledMetadataObject
      

Namespace:  Microsoft.SharePoint.BusinessData.Administration.Client
Assembly:  Microsoft.SharePoint.BusinessData.Administration.Client (in Microsoft.SharePoint.BusinessData.Administration.Client.dll)

Syntax

'Declaration
Public MustInherit Class AccessControlledMetadataObject _
    Inherits MetadataObject
'Usage
Dim instance As AccessControlledMetadataObject
public abstract class AccessControlledMetadataObject : MetadataObject

Remarks

The access control list (ACL) to authorize against might or might not be stored on the object itself. If it does not have a concrete ACL stored on itself, it obtains an ACL from the closest parent that has an ACL. Any object deriving from this class is forced to provide the logic to get the nearest object with an ACL by walking up the metadata hierarchy.

An object should derive from AccessControlledMetadataObject when its methods require access control, but the object is not affected by the overhead of walking up the tree to find the nearest object with an ACL to authorize against. Typically, objects with fields that contain many subfields or objects that require infrequent access checks are candidates to derive from this object.

Notice that you cannot set an ACL on an AccessControlledMetadataObject object.

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.

See Also

Reference

AccessControlledMetadataObject Members

Microsoft.SharePoint.BusinessData.Administration.Client Namespace

Inheritance Hierarchy

System.Object
  Microsoft.SharePoint.BusinessData.Administration.Client.MetadataObject
    Microsoft.SharePoint.BusinessData.Administration.Client.AccessControlledMetadataObject
      Microsoft.SharePoint.BusinessData.Administration.Client.Action
      Microsoft.SharePoint.BusinessData.Administration.Client.ActionParameter
      Microsoft.SharePoint.BusinessData.Administration.Client.AssociationGroup
      Microsoft.SharePoint.BusinessData.Administration.Client.FilterDescriptor
      Microsoft.SharePoint.BusinessData.Administration.Client.Identifier
      Microsoft.SharePoint.BusinessData.Administration.Client.IndividuallySecurableMetadataObject
      Microsoft.SharePoint.BusinessData.Administration.Client.LobSystemInstance
      Microsoft.SharePoint.BusinessData.Administration.Client.Parameter
      Microsoft.SharePoint.BusinessData.Administration.Client.TypeDescriptor