Freigeben über


Erteilen einer Berechtigung für einen Prinzipal

Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) SQL-Datenbank in Microsoft Fabric

In diesem Artikel wird beschrieben, wie Sie einem Prinzipal in SQL Server mithilfe von SQL Server Management Studio oder Transact-SQL die Berechtigung erteilen.

Sicherheit

Der Berechtigende (oder der mit der AS-Option angegebene Prinzipal) muss entweder über die Berechtigung selbst mit GRANT OPTION oder über eine höhere Berechtigung verfügen, in der die erteilte Berechtigung impliziert ist.

Verwenden von SQL Server Management Studio

Erteilen einer Berechtigung für einen Prinzipal

  1. Erweitern Sie im Objekt-Explorer die Datenbank, die das Objekt enthält, dem Sie Berechtigungen gewähren möchten.

    Hinweis

    In diesen Schritten geht es ausdrücklich um das Gewähren von Berechtigungen für eine gespeicherte Prozedur. Sie können jedoch auch ähnliche Schritte vollziehen, um Tabellen, Sichten, Funktionen, Assemblys sowie anderen sicherungsfähigen Elementen Berechtigungen hinzuzufügen. Weitere Informationen finden Sie unter GRANT (Transact-SQL).

  2. Erweitern Sie den Ordner Programmierbarkeit .

  3. Erweitern Sie den Ordner Gespeicherte Prozeduren .

  4. Klicken Sie mit der rechten Maustaste auf eine gespeicherte Prozedur, und wählen Sie Eigenschaftenaus.

  5. Wählen Sie im Dialogfeld " Eigenschaften der gespeicherten Prozedur" die Seite "Berechtigungen" aus. Verwenden Sie diese Seite, um der gespeicherten Prozedur Benutzer oder Rollen hinzuzufügen und um die Berechtigungen anzugeben, die diese Benutzer oder Rollen haben.

  6. Wenn Sie fertig sind, wählen Sie OK aus.

Verwenden von Transact-SQL

Erteilen einer Berechtigung für einen Prinzipal

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-Engine-Instanz her.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.

  3. Kopieren Sie das folgende Beispiel in das Abfragefenster, und klicken Sie dann auf Ausführen. Im folgenden Beispiel wird die EXECUTE-Berechtigung für die gespeicherte Prozedur HumanResources.uspUpdateEmployeeHireInfo einer Anwendungsrolle gewährt, die aufgerufen wird Recruiting11.

    -- Grants EXECUTE permission on stored procedure HumanResources.uspUpdateEmployeeHireInfo to an application role called Recruiting11.   
    USE AdventureWorks2022;  
    GO  
    GRANT EXECUTE ON OBJECT::HumanResources.uspUpdateEmployeeHireInfo  
        TO Recruiting11;  
    GO  
    

Weitere Informationen finden Sie unter GRANT (Transact-SQL) und GRANT-Objektberechtigungen (Transact-SQL).

Begrenzungen

Mit den folgenden Best Practices wird die Verwaltung von Berechtigungen erleichtert.

  • Erteilen von Berechtigungen für Rollen statt einzelner Anmeldenamen oder Benutzer. Wenn eine Einzelperson durch eine andere ersetzt wird, kann fortgehende Einzelperson aus der Rolle entfernt und die neue Person der Rolle hinzugefügt werden. Die vielen Berechtigungen, die der Rolle möglicherweise zugeordnet sind, sind für die neue Einzelperson automatisch verfügbar. Wenn mehrere Personen in einer Organisation die gleichen Berechtigungen benötigen, können Sie diese der Rolle hinzufügen und ihnen so die gleichen Berechtigungen gewähren.

  • Konfigurieren Sie ähnliche sicherungsfähige Elemente (Tabellen, Sichten und Prozeduren) als im Besitz eines Schemas befindlich, und gewähren Sie dem Schema anschließend Berechtigungen. Beispielsweise kann das Lohnlistenschema mehrere Tabellen, Sichten und gespeicherte Prozeduren besitzen. Durch Gewähren des Zugriffs für das Schema können alle zum Ausführen der Lohnlistenfunktion erforderlichen Berechtigungen gleichzeitig erteilt werden. Weitere Informationen zu den sicherungsfähigen Elementen, denen Berechtigungen gewährt werden können, finden Sie unter Securables.

  • In der SQL-Datenbank in Microsoft Fabric ist die Microsoft Entra-ID für Datenbankbenutzer die einzige unterstützte Authentifizierungsmethode. Rollen und Berechtigungen auf Serverebene sind nicht verfügbar, nur auf Datenbankebene. Weitere Informationen finden Sie unter Autorisierung in der SQL-Datenbank in Microsoft Fabric.