Gewusst wie: Definieren von Berechtigungen für Datenbankobjekte

Sie können Berechtigungen definieren, um den Zugriff auf die Datenbank, Datenbankobjekte und selbst bestimmte Spalten in einer Tabelle zu erteilen oder aber zu widerrufen. Zum Definieren dieser Berechtigungen müssen Sie die Datei database.sqlpermissions aktualisieren.

So öffnen Sie die Datei database.sqlpermissions

  1. Öffnen Sie in Visual Studio die Projektmappe mit dem Datenbankprojekt, in dem Sie Berechtigungen definieren möchten.

  2. Erweitern Sie im Projektmappen-Explorer den Datenbankprojektknoten, erweitern Sie den Knoten Eigenschaften, und doppelklicken Sie auf Database.sqlpermissions.

Erteilen oder Widerrufen von Berechtigungen

Sie können Berechtigungen auf Detailstufen erteilen oder widerrufen:

  • Datenbankebene   Sie erteilen oder widerrufen Berechtigungen auf dieser Ebene, um den Zugriff auf bestimmte Vorgänge, z. B. CREATE TABLE, einzuschränken.

  • Datenbankobjektebene   Sie erteilen oder widerrufen Berechtigungen auf dieser Ebene, um Typen von Zugriff auf bestimmte Datenbankobjekte einzuschränken, z. B. Tabellen.

  • Tabellenspaltenebene   Sie erteilen oder widerrufen Berechtigungen auf dieser Ebene, um die Typen von Zugriff auf bestimmte Spalten in einer Tabelle einzuschränken.

So erteilen Sie Berechtigungen auf Datenbankebene

  1. Öffnen Sie die Datei database.sqlpermissions.

  2. Fügen Sie vor dem schließenden </Permissions>-Tag den folgenden XML-Code hinzu:

    <PermissionStatement Action="GRANT">
        <Permission>Operation</Permission>
        <Grantee>Username</Grantee>
    </PermissionsStatement>
    

    Ersetzen Sie Operation durch den Vorgang, für den Sie die Berechtigung erteilen möchten. Wenn Sie zum Beispiel die Berechtigung zum Erstellen von Tabellen erteilen möchten, geben Sie CREATE TABLE an.

    Ersetzen Sie Username durch den Benutzer, dem Sie diese Berechtigung gewähren möchten.

  3. Speichern und schließen Sie die Datei database.sqlpermissions.

So widerrufen Sie Berechtigungen auf Datenbankebene

  1. Öffnen Sie die Datei database.sqlpermissions.

  2. Fügen Sie vor dem schließenden </Permissions>-Tag den folgenden XML-Code hinzu:

    <PermissionStatement Action="REVOKE">
        <Permission>Operation</Permission>
        <Grantee>Username</Grantee>
    </PermissionsStatement>
    

    Ersetzen Sie Operation durch den Vorgang, für den Sie die Berechtigung widerrufen möchten. Wenn Sie zum Beispiel die Berechtigung zum Erstellen von Tabellen widerrufen möchten, geben Sie CREATE TABLE an.

    Ersetzen Sie Username durch den Benutzer, für den Sie diese Berechtigung widerrufen möchten.

  3. Speichern und schließen Sie die Datei database.sqlpermissions.

So erteilen Sie Berechtigungen für ein Datenbankobjekt

  1. Öffnen Sie die Datei database.sqlpermissions.

  2. Fügen Sie vor dem schließenden </Permissions>-Tag den folgenden XML-Code hinzu:

    <PermissionStatement Action="GRANT">
        <Permission>Operation</Permission>
        <Grantee>Username</Grantee>
        <Object Name="ObjectName" Schema="SchemaName" Type="OBJECT"/>
    </PermissionsStatement>
    

    Ersetzen Sie Operation durch den Vorgang, für den Sie die Berechtigung erteilen möchten. Wenn Sie beispielsweise die Berechtigung zum Auswählen von Daten in einer Tabelle erteilen möchten, geben Sie SELECT an.

    Ersetzen Sie Username durch den Benutzer, dem Sie diese Berechtigung gewähren möchten.

    Ersetzen Sie ObjectName durch das Objekt, für das Sie die Berechtigung erteilen möchten.

    Ersetzen Sie SchemaName durch das Schema, das das Objekt enthält.

  3. Speichern und schließen Sie die Datei database.sqlpermissions.

