Creare un profilo di Posta elettronica database
Si applica a: SQL Server Istanza gestita di SQL di Azure
Per creare profili pubblici e privati di Posta elettronica database, è possibile usare Configurazione guidata posta elettronica database o Transact-SQL. Per altre informazioni sui profili di Posta elettronica database, vedere Profilo di Posta elettronica database.
Prima di iniziare
Prerequisiti
Creare uno o più account di Posta elettronica database per il profilo. Per altre informazioni sulla creazione di account di Posta elettronica database, vedere Creare un account di Posta elettronica database.
Sicurezza
Gli utenti in grado di accedere al database msdb
possono usare un profilo pubblico per inviare messaggi di posta elettronica. Un profilo privato può essere utilizzato da un utente o da un ruolo. Concedendo ai ruoli l'accesso ai profili viene creata un'architettura gestita in modo più semplice. Solo un membro del ruolo DatabaseMailUserRole del database msdb
con accesso ad almeno un profilo di Posta elettronica database può inviare messaggi di posta elettronica.
Autorizzazioni
Per creare gli account dei profili ed eseguire le stored procedure è necessario che l'utente sia un membro del ruolo predefinito del server sysadmin.
Usare Configurazione guidata Posta elettronica database
Per creare un profilo di Posta elettronica database
In Esplora oggetti, connettersi all'istanza di SQL Server su cui si desidera configurare Posta elettronica database ed espandere l'albero di server.
Espandere il nodo Gestione
Fare doppio clic su Posta elettronica database per aprire la Configurazione guidata posta elettronica database.
Nella pagina Selezione attività di configurazione selezionare l'opzione Gestisci account e profili di Posta elettronica database e poi Avanti.
Nella pagina Gestione profili e account selezionare l'opzione Crea un nuovo profilo e poi Avanti.
Nella pagina Nuovo profilo specificare il nome e la descrizione del profilo e aggiungere gli account da includere nel profilo, quindi selezionare Avanti.
Per completare la creazione del nuovo profilo, rivedere le azioni da eseguire nella pagina Completamento procedura guidata quindi selezionare Fine.
Per configurare un profilo privato di Posta elettronica database:
Aprire la configurazione guidata posta elettronica database.
Nella pagina Selezione attività di configurazione selezionare l'opzione Gestisci account e profili di Posta elettronica database e poi Avanti.
Nella pagina Gestione profili e account selezionare l'opzione Gestione sicurezza profilo e poi Avanti.
Nella scheda Profili privati selezionare la casella di controllo per il profilo che si desidera configurare e poi Avanti.
Per completare la configurazione del profilo, rivedere le azioni da eseguire nella pagina Completamento procedura guidata quindi selezionare Fine.
Per configurare un profilo pubblico di Posta elettronica database:
Aprire la configurazione guidata posta elettronica database.
Nella pagina Selezione attività di configurazione selezionare l'opzione Gestisci account e profili di Posta elettronica database e poi Avanti.
Nella pagina Gestione profili e account selezionare l'opzione Gestione sicurezza profilo e poi Avanti.
Nella scheda Profili pubblici selezionare la casella di controllo per il profilo che si desidera configurare e poi Avanti.
Per completare la configurazione del profilo, rivedere le azioni da eseguire nella pagina Completamento procedura guidata quindi selezionare Fine.
Usare Transact-SQL
Creare un profilo privato di Posta elettronica database
Connettersi all'istanza di SQL Server con SQL Server Management Studio (SSMS) o Azure Data Studio. Aprire una nuova finestra Query.
Per creare un nuovo profilo, eseguire la stored procedure di sistema sysmail_add_profile_sp (Transact-SQL) come illustrato di seguito:
EXECUTE msdb.dbo.sysmail_add_profile_sp @profile_name = 'Profile Name' , @description = 'Description';
Nello script precedente @profile_name corrisponde al nome del profilo e @description corrisponde alla descrizione di questo. Il parametro è facoltativo.
Per ogni account, eseguire la stored procedure sysmail_add_profileaccount_sp (Transact-SQL) come descritto di seguito:
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp @profile_name = 'Profile Name' , @account_name = 'Name of the account' , @sequence_number = 'sequence number of the account within the profile.';
Nel precedente script di esempio @profile_name corrisponde al nome del profilo, @account_name corrisponde al nome dell'account da aggiungere al profilo e @sequence_number determina l'ordine con cui gli account vengono usati nel profilo.
Concedere l'accesso al profilo a ogni utente o ruolo del database che invierà posta elettronica tramite questo profilo. A tale scopo, eseguire la stored procedure sysmail_add_principalprofile_sp (Transact-SQL) come descritto di seguito:
EXECUTE msdb.sysmail_add_principalprofile_sp @profile_name = 'Name of the profile' , @principal_name = 'Name of the database user or role' , @is_default = 'Default profile enabled';
Nel precedente script di esempio @profile_name corrisponde al nome del profilo, @principal_name corrisponde al nome dell'utente o del ruolo del database e @is_default determina se il profilo dell'utente o del ruolo del database è quello predefinito o meno.
Nell'esempio seguente vengono creati un account e un profilo privato di Posta elettronica database, viene quindi aggiunto l'account al profilo e viene concesso al ruolo del database DBMailUsers nel database msdb
l'accesso al profilo.
-- Create a Database Mail account
EXECUTE msdb.dbo.sysmail_add_account_sp
@account_name = 'AdventureWorks Administrator',
@description = 'Mail account for administrative e-mail.',
@email_address = 'dba@Adventure-Works.com',
@replyto_address = 'danw@Adventure-Works.com',
@display_name = 'AdventureWorks Automated Mailer',
@mailserver_name = 'smtp.Adventure-Works.com' ;
-- Create a Database Mail profile
EXECUTE msdb.dbo.sysmail_add_profile_sp
@profile_name = 'AdventureWorks Administrator Profile',
@description = 'Profile used for administrative mail.' ;
-- Add the account to the profile
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
@profile_name = 'AdventureWorks Administrator Profile',
@account_name = 'AdventureWorks Administrator',
@sequence_number =1 ;
-- Grant access to the profile to the DBMailUsers role
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
@profile_name = 'AdventureWorks Administrator Profile',
@principal_name = 'ApplicationUser',
@is_default = 1 ;
Creare un profilo pubblica di Posta elettronica database
Eseguire la connessione all'istanza di SQL Server.
Per creare un nuovo profilo, eseguire la stored procedure di sistema sysmail_add_profile_sp (Transact-SQL) come illustrato di seguito:
EXECUTE msdb.dbo.sysmail_add_profile_sp @profile_name = 'Profile Name' , @description = 'Description';
Nello script precedente @profile_name corrisponde al nome del profilo e @description corrisponde alla descrizione di questo. Il parametro è facoltativo.
Per ogni account, eseguire la stored procedure sysmail_add_profileaccount_sp (Transact-SQL) come descritto di seguito:
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp @profile_name = 'Name of the profile' , @account_name* = 'Name of the account' , @sequence_number* = 'sequence number of the account within the profile.'
Nel precedente script di esempio @profile_name corrisponde al nome del profilo, @account_name corrisponde al nome dell'account da aggiungere al profilo e @sequence_number determina l'ordine con cui gli account vengono usati nel profilo.
Per dare accesso, eseguire la stored procedure sysmail_add_principalprofile_sp (Transact-SQL) come descritto di seguito:
EXECUTE msdb.sysmail_add_principalprofile_sp @profile_name = 'Name of the profile' , @principal_name = 'public or 0' , @is_default = 'Default Profile enabled';
Nel precedente script di esempio @profile_name corrisponde al nome del profilo, @principal_name indica che si tratta di un profilo pubblico e @is_default determina se il profilo dell'utente o del ruolo del database è quello predefinito o meno.
Nell'esempio seguente vengono creati un account e un profilo privato di Posta elettronica database, quindi viene aggiunto l'account al profilo e viene concesso l'accesso pubblico al profilo.
-- Create a Database Mail account
EXECUTE msdb.dbo.sysmail_add_account_sp
@account_name = 'AdventureWorks Public Account',
@description = 'Mail account for use by all database users.',
@email_address = 'db_users@Adventure-Works.com',
@replyto_address = 'danw@Adventure-Works.com',
@display_name = 'AdventureWorks Automated Mailer',
@mailserver_name = 'smtp.Adventure-Works.com' ;
-- Create a Database Mail profile
EXECUTE msdb.dbo.sysmail_add_profile_sp
@profile_name = 'AdventureWorks Public Profile',
@description = 'Profile used for administrative mail.' ;
-- Add the account to the profile
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
@profile_name = 'AdventureWorks Public Profile',
@account_name = 'AdventureWorks Public Account',
@sequence_number =1 ;
-- Grant access to the profile to all users in the msdb database
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
@profile_name = 'AdventureWorks Public Profile',
@principal_name = 'public',
@is_default = 1 ;