IAuthorizationExtension.CheckAccess IAuthorizationExtension.CheckAccess IAuthorizationExtension.CheckAccess Method

정의

사용자에게 지정된 작업을 위해 보고서 서버 데이터베이스의 항목에 액세스할 수 있는 권한이 있는지 여부를 나타냅니다. Indicates whether a user is authorized to access an item in the report server database for a given operation.

오버로드

CheckAccess(String, IntPtr, Byte[], CatalogOperation) CheckAccess(String, IntPtr, Byte[], CatalogOperation) CheckAccess(String, IntPtr, Byte[], CatalogOperation)

사용자에게 지정된 카탈로그 작업을 위해 보고서 서버 데이터베이스의 항목에 액세스할 수 있는 권한이 있는지 여부를 나타냅니다. Indicates whether a user is authorized to access an item in the report server database for a given catalog operation.

CheckAccess(String, IntPtr, Byte[], CatalogOperation[]) CheckAccess(String, IntPtr, Byte[], CatalogOperation[]) CheckAccess(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.

CheckAccess(String, IntPtr, Byte[], DatasourceOperation) CheckAccess(String, IntPtr, Byte[], DatasourceOperation) CheckAccess(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.

CheckAccess(String, IntPtr, Byte[], FolderOperation) CheckAccess(String, IntPtr, Byte[], FolderOperation) CheckAccess(String, IntPtr, Byte[], FolderOperation)

사용자에게 지정된 폴더 작업을 위해 보고서 서버 데이터베이스의 항목에 액세스할 수 있는 권한이 있는지 여부를 나타냅니다. Indicates whether a user is authorized to access an item in the report server database for a given folder operation.

CheckAccess(String, IntPtr, Byte[], FolderOperation[]) CheckAccess(String, IntPtr, Byte[], FolderOperation[]) CheckAccess(String, IntPtr, Byte[], FolderOperation[])

보고서 서버 데이터베이스에 있는 항목에 대한 작업을 위해 보안 설명자를 기준으로 사용자의 권한 부여 자격 증명을 확인합니다. Checks a user's authorization credentials against a security descriptor for operations on an item in the report server database

CheckAccess(String, IntPtr, Byte[], ModelItemOperation) CheckAccess(String, IntPtr, Byte[], ModelItemOperation) CheckAccess(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.

CheckAccess(String, IntPtr, Byte[], ModelOperation) CheckAccess(String, IntPtr, Byte[], ModelOperation) CheckAccess(String, IntPtr, Byte[], ModelOperation)

사용자가 지정 된 모델 항목에 대 한 보고서 서버 데이터베이스의 항목에 액세스 권한이 있는지 여부를 나타냅니다. Indicates a value whether a user is authorized to access an item in the report server database for a given model operation.

CheckAccess(String, IntPtr, Byte[], ReportOperation) CheckAccess(String, IntPtr, Byte[], ReportOperation) CheckAccess(String, IntPtr, Byte[], ReportOperation)

사용자에게 지정된 보고서 작업을 위해 보고서 서버 데이터베이스의 항목에 액세스할 수 있는 권한이 있는지 여부를 나타냅니다. Indicates whether a user is authorized to access an item in the report server database for a given report operation.

CheckAccess(String, IntPtr, Byte[], ResourceOperation) CheckAccess(String, IntPtr, Byte[], ResourceOperation) CheckAccess(String, IntPtr, Byte[], ResourceOperation)

사용자에게 지정된 리소스 작업을 위해 보고서 서버 데이터베이스의 항목에 액세스할 수 있는 권한이 있는지 여부를 나타냅니다. Indicates whether a user is authorized to access an item in the report server database for a given resource operation.

CheckAccess(String, IntPtr, Byte[], ResourceOperation[]) CheckAccess(String, IntPtr, Byte[], ResourceOperation[]) CheckAccess(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.

CheckAccess(String, IntPtr, Byte[], CatalogOperation) CheckAccess(String, IntPtr, Byte[], CatalogOperation) CheckAccess(String, IntPtr, Byte[], CatalogOperation)

사용자에게 지정된 카탈로그 작업을 위해 보고서 서버 데이터베이스의 항목에 액세스할 수 있는 권한이 있는지 여부를 나타냅니다. Indicates whether a user is authorized to access an item in the report server database for a given catalog operation.

public:
 bool CheckAccess(System::String ^ userName, IntPtr userToken, cli::array <System::Byte> ^ secDesc, Microsoft::ReportingServices::Interfaces::CatalogOperation requiredOperation);
public bool CheckAccess (string userName, IntPtr userToken, byte[] secDesc, Microsoft.ReportingServices.Interfaces.CatalogOperation requiredOperation);
Public Function CheckAccess (userName As String, userToken As IntPtr, secDesc As Byte(), requiredOperation As CatalogOperation) As Boolean
매개 변수
userName
String String String

보고서 서버에 대한 액세스 권한을 요청하는 사용자의 이름입니다. The name of the user requesting access to the report server.

userToken
IntPtr IntPtr IntPtr

사용자 계정 토큰입니다. A user account token. 이 토큰은 주로 보고서 서버에서 Windows 인증용 자격 증명 관리를 지원하기 위해 Microsoft Windows 계정에 대한 핸들로 사용됩니다. 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
Byte[]

항목에 대한 보안 설명자입니다. The security descriptor for the item.

requiredOperation
CatalogOperation CatalogOperation CatalogOperation

보고서 서버에서 지정된 사용자에 대해 요청하는 작업입니다. The operation being requested by the report server for a given user.

반환

반환 true 현재 인증 된 사용자 제공 된 작업 및 보안 설명자에 따라 항목에 대 한 액세스 부여 됩니다. Returns true if the currently authenticated user is granted access to the item based on the supplied operation and security descriptor.

예제

사용 하 여 다음 예제 코드는 [CheckAccess 메서드 (String, IntPtr, 바이트<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A > 사용자의 권한 부여를 평가 하는 방법에 대 한 자격 증명는 보고서 서버 데이터베이스에 있는 항목에 대 한 보안 설명자입니다.The following example code uses the [CheckAccess Method (String, IntPtr, Byte<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A> method to evaluate a user's authorization credentials against a security descriptor for an item in the report server database.

Public Function CheckAccess(userName As String, userToken As IntPtr, secDesc() As Byte, requiredOperation As CatalogOperation) As Boolean  
   Dim acl As AceCollection = DeserializeAcl(secDesc)  
   Dim ace As AceStruct  
   For Each ace In  acl  
      ' First check to see if the user or group has an access control entry for the item  
      If userName = ace.PrincipalName Then  
         ' If an entry is found, return true if the given required operation  
         ' is contained in the ACE structure.  
         Dim aclOperation As CatalogOperation  
         For Each aclOperation In  ace.CatalogOperations  
            If aclOperation = requiredOperation Then  
               Return True  
            End If  
         Next aclOperation  
      End If  
   Next ace  
   Return False  
End Function 'CheckAccess  

Private Function DeserializeAcl(secDesc() As Byte) As AceCollection  
   Dim bf As New BinaryFormatter()  
   Dim sdStream As New MemoryStream(secDesc)  
   Dim acl As AceCollection = CType(bf.Deserialize(sdStream), AceCollection)  
   Return acl  
End Function 'DeserializeAcl  
public bool CheckAccess(string userName, IntPtr userToken, byte[] secDesc, CatalogOperation requiredOperation)  
{  
   AceCollection acl = DeserializeAcl(secDesc);  
   foreach(AceStruct ace in acl)  
   {  
       // First check to see if the user or group has an access control entry for the item  
      if (userName == ace.PrincipalName)  
      {  
          // If an entry is found, return true if the given required operation  
          // is contained in the ACE structure.  
         foreach(CatalogOperation aclOperation in ace.CatalogOperations)  
         {  
             if (aclOperation == requiredOperation)  
                return true;  
         }  
      }  
   }  
   return false;  
}  

private AceCollection DeserializeAcl(byte[] secDesc)  
{  
   BinaryFormatter bf = new BinaryFormatter();  
   MemoryStream sdStream = new MemoryStream(secDesc);  
   AceCollection acl = (AceCollection)bf.Deserialize(sdStream);  
   return acl;  
}  

CheckAccess(String, IntPtr, Byte[], CatalogOperation[]) CheckAccess(String, IntPtr, Byte[], CatalogOperation[]) CheckAccess(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.

public:
 bool CheckAccess(System::String ^ userName, IntPtr userToken, cli::array <System::Byte> ^ secDesc, cli::array <Microsoft::ReportingServices::Interfaces::CatalogOperation> ^ requiredOperations);
public bool CheckAccess (string userName, IntPtr userToken, byte[] secDesc, Microsoft.ReportingServices.Interfaces.CatalogOperation[] requiredOperations);
Public Function CheckAccess (userName As String, userToken As IntPtr, secDesc As Byte(), requiredOperations As CatalogOperation()) As Boolean
매개 변수
userName
String String String

보고서 서버에 대한 액세스 권한을 요청하는 사용자의 이름입니다. The name of the user requesting access to the report server.

userToken
IntPtr IntPtr IntPtr

사용자 계정 토큰입니다. A user account token. 이 토큰은 주로 보고서 서버에서 Windows 인증용 자격 증명 관리를 지원하기 위해 Microsoft Windows 계정에 대한 핸들로 사용됩니다. 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
Byte[]

항목에 대한 보안 설명자입니다. The security descriptor for the item.

requiredOperations
CatalogOperation[]

보고서 서버에서 지정된 사용자에 대해 요청하는 작업입니다. The operations being requested by the report server for a given user.

반환

반환 true 현재 인증 된 사용자 제공 된 작업 및 보안 설명자에 따라 항목에 대 한 액세스 부여 됩니다. Returns true if the currently authenticated user is granted access to the item based on the supplied operation and security descriptor.

예제

사용 하 여 다음 예제 코드는 [CheckAccess 메서드 (String, IntPtr, 바이트<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A > 사용자의 권한 부여를 평가 하는 방법에 대 한 자격 증명는 보고서 서버 데이터베이스에 있는 항목에 대 한 보안 설명자입니다.The following example code uses the [CheckAccess Method (String, IntPtr, Byte<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A> method to evaluate a user's authorization credentials against a security descriptor for an item in the report server database. 예제를 사용 하는 오버 로드 된 [CheckAccess 메서드 (문자열, IntPtr, 바이트<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A > 인수로 서 한 번의 작업을 사용 하는 메서드.The example makes use of the overloaded [CheckAccess Method (String, IntPtr, Byte<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A> method that takes a single operation as an argument.

' Overload for array of catalog operations  
Public Function CheckAccess(userName As String, userToken As IntPtr, secDesc() As Byte, requiredOperations() As CatalogOperation) As Boolean  
   Dim operation As CatalogOperation  
   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 catalog operations  
public bool CheckAccess(string userName, IntPtr userToken, byte[] secDesc, CatalogOperation[] requiredOperations)  
{  
   foreach(CatalogOperation operation in requiredOperations)  
   {  
      if (!CheckAccess(userName, userToken, secDesc, operation))  
         return false;  
   }  
   return true;   
}  

CheckAccess(String, IntPtr, Byte[], DatasourceOperation) CheckAccess(String, IntPtr, Byte[], DatasourceOperation) CheckAccess(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.

public:
 bool CheckAccess(System::String ^ userName, IntPtr userToken, cli::array <System::Byte> ^ secDesc, Microsoft::ReportingServices::Interfaces::DatasourceOperation requiredOperation);
public bool CheckAccess (string userName, IntPtr userToken, byte[] secDesc, Microsoft.ReportingServices.Interfaces.DatasourceOperation requiredOperation);
Public Function CheckAccess (userName As String, userToken As IntPtr, secDesc As Byte(), requiredOperation As DatasourceOperation) As Boolean
매개 변수
userName
String String String

보고서 서버에 대한 액세스 권한을 요청하는 사용자의 이름입니다. The name of the user requesting access to the report server.

userToken
IntPtr IntPtr IntPtr

사용자 계정 토큰입니다. A user account token. 이 토큰은 주로 보고서 서버에서 Windows 인증용 자격 증명 관리를 지원하기 위해 Microsoft Windows 계정에 대한 핸들로 사용됩니다. 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
Byte[]

항목에 대한 보안 설명자입니다. The security descriptor for the item.

requiredOperation
DatasourceOperation DatasourceOperation DatasourceOperation

보고서 서버에서 지정된 사용자에 대해 요청하는 작업입니다. The operation being requested by the report server for a given user.

반환

반환 true 현재 인증 된 사용자 제공 된 작업 및 보안 설명자에 따라 항목에 대 한 액세스 부여 됩니다. Returns true if the currently authenticated user is granted access to the item based on the supplied operation and security descriptor.

예제

사용 하 여 다음 예제 코드는 [CheckAccess 메서드 (String, IntPtr, 바이트<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A > 사용자의 권한 부여를 평가 하는 방법에 대 한 자격 증명는 보고서 서버 데이터베이스에 있는 항목에 대 한 보안 설명자입니다.The following example code uses the [CheckAccess Method (String, IntPtr, Byte<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A> method to evaluate a user's authorization credentials against a security descriptor for an item in the report server database.

Public Function CheckAccess(userName As String, userToken As IntPtr, secDesc() As Byte, requiredOperation As DatasourceOperation) As Boolean  
   Dim acl As AceCollection = DeserializeAcl(secDesc)  
   Dim ace As AceStruct  
   For Each ace In  acl  
      ' First check to see if the user or group has an access control entry for the item  
      If userName = ace.PrincipalName Then  
         ' If an entry is found, return true if the given required operation  
         ' is contained in the ACE structure.  
         Dim aclOperation As DatasourceOperation  
         For Each aclOperation In  ace.DatasourceOperations  
            If aclOperation = requiredOperation Then  
               Return True  
            End If  
         Next aclOperation  
      End If  
   Next ace  
   Return False  
End Function 'CheckAccess  
Private Function DeserializeAcl(secDesc() As Byte) As AceCollection  
   Dim bf As New BinaryFormatter()  
   Dim sdStream As New MemoryStream(secDesc)  
   Dim acl As AceCollection = CType(bf.Deserialize(sdStream), AceCollection)  
   Return acl  
End Function 'DeserializeAcl  
public bool CheckAccess(string userName, IntPtr userToken, byte[] secDesc, DatasourceOperation requiredOperation)  
{  
   AceCollection acl = DeserializeAcl(secDesc);  
   foreach(AceStruct ace in acl)  
   {  
       // First check to see if the user or group has an access control entry for the item  
      if (userName == ace.PrincipalName)  
      {  
          // If an entry is found, return true if the given required operation  
          // is contained in the ACE structure.  
         foreach(DatasourceOperation aclOperation in ace.DatasourceOperations)  
         {  
             if (aclOperation == requiredOperation)  
                return true;  
         }  
      }  
   }  
   return false;  
}  

private AceCollection DeserializeAcl(byte[] secDesc)  
{  
   BinaryFormatter bf = new BinaryFormatter();  
   MemoryStream sdStream = new MemoryStream(secDesc);  
   AceCollection acl = (AceCollection)bf.Deserialize(sdStream);  
   return acl;  
}  

CheckAccess(String, IntPtr, Byte[], FolderOperation) CheckAccess(String, IntPtr, Byte[], FolderOperation) CheckAccess(String, IntPtr, Byte[], FolderOperation)

사용자에게 지정된 폴더 작업을 위해 보고서 서버 데이터베이스의 항목에 액세스할 수 있는 권한이 있는지 여부를 나타냅니다. Indicates whether a user is authorized to access an item in the report server database for a given folder operation.

public:
 bool CheckAccess(System::String ^ userName, IntPtr userToken, cli::array <System::Byte> ^ secDesc, Microsoft::ReportingServices::Interfaces::FolderOperation requiredOperation);
public bool CheckAccess (string userName, IntPtr userToken, byte[] secDesc, Microsoft.ReportingServices.Interfaces.FolderOperation requiredOperation);
Public Function CheckAccess (userName As String, userToken As IntPtr, secDesc As Byte(), requiredOperation As FolderOperation) As Boolean
매개 변수
userName
String String String

보고서 서버에 대한 액세스 권한을 요청하는 사용자의 이름입니다. The name of the user requesting access to the report server.

userToken
IntPtr IntPtr IntPtr

사용자 계정 토큰입니다. A user account token. 이 토큰은 주로 보고서 서버에서 Windows 인증용 자격 증명 관리를 지원하기 위해 Microsoft Windows 계정에 대한 핸들로 사용됩니다. 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
Byte[]

항목에 대한 보안 설명자입니다. The security descriptor for the item.

requiredOperation
FolderOperation FolderOperation FolderOperation

보고서 서버에서 지정된 사용자에 대해 요청하는 작업입니다. The operation being requested by the report server for a given user.

반환

반환 true 현재 인증 된 사용자 제공 된 작업 및 보안 설명자에 따라 항목에 대 한 액세스 부여 됩니다. Returns true if the currently authenticated user is granted access to the item based on the supplied operation and security descriptor.

예제

사용 하 여 다음 예제 코드는 [CheckAccess 메서드 (String, IntPtr, 바이트<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A > 사용자의 권한 부여를 평가 하는 방법에 대 한 자격 증명는 보고서 서버 데이터베이스에 있는 항목에 대 한 보안 설명자입니다.The following example code uses the [CheckAccess Method (String, IntPtr, Byte<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A> method to evaluate a user's authorization credentials against a security descriptor for an item in the report server database.

Public Function CheckAccess(userName As String, userToken As IntPtr, secDesc() As Byte, requiredOperation As FolderOperation) As Boolean  
   Dim acl As AceCollection = DeserializeAcl(secDesc)  
   Dim ace As AceStruct  
   For Each ace In  acl  
      ' First check to see if the user or group has an access control entry for the item  
      If userName = ace.PrincipalName Then  
         ' If an entry is found, return true if the given required operation  
         ' is contained in the ACE structure.  
         Dim aclOperation As FolderOperation  
         For Each aclOperation In  ace.FolderOperations  
            If aclOperation = requiredOperation Then  
               Return True  
            End If  
         Next aclOperation  
      End If  
   Next ace  
   Return False  
End Function 'CheckAccess  

Private Function DeserializeAcl(secDesc() As Byte) As AceCollection  
   Dim bf As New BinaryFormatter()  
   Dim sdStream As New MemoryStream(secDesc)  
   Dim acl As AceCollection = CType(bf.Deserialize(sdStream), AceCollection)  
   Return acl  
End Function 'DeserializeAcl  
public bool CheckAccess(string userName, IntPtr userToken, byte[] secDesc, FolderOperation requiredOperation)  
{  
   AceCollection acl = DeserializeAcl(secDesc);  
   foreach(AceStruct ace in acl)  
   {  
       // First check to see if the user or group has an access control entry for the item  
      if (userName == ace.PrincipalName)  
      {  
          // If an entry is found, return true if the given required operation  
          // is contained in the ACE structure.  
         foreach(FolderOperation aclOperation in ace.FolderOperations)  
         {  
             if (aclOperation == requiredOperation)  
                return true;  
         }  
      }  
   }  
   return false;  
}  

private AceCollection DeserializeAcl(byte[] secDesc)  
{  
   BinaryFormatter bf = new BinaryFormatter();  
   MemoryStream sdStream = new MemoryStream(secDesc);  
   AceCollection acl = (AceCollection)bf.Deserialize(sdStream);  
   return acl;  
}  

CheckAccess(String, IntPtr, Byte[], FolderOperation[]) CheckAccess(String, IntPtr, Byte[], FolderOperation[]) CheckAccess(String, IntPtr, Byte[], FolderOperation[])

보고서 서버 데이터베이스에 있는 항목에 대한 작업을 위해 보안 설명자를 기준으로 사용자의 권한 부여 자격 증명을 확인합니다. Checks a user's authorization credentials against a security descriptor for operations on an item in the report server database

public:
 bool CheckAccess(System::String ^ userName, IntPtr userToken, cli::array <System::Byte> ^ secDesc, cli::array <Microsoft::ReportingServices::Interfaces::FolderOperation> ^ requiredOperations);
public bool CheckAccess (string userName, IntPtr userToken, byte[] secDesc, Microsoft.ReportingServices.Interfaces.FolderOperation[] requiredOperations);
Public Function CheckAccess (userName As String, userToken As IntPtr, secDesc As Byte(), requiredOperations As FolderOperation()) As Boolean
매개 변수
userName
String String String

보고서 서버에 대한 액세스 권한을 요청하는 사용자의 이름입니다. The name of the user requesting access to the report server.

userToken
IntPtr IntPtr IntPtr

사용자 계정 토큰입니다. A user account token. 이 토큰은 주로 보고서 서버에서 Windows 인증용 자격 증명 관리를 지원하기 위해 Microsoft Windows 계정에 대한 핸들로 사용됩니다. 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
Byte[]

항목에 대한 보안 설명자입니다. The security descriptor for the item.

requiredOperations
FolderOperation[]

보고서 서버에서 지정된 사용자에 대해 요청하는 작업입니다. The operations being requested by the report server for a given user.

반환

반환 true 현재 인증 된 사용자 제공 된 작업 및 보안 설명자에 따라 항목에 대 한 액세스 부여 됩니다. Returns true if the currently authenticated user is granted access to the item based on the supplied operation and security descriptor.

예제

사용 하 여 다음 예제 코드는 [CheckAccess 메서드 (String, IntPtr, 바이트<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A > 사용자의 권한 부여를 평가 하는 방법에 대 한 자격 증명는 보고서 서버 데이터베이스에 있는 항목에 대 한 보안 설명자입니다.The following example code uses the [CheckAccess Method (String, IntPtr, Byte<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A> method to evaluate a user's authorization credentials against a security descriptor for an item in the report server database. 예제를 사용 하는 오버 로드 된 [CheckAccess 메서드 (문자열, IntPtr, 바이트<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A > 인수로 서 한 번의 작업을 사용 하는 메서드.The example makes use of the overloaded [CheckAccess Method (String, IntPtr, Byte<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A> method that takes a single operation as an argument.

' Overload for array of folder operations  
Public Function CheckAccess(userName As String, userToken As IntPtr, secDesc() As Byte, requiredOperations() As FolderOperation) As Boolean  
   Dim operation As FolderOperation  
   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 folder operations  
public bool CheckAccess(string userName, IntPtr userToken, byte[] secDesc, FolderOperation[] requiredOperations)  
{  
   foreach(FolderOperation operation in requiredOperations)  
   {  
      if (!CheckAccess(userName, userToken, secDesc, operation))  
         return false;  
   }  
   return true;   
}  

CheckAccess(String, IntPtr, Byte[], ModelItemOperation) CheckAccess(String, IntPtr, Byte[], ModelItemOperation) CheckAccess(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.

public:
 bool CheckAccess(System::String ^ userName, IntPtr userToken, cli::array <System::Byte> ^ secDesc, Microsoft::ReportingServices::Interfaces::ModelItemOperation requiredOperation);
public bool CheckAccess (string userName, IntPtr userToken, byte[] secDesc, Microsoft.ReportingServices.Interfaces.ModelItemOperation requiredOperation);
Public Function CheckAccess (userName As String, userToken As IntPtr, secDesc As Byte(), requiredOperation As ModelItemOperation) As Boolean
매개 변수
userName
String String String

보고서 서버에 대한 액세스 권한을 요청하는 사용자의 이름입니다. The name of the user requesting access to the report server.

userToken
IntPtr IntPtr IntPtr

사용자 계정 토큰입니다. A user account token. 이 토큰은 주로 보고서 서버에서 Windows 인증용 자격 증명 관리를 지원하기 위해 Microsoft Windows 계정에 대한 핸들로 사용됩니다. 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
Byte[]

항목에 대한 보안 설명자입니다. The security descriptor for the item.

requiredOperation
ModelItemOperation ModelItemOperation ModelItemOperation

보고서 서버에서 지정된 사용자에 대해 요청하는 작업입니다. The operations being requested by the report server for a given user.

반환

반환 true 현재 인증 된 사용자 제공 된 작업 및 보안 설명자에 따라 항목에 대 한 액세스 부여 됩니다. Returns true if the currently authenticated user is granted access to the item based on the supplied operation and security descriptor.

CheckAccess(String, IntPtr, Byte[], ModelOperation) CheckAccess(String, IntPtr, Byte[], ModelOperation) CheckAccess(String, IntPtr, Byte[], ModelOperation)

사용자가 지정 된 모델 항목에 대 한 보고서 서버 데이터베이스의 항목에 액세스 권한이 있는지 여부를 나타냅니다. Indicates a value whether a user is authorized to access an item in the report server database for a given model operation.

public:
 bool CheckAccess(System::String ^ userName, IntPtr userToken, cli::array <System::Byte> ^ secDesc, Microsoft::ReportingServices::Interfaces::ModelOperation requiredOperation);
public bool CheckAccess (string userName, IntPtr userToken, byte[] secDesc, Microsoft.ReportingServices.Interfaces.ModelOperation requiredOperation);
Public Function CheckAccess (userName As String, userToken As IntPtr, secDesc As Byte(), requiredOperation As ModelOperation) As Boolean
매개 변수
userName
String String String

보고서 서버에 대한 액세스 권한을 요청하는 사용자의 이름입니다. The name of the user requesting access to the report server.

userToken
IntPtr IntPtr IntPtr

사용자 계정 토큰입니다. A user account token. 이 토큰은 주로 보고서 서버에서 Windows 인증용 자격 증명 관리를 지원하기 위해 Microsoft Windows 계정에 대한 핸들로 사용됩니다. 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
Byte[]

항목에 대한 보안 설명자입니다. The security descriptor for the item.

requiredOperation
ModelOperation ModelOperation ModelOperation

보고서 서버에서 지정된 사용자에 대해 요청하는 작업입니다. The operations being requested by the report server for a given user.

반환

true 현재 인증 된 사용자 보안 설명자;와 제공 된 작업에 따라 항목에 대 한 액세스를 부여 된 경우 그렇지 않으면 false합니다. true if the currently authenticated user is granted access to the item based on the supplied operation and security descriptor; otherwise, false.

CheckAccess(String, IntPtr, Byte[], ReportOperation) CheckAccess(String, IntPtr, Byte[], ReportOperation) CheckAccess(String, IntPtr, Byte[], ReportOperation)

사용자에게 지정된 보고서 작업을 위해 보고서 서버 데이터베이스의 항목에 액세스할 수 있는 권한이 있는지 여부를 나타냅니다. Indicates whether a user is authorized to access an item in the report server database for a given report operation.

public:
 bool CheckAccess(System::String ^ userName, IntPtr userToken, cli::array <System::Byte> ^ secDesc, Microsoft::ReportingServices::Interfaces::ReportOperation requiredOperation);
public bool CheckAccess (string userName, IntPtr userToken, byte[] secDesc, Microsoft.ReportingServices.Interfaces.ReportOperation requiredOperation);
Public Function CheckAccess (userName As String, userToken As IntPtr, secDesc As Byte(), requiredOperation As ReportOperation) As Boolean
매개 변수
userName
String String String

보고서 서버에 대한 액세스 권한을 요청하는 사용자의 이름입니다. The name of the user requesting access to the report server.

userToken
IntPtr IntPtr IntPtr

사용자 계정 토큰입니다. A user account token. 이 토큰은 주로 보고서 서버에서 Windows 인증용 자격 증명 관리를 지원하기 위해 Microsoft Windows 계정에 대한 핸들로 사용됩니다. 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
Byte[]

항목에 대한 보안 설명자입니다. The security descriptor for the item.

requiredOperation
ReportOperation ReportOperation ReportOperation

보고서 서버에서 지정된 사용자에 대해 요청하는 작업입니다. The operation being requested by the report server for a given user.

반환

반환 true 현재 인증 된 사용자 제공 된 작업 및 보안 설명자에 따라 항목에 대 한 액세스 부여 됩니다. Returns true if the currently authenticated user is granted access to the item based on the supplied operation and security descriptor.

예제

사용 하 여 다음 예제 코드는 [CheckAccess 메서드 (String, IntPtr, 바이트<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A > 사용자의 권한 부여를 평가 하는 방법에 대 한 자격 증명는 보고서 서버 데이터베이스에 있는 항목에 대 한 보안 설명자입니다.The following example code uses the [CheckAccess Method (String, IntPtr, Byte<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A> method to evaluate a user's authorization credentials against a security descriptor for an item in the report server database.

Public Function CheckAccess(userName As String, userToken As IntPtr, secDesc() As Byte, requiredOperation As ReportOperation) As Boolean  
   Dim acl As AceCollection = DeserializeAcl(secDesc)  
   Dim ace As AceStruct  
   For Each ace In  acl  
      ' First check to see if the user or group has an access control entry for the item  
      If userName = ace.PrincipalName Then  
         ' If an entry is found, return true if the given required operation  
         ' is contained in the ACE structure.  
         Dim aclOperation As ReportOperation  
         For Each aclOperation In  ace.ReportOperations  
            If aclOperation = requiredOperation Then  
               Return True  
            End If  
         Next aclOperation  
      End If  
   Next ace  
   Return False  
End Function 'CheckAccess  

Private Function DeserializeAcl(secDesc() As Byte) As AceCollection  
   Dim bf As New BinaryFormatter()  
   Dim sdStream As New MemoryStream(secDesc)  
   Dim acl As AceCollection = CType(bf.Deserialize(sdStream), AceCollection)  
   Return acl  
End Function 'DeserializeAcl  
public bool CheckAccess(string userName, IntPtr userToken, byte[] secDesc, ReportOperation requiredOperation)  
{  
   AceCollection acl = DeserializeAcl(secDesc);  
   foreach(AceStruct ace in acl)  
   {  
       // First check to see if the user or group has an access control entry for the item  
      if (userName == ace.PrincipalName)  
      {  
          // If an entry is found, return true if the given required operation  
          // is contained in the ACE structure.  
         foreach(ReportOperation aclOperation in ace.ReportOperations)  
         {  
             if (aclOperation == requiredOperation)  
                return true;  
         }  
      }  
   }  
   return false;  
}  

private AceCollection DeserializeAcl(byte[] secDesc)  
{  
   BinaryFormatter bf = new BinaryFormatter();  
   MemoryStream sdStream = new MemoryStream(secDesc);  
   AceCollection acl = (AceCollection)bf.Deserialize(sdStream);  
   return acl;  
}  

CheckAccess(String, IntPtr, Byte[], ResourceOperation) CheckAccess(String, IntPtr, Byte[], ResourceOperation) CheckAccess(String, IntPtr, Byte[], ResourceOperation)

사용자에게 지정된 리소스 작업을 위해 보고서 서버 데이터베이스의 항목에 액세스할 수 있는 권한이 있는지 여부를 나타냅니다. Indicates whether a user is authorized to access an item in the report server database for a given resource operation.

public:
 bool CheckAccess(System::String ^ userName, IntPtr userToken, cli::array <System::Byte> ^ secDesc, Microsoft::ReportingServices::Interfaces::ResourceOperation requiredOperation);
public bool CheckAccess (string userName, IntPtr userToken, byte[] secDesc, Microsoft.ReportingServices.Interfaces.ResourceOperation requiredOperation);
Public Function CheckAccess (userName As String, userToken As IntPtr, secDesc As Byte(), requiredOperation As ResourceOperation) As Boolean
매개 변수
userName
String String String

보고서 서버에 대한 액세스 권한을 요청하는 사용자의 이름입니다. The name of the user requesting access to the report server.

userToken
IntPtr IntPtr IntPtr

사용자 계정 토큰입니다. A user account token. 이 토큰은 주로 보고서 서버에서 Windows 인증용 자격 증명 관리를 지원하기 위해 Microsoft Windows 계정에 대한 핸들로 사용됩니다. 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
Byte[]

항목에 대한 보안 설명자입니다. The security descriptor for the item.

requiredOperation
ResourceOperation ResourceOperation ResourceOperation

보고서 서버에서 지정된 사용자에 대해 요청하는 작업입니다. The operation being requested by the report server for a given user.

반환

반환 true 현재 인증 된 사용자 제공 된 작업 및 보안 설명자에 따라 항목에 대 한 액세스 부여 됩니다. Returns true if the currently authenticated user is granted access to the item based on the supplied operation and security descriptor.

예제

사용 하 여 다음 예제 코드는 [CheckAccess 메서드 (String, IntPtr, 바이트<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A > 사용자의 권한 부여를 평가 하는 방법에 대 한 자격 증명는 보고서 서버 데이터베이스에 있는 항목에 대 한 보안 설명자입니다.The following example code uses the [CheckAccess Method (String, IntPtr, Byte<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A> method to evaluate a user's authorization credentials against a security descriptor for an item in the report server database.

Public Function CheckAccess(userName As String, userToken As IntPtr, secDesc() As Byte, requiredOperation As ResourceOperation) As Boolean  
   Dim acl As AceCollection = DeserializeAcl(secDesc)  
   Dim ace As AceStruct  
   For Each ace In  acl  
      ' First check to see if the user or group has an access control entry for the item  
      If userName = ace.PrincipalName Then  
         ' If an entry is found, return true if the given required operation  
         ' is contained in the ACE structure.  
         Dim aclOperation As ResourceOperation  
         For Each aclOperation In  ace.ResourceOperations  
            If aclOperation = requiredOperation Then  
               Return True  
            End If  
         Next aclOperation  
      End If  
   Next ace  
   Return False  
End Function 'CheckAccess  

Private Function DeserializeAcl(secDesc() As Byte) As AceCollection  
   Dim bf As New BinaryFormatter()  
   Dim sdStream As New MemoryStream(secDesc)  
   Dim acl As AceCollection = CType(bf.Deserialize(sdStream), AceCollection)  
   Return acl  
End Function 'DeserializeAcl  
public bool CheckAccess(string userName, IntPtr userToken, byte[] secDesc, ResourceOperation requiredOperation)  
{  
   AceCollection acl = DeserializeAcl(secDesc);  
   foreach(AceStruct ace in acl)  
   {  
       // First check to see if the user or group has an access control entry for the item  
      if (userName == ace.PrincipalName)  
      {  
          // If an entry is found, return true if the given required operation  
          // is contained in the ACE structure.  
         foreach(ResourceOperation aclOperation in ace.ResourceOperations)  
         {  
             if (aclOperation == requiredOperation)  
                return true;  
         }  
      }  
   }  
   return false;  
}  

private AceCollection DeserializeAcl(byte[] secDesc)  
{  
   BinaryFormatter bf = new BinaryFormatter();  
   MemoryStream sdStream = new MemoryStream(secDesc);  
   AceCollection acl = (AceCollection)bf.Deserialize(sdStream);  
   return acl;  
}  

CheckAccess(String, IntPtr, Byte[], ResourceOperation[]) CheckAccess(String, IntPtr, Byte[], ResourceOperation[]) CheckAccess(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.

public:
 bool CheckAccess(System::String ^ userName, IntPtr userToken, cli::array <System::Byte> ^ secDesc, cli::array <Microsoft::ReportingServices::Interfaces::ResourceOperation> ^ requiredOperations);
public bool CheckAccess (string userName, IntPtr userToken, byte[] secDesc, Microsoft.ReportingServices.Interfaces.ResourceOperation[] requiredOperations);
Public Function CheckAccess (userName As String, userToken As IntPtr, secDesc As Byte(), requiredOperations As ResourceOperation()) As Boolean
매개 변수
userName
String String String

보고서 서버에 대한 액세스 권한을 요청하는 사용자의 이름입니다. The name of the user requesting access to the report server.

userToken
IntPtr IntPtr IntPtr

사용자 계정 토큰입니다. A user account token. 이 토큰은 주로 보고서 서버에서 Windows 인증용 자격 증명 관리를 지원하기 위해 Microsoft Windows 계정에 대한 핸들로 사용됩니다. 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
Byte[]

항목에 대한 보안 설명자입니다. The security descriptor for the item.

requiredOperations
ResourceOperation[]

보고서 서버에서 지정된 사용자에 대해 요청하는 작업입니다. The operations being requested by the report server for a given user.

반환

반환 true 현재 인증 된 사용자 제공 된 작업 및 보안 설명자에 따라 항목에 대 한 액세스 부여 됩니다. Returns true if the currently authenticated user is granted access to the item based on the supplied operation and security descriptor.

예제

사용 하 여 다음 예제 코드는 [CheckAccess 메서드 (String, IntPtr, 바이트<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A > 사용자의 권한 부여를 평가 하는 방법에 대 한 자격 증명는 보고서 서버 데이터베이스에 있는 항목에 대 한 보안 설명자입니다.The following example code uses the [CheckAccess Method (String, IntPtr, Byte<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A> method to evaluate a user's authorization credentials against a security descriptor for an item in the report server database. 예제를 사용 하는 오버 로드 된 [CheckAccess 메서드 (문자열, IntPtr, 바이트<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A > 인수로 서 한 번의 작업을 사용 하는 메서드.The example makes use of the overloaded [CheckAccess Method (String, IntPtr, Byte<xref:Microsoft.ReportingServices.Interfaces.IAuthorizationExtension.CheckAccess%2A> 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;   
}  

적용 대상