So widerrufen Sie Berechtigungen für ein Datenbankobjekt

  1. Öffnen Sie die Datei database.sqlpermissions.

  2. Fügen Sie vor dem schließenden </Permissions>-Tag den folgenden XML-Code hinzu:

    <PermissionStatement Action="REVOKE">
        <Permission>Operation</Permission>
        <Grantee>Username</Grantee>
        <Object Name="ObjectName" Schema="SchemaName" Type="OBJECT"/>
    </PermissionsStatement>
    

    Ersetzen Sie Operation durch den Vorgang, für den Sie die Berechtigung erteilen möchten. Wenn Sie beispielsweise die Berechtigung zum Auswählen von Daten in einer Tabelle erteilen möchten, geben Sie SELECT an.

    Ersetzen Sie Username durch den Benutzer, dem Sie diese Berechtigung gewähren möchten.

    Ersetzen Sie ObjectName durch das Objekt, für das Sie die Berechtigung erteilen möchten.

    Ersetzen Sie SchemaName durch das Schema, das das Objekt enthält.

  3. Speichern und schließen Sie die Datei database.sqlpermissions.

So erteilen Sie Berechtigungen für eine Spalte

  1. Öffnen Sie die Datei database.sqlpermissions.

  2. Fügen Sie vor dem schließenden </Permissions>-Tag den folgenden XML-Code hinzu:

    <PermissionStatement Action="GRANT">
        <Permission>Operation</Permission>
        <Grantee>Username</Grantee>
              <Object Name ="TableName" Schema ="SchemaName" Type ="OBJECT">
                <Columns Treatment ="INCLUDE">
                  <Column Name="ColumnName"/>
                </Columns>
              </Object>
    </PermissionsStatement>
    

    Ersetzen Sie Operation durch den Vorgang, für den Sie die Berechtigung erteilen möchten. Wenn Sie zum Beispiel die Berechtigung zum Erstellen von Tabellen erteilen möchten, geben Sie CREATE TABLE an.

    Ersetzen Sie Username durch den Benutzer, dem Sie diese Berechtigung gewähren möchten.

    Ersetzen Sie TableName durch das Objekt, für das Sie die Berechtigung erteilen möchten.

    Ersetzen Sie SchemaName durch das Schema, das das Objekt enthält.

    Ersetzen Sie ColumnName durch den Namen der Spalte, auf die Sie Berechtigungen anwenden möchten. Sie können mehrere <Column>-Einträge angeben, um auf mehrere Spalten Berechtigungen anzuwenden.

  3. Speichern und schließen Sie die Datei database.sqlpermissions.

So widerrufen Sie Berechtigungen für eine Spalte

  1. Öffnen Sie die Datei database.sqlpermissions.

  2. Fügen Sie vor dem schließenden </Permissions>-Tag den folgenden XML-Code hinzu:

    <PermissionStatement Action="REVOKE">
        <Permission>Operation</Permission>
        <Grantee>Username</Grantee>
              <Object Name ="TableName" Schema ="SchemaName" Type ="OBJECT">
                <Columns Treatment ="INCLUDE">
                  <Column Name="ColumnName"/>
                </Columns>
              </Object>
    </PermissionsStatement>
    

    Ersetzen Sie Operation durch den Vorgang, für den Sie die Berechtigung erteilen möchten. Wenn Sie zum Beispiel die Berechtigung zum Erstellen von Tabellen erteilen möchten, geben Sie CREATE TABLE an.

    Ersetzen Sie Username durch den Benutzer, dem Sie diese Berechtigung gewähren möchten.

    Ersetzen Sie TableName durch das Objekt, für das Sie die Berechtigung erteilen möchten.

    Ersetzen Sie SchemaName durch das Schema, das das Objekt enthält.

    Ersetzen Sie ColumnName durch den Namen der Spalte, auf die Sie Berechtigungen anwenden möchten. Sie können mehrere <Column>-Einträge angeben, um auf mehrere Spalten Berechtigungen anzuwenden.

  3. Speichern und schließen Sie die Datei database.sqlpermissions.

Siehe auch

Aufgaben

Gewusst wie: Erstellen eines Datenbankobjekts

Gewusst wie: Ändern von Datenbankobjekten

Konzepte

Erstellen und Ändern von Datenbank- und Serverobjekten