Sicherheit der CLR-Integration

Das Sicherheitsmodell der SQL Server-Integration in die .NET Framework-CLR (Common Language Runtime) dient zur Verwaltung und zum Schutz des Zugriffs auf verschiedene Typen von CLR-Objekten und anderen Objekten, die in SQL Server ausgeführt werden. Diese Objekte werden möglicherweise durch eine Transact-SQL-Anweisung oder ein anderes CLR-Objekt, das im Server ausgeführt wird, aufgerufen. Die Aufrufe zwischen Objekten werden als Links bezeichnet. Die Typen von Sicherheitsüberprüfungen, die für diese Objekte ausgeführt werden, hängen von den betroffenen Linktypen ab.

Das Sicherheitsmodell der CLR Integration dient folgenden Zielen:

  • Standardmäßig sollte durch die Ausführung von verwaltetem Benutzercode in SQL Server die Integrität und Stabilität von SQL Server nicht beeinträchtigt werden. Die Durchführung von Vorgängen, die die Stabilität von SQL Server potenziell beeinträchtigen, sollte durch entsprechende Berechtigungen auf höherer Ebene geschützt werden.

  • Verwalteter Benutzercode sollte keinen unbefugten Zugriff auf Benutzerdaten oder anderen in der Datenbank enthaltenen Benutzercode erhalten. Benutzerdefinierter Code sollte in dem Sicherheitskontext der Benutzersitzung, in der er aufgerufen wurde, und mit den richtigen Berechtigungen für diesen Sicherheitskontext ausgeführt werden.

  • Der Benutzercode sollte durch geeignete Maßnahmen daran gehindert werden, auf Ressourcen außerhalb des Servers zuzugreifen, sodass er ausschließlich für den Zugriff auf lokale Daten und Berechnungen genutzt wird.

  • Benutzerdefinierter Code sollte nicht in der Lage sein, nur deshalb unbefugten Zugriff auf Systemressourcen zu erlangen, weil er im SQL Server-Prozess ausgeführt wird.

SQL Server kombiniert jetzt das benutzerbasierte Sicherheitsmodell von SQL Server mit dem auf dem Codezugriff basierenden Sicherheitsmodell der CLR. Einige Vorteile dieses kombinierten Sicherheitsansatzes werden in diesem Abschnitt erläutert.

In der folgenden Tabelle sind die Themen dieses Abschnitts aufgeführt.

Siehe auch

Konzepte

Verwalten von CLR-Integrationsassemblys