Udostępnij za pośrednictwem


Metoda IAuthorizationExtension.CreateSecurityDescriptor

Zwraca deskryptor zabezpieczeń przechowywanych z poszczególnych towarów w baza danych serwera raportów.

Przestrzeń nazw:  Microsoft.ReportingServices.Interfaces
Zestawy:   Microsoft.ReportingServices.SharePoint.UI.WebParts (w Microsoft.ReportingServices.SharePoint.UI.WebParts.dll)
  Microsoft.ReportingServices.Interfaces (w Microsoft.ReportingServices.Interfaces.dll)

Składnia

'Deklaracja
<StrongNameIdentityPermissionAttribute(SecurityAction.LinkDemand, PublicKey := "0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")> _
Function CreateSecurityDescriptor ( _
    acl As AceCollection, _
    itemType As SecurityItemType, _
    <OutAttribute> ByRef stringSecDesc As String _
) As Byte()
'Użycie
Dim instance As IAuthorizationExtension
Dim acl As AceCollection
Dim itemType As SecurityItemType
Dim stringSecDesc As String
Dim returnValue As Byte()

returnValue = instance.CreateSecurityDescriptor(acl, _
    itemType, stringSecDesc)
[StrongNameIdentityPermissionAttribute(SecurityAction.LinkDemand, PublicKey = "0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")]
byte[] CreateSecurityDescriptor(
    AceCollection acl,
    SecurityItemType itemType,
    out string stringSecDesc
)
[StrongNameIdentityPermissionAttribute(SecurityAction::LinkDemand, PublicKey = L"0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")]
array<unsigned char>^ CreateSecurityDescriptor(
    AceCollection^ acl, 
    SecurityItemType itemType, 
    [OutAttribute] String^% stringSecDesc
)
[<StrongNameIdentityPermissionAttribute(SecurityAction.LinkDemand, PublicKey = "0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")>]
abstract CreateSecurityDescriptor : 
        acl:AceCollection * 
        itemType:SecurityItemType * 
        stringSecDesc:string byref -> byte[] 
function CreateSecurityDescriptor(
    acl : AceCollection, 
    itemType : SecurityItemType, 
    stringSecDesc : String
) : byte[]

Parametry

  • stringSecDesc
    Typ: System.String%
    Opcjonalne.Przyjazny opis deskryptora zabezpieczeń używany do debugowania.To nie jest przechowywana przez serwer raportów.

Wartość zwracana

Typ: array<System.Byte[]
Wykaz seryjny kod dostępu.

Uwagi

Wdrożenie tej metoda szeregować na liście kod dostępu, zastosowany do element baza danych serwera raportów.

Deskryptor zabezpieczeń opisano poniżej:

  • Grupy lub użytkownika, typie uprawnień do wykonywania operacji na element.

  • Typ element.

  • Listy arbitralnej kontroli dostępu kontrolowanie dostępu do element.

Można kontrolować dostęp do element i jego właściwości za pomocą deskryptora zabezpieczeń.Za pomocą deskryptora zabezpieczeń programu SQL Server Reporting Services, można:

  • Udziel dostępu zarządca prawa do element i jego właściwości.

  • Identyfikowanie powiernicy przy użyciu głównej nazwy lub identyfikatora użytkownika.

  • Ustaw, pobierać i zmodyfikować deskryptora programowo.

Deskryptor zabezpieczeń każdego element jest utworzona przez wywołanie do CreateSecurityDescriptor metoda i dostępne przez wywołanie CheckAccess za pośrednictwem serwer raportów.Ta właściwość jest deskryptor element w tablicy bajtowej seryjnych.Deskryptor fizycznie znajduje się w baza danych serwera raportów, która wewnętrznie jest oparta na zbiór wpisów kontroli dostępu.Żądanie dostępu Sprawdź element tablicy bajtowej jest pobierane z bazy danych i przekazanej jako argument do CheckAccess metoda.Gdy można zestaw właściwość element, AceCollection jest przekazywana i są wymagane do tworzenia deskryptora binarne dla element.

Przykłady

W poniższym przykładzie użyto CreateSecurityDescriptor metoda szeregować na liście kod dostępu dla element baza danych serwera raportów.Ta metoda służy do serializacji dodatkowe zabezpieczenia lub uwierzytelnianie informacji jako część deskryptora zabezpieczeń.

Public Function CreateSecurityDescriptor(acl As AceCollection, itemType As SecurityItemType, ByRef stringSecDesc As String) As Byte()
   ' Creates a memory stream and serializes the ACL for storage.
   Dim bf As New BinaryFormatter()
   Dim result As New MemoryStream()
   bf.Serialize(result, acl)
   stringSecDesc = Nothing
   Return result.GetBuffer()
End Function 'CreateSecurityDescriptor
public byte[] CreateSecurityDescriptor(AceCollection acl, SecurityItemType itemType, out string stringSecDesc)
{
   // Creates a memory stream and serializes the ACL for storage.
   BinaryFormatter bf = new BinaryFormatter();
   MemoryStream result = new MemoryStream();
   bf.Serialize(result, acl);
   stringSecDesc = null;
   return result.GetBuffer();
}