Partager via


IAuthorizationExtension.CheckAccess Method (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. This method is not CLS-compliant.

Espace de noms: Microsoft.ReportingServices.Interfaces
Assembly: Microsoft.ReportingServices.Interfaces (in microsoft.reportingservices.interfaces.dll)

Syntaxe

'Déclaration
<StrongNameIdentityPermissionAttribute(SecurityAction.LinkDemand, PublicKey:="0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")> _
Function CheckAccess ( _
    userName As String, _
    userToken As IntPtr, _
    secDesc As Byte(), _
    requiredOperations As ResourceOperation() _
) As Boolean
[StrongNameIdentityPermissionAttribute(SecurityAction.LinkDemand, PublicKey="0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")] 
bool CheckAccess (
    string userName,
    IntPtr userToken,
    byte[] secDesc,
    ResourceOperation[] requiredOperations
)
[StrongNameIdentityPermissionAttribute(SecurityAction::LinkDemand, PublicKey=L"0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")] 
bool CheckAccess (
    String^ userName, 
    IntPtr userToken, 
    array<unsigned char>^ secDesc, 
    array<ResourceOperation>^ requiredOperations
)
/** @attribute StrongNameIdentityPermissionAttribute(SecurityAction.LinkDemand, PublicKey="0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8") */ 
boolean CheckAccess (
    String userName, 
    IntPtr userToken, 
    byte[] secDesc, 
    ResourceOperation[] requiredOperations
)
function CheckAccess (
    userName : String, 
    userToken : IntPtr, 
    secDesc : byte[], 
    requiredOperations : ResourceOperation[]
) : boolean

Paramètres

  • userName
    The name of the user requesting access to the report server.
  • userToken
    A user account token. This token is primarily used by the report server as a handle to a Microsoft Windows account in support of credential management for Windows authentication.
  • secDesc
    The security descriptor for the item.
  • requiredOperations
    The operations being requested by the report server for a given user.

Valeur de retour

Returns true if the currently authenticated user is granted access to the item based on the supplied operation and security descriptor.

Exemple

The following example code uses the CheckAccess method to evaluate a user's authorization credentials against a security descriptor for an item in the report server database. The example makes use of the overloaded CheckAccess method that takes a single operation as an argument.

' Overload for array of resource operations
Public Function CheckAccess(userName As String, userToken As IntPtr, secDesc() As Byte, requiredOperations() As ResourceOperation) As Boolean
   Dim operation As ResourceOperation
   For Each operation In  requiredOperations
      If Not CheckAccess(userName, userToken, secDesc, operation) Then
         Return False
      End If
   Next operation
   Return True
End Function 'CheckAccess
// Overload for array of resource operations
public bool CheckAccess(string userName, IntPtr userToken, byte[] secDesc, ResourceOperation[] requiredOperations)
{
   foreach(ResourceOperation operation in requiredOperations)
   {
      if (!CheckAccess(userName, userToken, secDesc, operation))
         return false;
   }
   return true; 
}

Sécurité des threads

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

Plateformes

Plateformes de développement

Pour obtenir la liste des plateformes prises en charge, consultez Configuration matérielle et logicielle requise pour l'installation de SQL Server 2005.

Plateformes cibles

Pour obtenir la liste des plateformes prises en charge, consultez Configuration matérielle et logicielle requise pour l'installation de SQL Server 2005.

Voir aussi

Référence

IAuthorizationExtension Interface
IAuthorizationExtension Members
Microsoft.ReportingServices.Interfaces Namespace