IAuthorizationExtension Interface

 

Updated: February 25, 2016

Represents an extension that can be used to extend the authorization feature of SQL Server Reporting Services.

This API is not CLS-compliant.

Namespace:   Microsoft.ReportingServices.Interfaces
Assemblies:   Microsoft.ReportingServices.Interfaces (in Microsoft.ReportingServices.Interfaces.dll)
  Microsoft.ReportingServices.SharePoint.UI.WebParts (in Microsoft.ReportingServices.SharePoint.UI.WebParts.dll)

<CLSCompliantAttribute(False)>
Public Interface IAuthorizationExtension
	Inherits IExtension

NameDescription
System_CAPS_pubpropertyLocalizedName

Gets the localized name of the extension to be displayed in a user interface.(Inherited from IExtension.)

NameDescription
System_CAPS_pubmethodCheckAccess(String, IntPtr, Byte(), CatalogOperation)

Indicates whether a user is authorized to access an item in the report server database for a given catalog operation.

System_CAPS_pubmethodCheckAccess(String, IntPtr, Byte(), CatalogOperation())

Indicates whether a user is authorized to access an item in the report server database for a given array of catalog operation.

System_CAPS_pubmethodCheckAccess(String, IntPtr, Byte(), DatasourceOperation)

Indicates whether a user is authorized to access an item in the report server database for a given data source operation.

System_CAPS_pubmethodCheckAccess(String, IntPtr, Byte(), FolderOperation)

Indicates whether a user is authorized to access an item in the report server database for a given folder operation.

System_CAPS_pubmethodCheckAccess(String, IntPtr, Byte(), FolderOperation())

Checks a user's authorization credentials against a security descriptor for operations on an item in the report server database

System_CAPS_pubmethodCheckAccess(String, IntPtr, Byte(), ModelItemOperation)

Indicates whether a user is authorized to access an item in the report server database for a given model item operation.

System_CAPS_pubmethodCheckAccess(String, IntPtr, Byte(), ModelOperation)

Indicates whether a user is authorized to access an item in the report server database for a given model operation.

System_CAPS_pubmethodCheckAccess(String, IntPtr, Byte(), ReportOperation)

Indicates whether a user is authorized to access an item in the report server database for a given report operation.

System_CAPS_pubmethodCheckAccess(String, IntPtr, Byte(), ResourceOperation)

Indicates whether a user is authorized to access an item in the report server database for a given resource operation.

System_CAPS_pubmethodCheckAccess(String, IntPtr, Byte(), ResourceOperation())

Indicates whether a user is authorized to access an item in the report server database for a given array of resource operations.

System_CAPS_pubmethodCreateSecurityDescriptor(AceCollection, SecurityItemType, String)

Returns the security descriptor that is stored with an individual item in the report server database.

System_CAPS_pubmethodGetPermissions(String, IntPtr, SecurityItemType, Byte())

Returns the set of permissions granted a specific user for an item in the report server database.

System_CAPS_pubmethodSetConfiguration(String)

Used to pass custom configuration data to an extension.(Inherited from IExtension.)

Authorization is the process of determining whether an identity should be granted the requested type of access to a given resource in the report server database. This is accomplished in Reporting Services by storing and associating an access control list (AceCollection object) with each system and item resource in the report server database. Your authorization extension should provide an implementation of the CreateSecurityDescriptor method, which is called by the report server whenever a new role assignment is created for an item in the report server database. Your implementation of CreateSecurityDescriptor must, at minimum, serialize the AceCollection. You can optionally serialize additional user information as part of the security descriptor. Implement CheckAccess in order to evaluate whether a given user has the appropriate permissions to carry out a requested operation. Your implementation of CheckAccess should de-serialize the security descriptor, evaluate each AceStruct object, and check for a valid operation permission that corresponds to the username and the requested operation. If a matching operation is found, CheckAccess should return true.

Return to top
Show: