Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo descrive come creare utenti all'interno di un'istanza del server flessibile di Database di Azure per PostgreSQL.
Si supponga di voler imparare a creare e gestire gli utenti della sottoscrizione di Azure e i relativi privilegi. In tal caso, è possibile visitare l'articolo Controllo degli accessi in base al ruolo di Azure o esaminare come personalizzare i ruoli.
Account amministratore del server
Quando è stata creata per la prima volta l'istanza del server flessibile di Database di Azure per PostgreSQL, è stato specificato un nome utente e una password dell'amministratore del server. Per altre informazioni, vedere Creare un database di Azure per PostgreSQL per vedere l'approccio dettagliato. Poiché il nome utente amministratore del server è un nome personalizzato, è possibile individuare il nome utente amministratore del server scelto dal portale di Azure.
L'istanza del server flessibile di Database di Azure per PostgreSQL viene creata con i tre ruoli predefiniti definiti. È possibile visualizzare questi ruoli eseguendo il comando : SELECT rolname FROM pg_roles;
- azure_pg_admin
- azuresu
- utente amministratore del server
L'utente amministratore del server è membro del ruolo di azure_pg_admin. Tuttavia, l'account amministratore del server non fa parte del ruolo azuresu. Poiché questo servizio è un servizio PaaS gestito, solo Microsoft fa parte del ruolo utente con privilegi avanzati.
Il motore PostgreSQL usa i privilegi per controllare l'accesso agli oggetti di database, come descritto nella documentazione del prodotto PostgreSQL. In Database di Azure per PostgreSQL all'utente amministratore del server vengono concessi questi privilegi:
- Accedere, NOSUPERUSER, INHERIT, CREATEDB, CREATEROLE
L'account utente amministratore del server può essere usato per creare più utenti e concedere tali utenti al ruolo di azure_pg_admin. Inoltre, l'account amministratore del server può essere usato per creare utenti e ruoli con privilegi inferiori che hanno accesso a singoli database e schemi.
Come creare più utenti amministratori in Database di Azure per PostgreSQL
Ottenere le informazioni di connessione e il nome utente amministratore. Per connettersi all'istanza del server flessibile di Database di Azure per PostgreSQL sono necessari il nome completo del server e le credenziali di accesso amministratore. È possibile trovare facilmente il nome del server e le informazioni di accesso dalla pagina Panoramica del server o dalla pagina Proprietà nel portale di Azure.
Usare l'account amministratore e la password per connettersi all'istanza del server flessibile di Database di Azure per PostgreSQL. Usare lo strumento client preferito, ad esempio pgAdmin o psql. Se non si è certi di come connettersi, vedere Creare un database di Azure per PostgreSQL.
Modificare ed eseguire il codice SQL seguente. Sostituire il nuovo nome utente con il valore <segnaposto new_user> e sostituire la password segnaposto con la password complessa.
CREATE USER <new_user> CREATEDB CREATEROLE PASSWORD '<StrongPassword!>'; GRANT azure_pg_admin TO <new_user>;
Come creare utenti di database in Database di Azure per PostgreSQL
Ottenere le informazioni di connessione e il nome utente amministratore. Per connettersi all'istanza del server flessibile di Database di Azure per PostgreSQL sono necessari il nome completo del server e le credenziali di accesso amministratore. È possibile trovare facilmente il nome del server e le informazioni di accesso dalla pagina Panoramica del server o dalla pagina Proprietà nel portale di Azure.
Usare l'account amministratore e la password per connettersi all'istanza del server flessibile di Database di Azure per PostgreSQL. Usare lo strumento client preferito, ad esempio pgAdmin o psql.
Modificare ed eseguire il codice SQL seguente. Sostituire il valore
<db_user>segnaposto con il nuovo nome utente desiderato e il valore<newdb>segnaposto con il proprio nome di database. Sostituire la password segnaposto con la password complessa.Questo codice SQL seguente crea un nuovo database, quindi crea un nuovo utente nell'istanza del server flessibile di Database di Azure per PostgreSQL e concede il privilegio di connessione al nuovo database per tale utente.
CREATE DATABASE <newdb>; CREATE USER <db_user> PASSWORD '<StrongPassword!>'; GRANT CONNECT ON DATABASE <newdb> TO <db_user>;Usando un account amministratore, potrebbe essere necessario concedere altri privilegi per proteggere gli oggetti nel database. Per altre informazioni sui ruoli e i privilegi del database, vedere la documentazione di PostgreSQL . Per esempio:
GRANT ALL PRIVILEGES ON DATABASE <newdb> TO <db_user>;Se un utente crea una tabella "role", la tabella appartiene a tale utente. Se un altro utente deve accedere alla tabella, è necessario concedere privilegi all'altro utente a livello di tabella.
Per esempio:
GRANT SELECT ON ALL TABLES IN SCHEMA <schema_name> TO <db_user>;Accedere al server, specificando il database designato, usando il nuovo nome utente e la nuova password. Questo esempio mostra la riga di comando psql. Con questo comando viene richiesto di immettere la password per il nome utente. Sostituire il nome del server, il nome del database e il nome utente.
psql --host=mydemoserver.postgres.database.azure.com --port=5432 --username=db_user --dbname=newdb