Plesk offre ruoli utente per gli utenti del database MySQL e Microsoft SQL Server. I ruoli agiscono come modelli che aiutano ad assegnare i permessi più velocemente a un utente del database. Sono supportati i seguenti ruoli utente del database: Lettura e scrittura (utilizzato per impostazione predefinita), Solo Lettura e Solo Scrittura. Ogni ruolo ha un set di privilegi predefiniti che vengono concessi a un account utente del database con tale ruolo. È possibile modificare set di privilegi che corrispondono a differenti ruoli.

Inoltre, MySQL supporta il ruolo Personalizzato che corrisponde a un set predefinito di privilegi definiti dall’utente. Gli utenti di SQL Server non possono modificare set di permessi che includono ruoli.

È possibile negare un permesso e proibire agli utenti Plesk che lo concedano.

Per i dettagli su come selezionare ruoli per gli utenti del database in Siti Web e Domini > Database > Gestione di utenti, vedi Gestione di account utente del database. Tieni presente che gli utenti del database sugli abbonamenti dell’amministratore possono ottenere privilegi globali oltre ai diritti sulle tabelle del database.

Ruoli utente di MySQL Database

In Plesk con MySQL, gli utenti possono selezionare ruoli per gli utenti del database, nonché aggiungere o rimuovere privilegi individuali.

I set predefiniti di privilegi MySQL per ogni ruolo sono elencati sotto.

Privilegio Lettura e scrittura Solo Lettura Solo Scrittura
Seleziona
Inserisci
Aggiorna
Elimina
Crea
Rilascia
Altera
Indice
Crea tabelle temporanee
Blocca tabelle
Crea visualizzazione
Mostra visualizzazione

Per modificare i set predefiniti di privilegi, modifica il file panel.ini ed elenca i nomi di privilegi per ogni ruolo che desideri modificare.

Ricorda che i clienti Plesk possono comunque selezionare altri privilegi da te specificati in panel.ini a meno che tu non proibisca determinati privilegi (vedi più avanti in questa pagina).

Ad esempio:

[databaseManagement]
features.roles.mysql.readWrite = Select,Update,Insert
features.roles.mysql.readOnly = Select
features.roles.mysql.writeOnly = Update

Nota: Cambiare il set di privilegi per un ruolo (per esempio, il ruolo Lettura e scrittura) non incide sui privilegi degli utenti del database MySQL esistenti con questo ruolo. Tuttavia, il ruolo di tali utenti del database cambierà automaticamente in Personalizzato.

Come negare un privilegio a tutti gli utenti

Potrebbe essere necessario negare un determinato privilegio per tutti gli utenti del database, ad esempio, il privilegio Annulla. Per negare un privilegio, specifica la lista di privilegi MySQL nel file panel.ini e ometti il privilegio che desideri negare.

Ad esempio:

[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

I privilegi specificati vengono mostrati nella UI di Plesk (Siti Web e Domini > Database > Gestione di utenti). Gli utenti saranno in grado di concedere o revocare soltanto i privilegi specificati. Se un privilegio non è presente nella lista, Plesk lo contempla come negato per un utente del database.

Nota: Un privilegio è negato soltanto dopo che un utente Plesk salva qualsiasi modifica nelle impostazioni dell’utente del database (Siti Web e Domini > Database > Gestione di utenti > fai clic su un nome utente > fai clic su OK).

Ruoli utente del database Microsoft SQL Server

In Plesk con Microsoft SQL Server, gli utenti possono selezionare i ruoli (Lettura e scrittura, Solo lettura, Solo scrittura), ma non possono aggiungere né rimuovere i permessi individuali (ruoli a livello del database di SQL Server). I permessi non sono mostrati nella UI di Plesk.

I permessi predefiniti su Microsoft SQL Server per ogni ruolo sono elencati sotto:

Permesso Lettura e scrittura Solo Lettura Solo Scrittura
db_backupoperator
db_datareader
db_datawriter
db_ddladmin

Per modificare il set di autorizzazioni predefinito per ciascun ruolo, modifica il file panel.ini ed elenca i nomi delle autorizzazioni.

Ad esempio:

[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

Nota: Quando modifichi il set di permessi per un ruolo, i permessi degli utenti del database esistenti vengono modificati. Tutti gli utenti esistenti e quelli appena creati con questo ruolo hanno gli stessi permessi specificati in panel.ini.

Come ripristinare i permessi predefiniti per gli utenti di Microsoft SQL Server

Ogni ruolo utente del database ha il proprio set predefinito di permessi (ruoli utente a livello del server SQL). Per reimpostare i permessi degli utenti del database esistenti ai valori predefiniti (secondo il proprio ruolo), esegui il seguente comando:

%plesk_dir%\bin\repair.exe --update-mssql-users-permissions [-database-server <nome>] [-database-name <nome>]

Nota: Se avevi modificato i permessi per un ruolo (ad esempio, il ruolo Lettura e scrittura) in panel.ini, il comando --update-mssql-users-permissions userà il set di permessi che hai specificato, piuttosto che il set predefinito (per esempio il set predefinito per Lettura e Scrittura è db_datareader,db_datawriter,db_backupoperator,db_ddladmin).