IAuthorizationExtension.CreateSecurityDescriptor Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt den Sicherheitsdeskriptor zurück, der zusammen mit einem einzelnen Element in der Berichtsserver-Datenbank gespeichert ist.
public:
cli::array <System::Byte> ^ CreateSecurityDescriptor(Microsoft::ReportingServices::Interfaces::AceCollection ^ acl, Microsoft::ReportingServices::Interfaces::SecurityItemType itemType, [Runtime::InteropServices::Out] System::String ^ % stringSecDesc);
public byte[] CreateSecurityDescriptor(Microsoft.ReportingServices.Interfaces.AceCollection acl, Microsoft.ReportingServices.Interfaces.SecurityItemType itemType, out string stringSecDesc);
abstract member CreateSecurityDescriptor : Microsoft.ReportingServices.Interfaces.AceCollection * Microsoft.ReportingServices.Interfaces.SecurityItemType * string -> byte[]
Public Function CreateSecurityDescriptor (acl As AceCollection, itemType As SecurityItemType, ByRef stringSecDesc As String) As Byte()
Parameter
- acl
- AceCollection
Die Zugangscode-Liste, die vom Berichtsserver für den Eintrag erstellt wurde. Es enthält eine Sammlung von Zugangscode-Einträgen.
- itemType
- SecurityItemType
Die Art des Artikels, für den der Sicherheitsdeskriptor erstellt wird.
- stringSecDesc
- String
Dies ist optional. Eine benutzerfreundliche Beschreibung des Sicherheitsbeschreibens, der zum Debugging verwendet werden kann. Dies wird nicht vom Berichtsserver gespeichert.
Gibt zurück
Eine Liste der serialisierten Zugangscodes.
Beispiele
Das folgende Beispiel verwendet die Methode CreateSecurityDescriptor , um die Zugangscode-Liste für einen Eintrag in der Berichtsdatenbank zu serialisieren. Sie können diese Methode nutzen, um zusätzliche Sicherheits- oder Authentifizierungsinformationen als Teil des Sicherheitsdeskriptors zu serialisieren.
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();
}
Hinweise
Implementieren Sie diese Methode, um die Zugangscode-Liste zu serialisieren, die auf ein Element in der Berichtsdatenbank angewendet wird.
Eine Sicherheitsbeschreibung beschreibt Folgendes:
Die Gruppe oder der Benutzer, der eine Art Berechtigung hat, Operationen am Objekt durchzuführen.
Der Elementtyp.
Eine diskretionäre Zugriffskontrollliste, die den Zugriff auf den Gegenstand steuert.
Man kann den Zugriff auf einen Gegenstand und seine Eigenschaften mit einem Sicherheitsdeskriptor steuern. Mit einem SQL Server Reporting Services-Sicherheitsdeskriptor können Sie:
Gewähren Sie einem Treuhänder Zugangsrechte zu einem Gegenstand und dessen Eigentum.
Identifizieren Sie Treuhänder mit einem Hauptnamen oder einer Benutzer-ID.
Setze, rufe ab und modifiziere den Deskriptor programmatisch.
Der Sicherheitsdeskriptor jedes Elements wird durch einen Aufruf der Methode CreateSecurityDescriptor erstellt und durch einen Aufruf CheckAccess über den Berichtsserver aufgerufen. Diese Eigenschaft ist der Deskriptor des Elements in einem serialisierten Byte-Array. Der Deskriptor wird physisch in der Berichtsserver-Datenbank gespeichert, die intern auf einer Sammlung von Zugriffskontrolleinträgen basiert. Wenn Sie eine Zugriffsprüfung auf ein Element anfordern, wird das Byte-Array aus der Datenbank abgerufen und als Argument an die Methode CheckAccess weitergegeben. Wenn Sie diese Eigenschaft für ein Element setzen, wird die passiert AceCollection und Sie müssen den binären Deskriptor für das Element erstellen.