Benutzerrollen und Berechtigungen für Datenbankbenutzer
Plesk bietet Benutzerrollen für Datenbankbenutzer von MySQL/MariaDB und Microsoft SQL Server. Die Rollen fungieren als Vorlagen, um einem Datenbankbenutzer Berechtigungen zuzuweisen. Die folgenden Datenbankbenutzerrollen werden unterstützt: Lesen und schreiben (Standard), Nur lesen und Nur schreiben. Für jede Rolle wird ein vordefinierter Satz von Berechtigungen festgelegt, die einem Datenbankbenutzerkonto mit dieser Rolle erteilt werden. Sie können Berechtigungssätze bearbeiten, die zu den unterschiedlichen Rollen gehören.
MySQL/MariaDB unterstützt aber auch die Rolle Benutzerdefiniert, bei der Benutzer die Zusammenstellung von Berechtigungen selbst definieren können. SQL Server-Benutzer können Berechtigungssätze, die zu Rollen gehören, nicht modifizieren.
Sie können eine Berechtigung verweigern und verhindern, dass Plesk Benutzer diese gewähren.
Weitere Details zum Auswählen von Rollen für Datenbankbenutzer unter Websites & Domains > Datenbanken > Benutzerverwaltung finden Sie unter Verwalten von Datenbankbenutzerkonten. Beachten Sie, dass Datenbankbenutzern in Administratorabonnements allgemeine Berechtigungen zusätzlich zu den Berechtigungen für Datenbanktabellen zugewiesen werden können.
Benutzerrollen für MySQL/MariaDB-Datenbanken
In Plesk mit MySQL/MariaDB können Benutzer Rollen für Datenbankbenutzer auswählen sowie individuelle Berechtigungen hinzufügen und entfernen.
Die MySQL/MariaDB-Standardberechtigungen für jede Rolle finden Sie in der Tabelle unten.
Privileg | Lesen und schreiben | Nur lesen | Nur schreiben |
---|---|---|---|
Select (Auswählen) | ➕ | ➕ | ➖ |
Insert (Einfügen) | ➕ | ➖ | ➕ |
Update (Aktualisieren) | ➕ | ➖ | ➕ |
Delete (Löschen) | ➕ | ➖ | ➕ |
Create (Erstellen) | ➕ | ➖ | ➕ |
Drop (Entfernen) | ➕ | ➖ | ➕ |
Alter (Ändern) | ➕ | ➖ | ➕ |
Index (Indexieren) | ➕ | ➖ | ➕ |
Create Temporary Tables (Temporäre Tabellen erstellen) | ➕ | ➖ | ➕ |
Lock Tables (Tabellen sperren) | ➕ | ➖ | ➕ |
Create View (Ansicht erstellen) | ➕ | ➖ | ➕ |
Show View (Ansicht anzeigen) | ➕ | ➕ | ➖ |
Wenn Sie die standardmäßigen Berechtigungssätze ändern möchten, bearbeiten Sie die Datei panel.ini und geben Sie für jede Rolle die Namen der Berechtigungen an, die Sie ändern möchten.
Denken Sie daran, dass Plesk Kunden trotzdem mehr Berechtigungen auswählen können, als Sie in der Datei panel.ini
angeben, außer Sie deaktivieren bestimmte Berechtigungen (siehe weiter unten).
Zum Beispiel:
[databaseManagement]
features.roles.mysql.readWrite = Select,Update,Insert
features.roles.mysql.readOnly = Select
features.roles.mysql.writeOnly = Update
Bemerkung: Wenn Sie den Berechtigungssatz für eine Rolle, zum Beispiel die Rolle Lesen und schreiben ändern, hat dies keine Auswirkung auf die Berechtigungen vorhandener MySQL/MariaDB-Datenbankbenutzer mit dieser Rolle. Die Rolle der betroffenen Datenbankbenutzer wird automatisch in Benutzerdefiniert geändert.
Verweigern einer Berechtigung für alle Benutzer
In manchen Fällen kann es nötig sein, allen Datenbankbenutzern eine bestimmte Berechtigung zu verweigern, z. B. die Berechtigung zum Löschen. Um eine Berechtigung zu deaktivieren, geben Sie die MySQL/MariaDB-Berechtigungen in der Datei panel.ini an und lassen dabei die Berechtigung weg, die Sie nicht gewähren möchten.
Zum Beispiel:
[databaseManagement]
features.privileges.mysql.dataAccess = Select, Insert, Update, Delete
features.privileges.mysql.structureAccess = Create, Drop, Alter, Index, Create Temporary Tables, Lock Tables, Create View, Show View
Die angegebenen Berechtigungen sind in der Plesk Benutzeroberfläche unter Websites & Domains > Datenbanken > Benutzerverwaltung zu finden. Benutzer können dann nur die angegebenen Berechtigungen aktivieren oder deaktivieren. Wenn eine Berechtigung nicht in der Liste enthalten ist, gilt sie in Plesk für den Datenbankbenutzer als nicht zugelassen.
Bemerkung: Eine Berechtigung wird nur entzogen, wenn ein Plesk Benutzer die Einstellungen für den Datenbankbenutzer ändert und speichert. Gehen Sie dazu zu Websites & Domains > Datenbanken > Benutzerverwaltung > klicken Sie auf den Benutzernamen und dann auf OK.
Benutzerrollen für Microsoft SQL Server-Datenbanken
In Plesk mit Microsoft SQL Server können Nutzer die folgenden Rollen auswählen: Lesen und schreiben, Nur lesen und Nur schreiben. Individuelle Berechtigungen (SQL Server-Benutzerrollen auf Datenbankebene) können jedoch nicht hinzugefügt oder entfernt werden. Die Berechtigungen werden nicht in der Plesk Benutzeroberfläche angezeigt.
Die Standardberechtigungen in Microsoft SQL Server für jede Rolle finden Sie in der Tabelle unten.
Berechtigung | Lesen und schreiben | Nur lesen | Nur schreiben |
---|---|---|---|
db_backupoperator | ➕ | ➕ | ➕ |
db_datareader | ➕ | ➕ | ➖ |
db_datawriter | ➕ | ➖ | ➕ |
db_ddladmin | ➕ | ➖ | ➕ |
Wenn Sie die standardmäßigen Berechtigungen für eine Rolle ändern möchten, bearbeiten Sie die Datei panel.ini und geben Sie die Namen der Berechtigungen an.
Zum Beispiel:
[databaseManagement]
features.roles.mssql.readWrite = db_datareader,db_backupoperator,db_ddladmin
features.roles.mssql.readOnly = db_datareader,db_backupoperator
features.roles.mssql.writeOnly = db_datawriter
Bemerkung: Wenn Sie den Berechtigungssatz für eine Rolle ändern, werden die Berechtigungen vorhandener Datenbankbenutzer angepasst. Alle vorhandenen und neu erstellten Benutzer mit dieser Rolle haben damit die Berechtigungen, die Sie in der Datei panel.ini
angegeben haben.
Wiederherstellen der Standardberechtigungen für Benutzer von Microsoft SQL Server
Jede Datenbankbenutzerrolle verfügt über einen Standardsatz an Berechtigungen (SQL Server-Benutzerrollen auf Datenbankebene). Wenn Sie die Berechtigungen bestehender Datenbankbenutzer auf die Standardwerte (entsprechend ihrer Rolle) zurücksetzen wollen, führen Sie den folgenden Befehl aus:
%plesk_dir%bin\repair.exe --update-mssql-users-permissions [-database-server <name>] [-database-name <name>]
Bemerkung: Wenn Sie die Berechtigungen für eine Rolle (z. B. die Rolle Lesen und schreiben) in der Datei panel.ini
ändern, werden für den Befehl --update-mssql-users-permissions
die von Ihnen angegebenen Berechtigungen anstatt der Standardberechtigungen verwendet. Die Standardberechtigungen für Lesen und schreiben sind zum Beispiel db_datareader,db_datawriter,db_backupoperator,db_ddladmin
.