Oggetti di configurazione di Posta elettronica databaseDatabase Mail Configuration Objects

Posta elettronica database dispone di due oggetti di configurazione: gli oggetti di configurazione del database forniscono una modalità per configurare le impostazioni che Posta elettronica database deve utilizzare per l'invio di messaggi posta elettronica dall'applicazione di database o da SQL ServerSQL Server Agent.Database Mail has two configuration objects: The database configuration objects provide a way for you to configure the settings that Database mail should use when sending an email from your database application or SQL ServerSQL Server Agent.

  • Account di Posta elettronica databaseDatabase Mail accounts

  • Profili di Posta elettronica databaseDatabase Mail profiles

Relazione tra oggetti di configurazione di Posta elettronica database Database Mail Configuration Object Relationship

Nella figura seguente vengono illustrati due profili, tre account e tre utenti.The illustration shows two profiles, three accounts, and three users. User 1 può accedere a Profile 1, che usa Account 1 e Account 2.User 1 has access to Profile 1, which uses Account 1 and Account 2. User 3 può accedere a Profile 2, che utilizza Account 2 e Account 3.User 3 has access to Profile 2, which uses Account 2 and Account 3. User 2 può accedere sia a Profile 1 che a Profile 2.User 2 has access to both Profile 1 and Profile 2.

Relazioni tra utenti, profili e accountRelationship of users, profiles, and accounts

Account di Posta elettronica database Database Mail Account

Un account di Posta elettronica database contiene le informazioni utilizzate in Microsoft SQL ServerSQL Server per l'invio di messaggi di posta elettronica a un server SMTP.A Database Mail account contains the information that Microsoft SQL ServerSQL Server uses to send e-mail messages to an SMTP server. In ogni account sono incluse le informazioni per un singolo server di posta elettronica.Each account contains information for one e-mail server.

Posta elettronica database supporta tre metodi di autenticazione per la comunicazione con un server SMTP:A Database Mail supports three methods of authentication to communicate with an SMTP server:

  • Autenticazione di Windows: Posta elettronica database utilizza le credenziali dell'account servizio Windows del Motore di database di SQL ServerSQL Server Database Engine per l'autenticazione sul server SMTP.Windows Authentication: Database Mail uses the credentials of the Motore di database di SQL ServerSQL Server Database Engine Windows service account for authentication on the SMTP server.

  • Autenticazione di base: Posta elettronica database utilizza il nome utente e la password specificati per l'autenticazione sul server SMTP.Basic Authentication: Database Mail uses the username and password specified to authenticate on the SMTP server.

  • Autenticazione anonima: il server SMTP non richiede autenticazione.Anonymous Authentication: The SMTP server does not require any authentication. Posta elettronica database non utilizzerà credenziali per l'autenticazione nel server SMTP.Database Mail will not use any credentials to authenticate on the SMTP server.

    Le informazioni sull'account vengono archiviate nel database msdb .Account information is stored in the msdb database. Ciascun account include le informazioni seguenti:Each account consists of the following information:

  • Nome dell'account.The name of the account.

  • Descrizione dell'account.A description of the account.

  • Indirizzo di posta elettronica dell'account.The e-mail address of the account.

  • Nome visualizzato dell'account.The display name for the account.

  • Indirizzo di posta elettronica di risposta dell'account.The e-mail address to use as the reply-to information for the account.

  • Nome del server di posta elettronica.The name of the e-mail server.

  • Tipo del server di posta elettronica.The type of the e-mail server. Per MicrosoftMicrosoft SQL ServerSQL Servercorrisponde sempre a Simple Mail Transfer Protocol (SMTP).For MicrosoftMicrosoft SQL ServerSQL Server, this is always Simple Mail Transfer Protocol(SMTP).

  • Numero di porta del server di posta elettronica.The port number of the e-mail server.

  • Colonna bit che indica se la connessione al server di posta elettronica SMTP viene eseguita utilizzando Secure Sockets Layer (SSL).A bit column indicating whether the connection to the SMTP mail server is made using Secure Sockets Layer (SSL).

  • Colonna bit che indica se la connessione al server SMTP viene eseguita tramite le credenziali configurate per Motore di database di SQL ServerSQL Server Database Engine.A bit column indicating whether the connection to the SMTP server is made using the credentials configured for the Motore di database di SQL ServerSQL Server Database Engine.

  • Nome utente da utilizzare per l'autenticazione al server di posta elettronica, se tale server richiede l'autenticazione.The user name to use for authentication to the e-mail server, if the e-mail server requires authentication.

  • Password da utilizzare per l'autenticazione al server di posta elettronica, se tale server richiede l'autenticazione.The password to use for authentication to the e-mail server, if the e-mail server requires authentication.

    La Configurazione guidata posta elettronica database consente di creare e gestire account in modo rapido e semplice.The Database Mail Configuration Wizard provides a convenient way to create and manage accounts. Per la creazione e la gestione di account è anche possibile utilizzare le stored procedure di configurazione incluse in msdb .You can also use the configuration stored procedures in msdb to create and manage accounts.

Profilo di Posta elettronica database Database Mail Profile

Un profilo di Posta elettronica database è una raccolta ordinata di account di Posta elettronica database correlati.A Database Mail profile is an ordered collection of related Database Mail accounts. Le applicazioni che inviano messaggi di posta elettronica utilizzando Posta elettronica database specificano i profili, anziché utilizzare direttamente gli account.Applications that send e-mail using Database Mail specify profiles, instead of using accounts directly. La separazione delle informazioni relative ai singoli server di posta elettronica dagli oggetti utilizzati dall'applicazione consente di migliorare la flessibilità e l'affidabilità. I profili offrono infatti il failover automatico e se un server è bloccato, Posta elettronica database invia automaticamente la posta a un altro server di posta elettronica.Separating information about the individual e-mail servers from the objects that the application uses improves flexibility and reliability: profiles provide automatic failover, so that if one e-mail server is unresponsive, Database Mail can automatically send mail to another e-mail server. Gli amministratori di database possono aggiungere, rimuovere o riconfigurare gli account senza che sia necessario apportare modifiche al codice dell'applicazione o ai passaggi del processo.Database administrators can add, remove, or reconfigure accounts without requiring changes to application code or job steps.

I profili consentono inoltre di controllare l'accesso alla posta elettronica.Profiles also help database administrators control access to e-mail. L'appartenenza a DatabaseMailUserRole è necessaria per l'invio in Posta elettronica database.Membership in the DatabaseMailUserRole is required to send Database Mail. I profili consentono un'ulteriore flessibilità agli amministratori nel controllo di chi invia i messaggi e di quali account vengono utilizzati.Profiles provide additional flexibility for administrators to control who sends mail and which accounts are used.

che possono essere pubblici o privati.A profile may be public or private.

Iprofili pubblici sono disponibili per tutti i membri del ruolo del database DatabaseMailUserRole nel database msdb .Public profiles are available for all members of the DatabaseMailUserRole database role in the msdb database. Questi consentono a tutti i membri del ruolo DatabaseMailUserRole di inviare messaggi di posta elettronica tramite il profilo.They allow all members of the DatabaseMailUserRole role to send e-mail using the profile.

Iprofili privati vengono definiti per le entità di sicurezza nel database msdb .Private profiles are defined for security principals in the msdb database. Solo gli utenti e i ruoli del database specificati e i membri del ruolo predefinito del server sysadmin possono inviare messaggi di posta elettronica tramite il profilo.They allow only specified database users, roles, and members of the sysadmin fixed server role to send e-mail using the profile. Per impostazione predefinita, i profili sono privati e solo i membri del ruolo predefinito del server sysadmin possono accedervi.By default, a profile is private, and allows access only to members of the sysadmin fixed server role. Per utilizzare un profilo privato, è necessario che sysadmin conceda agli utenti l'autorizzazione a utilizzare il profilo.To use a private profile, sysadmin must grant users permission to use the profile. L'autorizzazione EXECUTE sulla stored procedure sp_send_dbmail , poi, viene concessa solo ai membri di DatabaseMailUserRole.Additionally, EXECUTE permission on the sp_send_dbmail stored procedure is only granted to members of the DatabaseMailUserRole. Perché l'utente possa inviare messaggi di posta elettronica, un amministratore di sistema deve aggiungere l'utente al ruolo del database DatabaseMailUserRole .A system administrator must add the user to the DatabaseMailUserRole database role for the user to send e-mail messages.

I profili migliorano l'affidabilità nei casi in cui un server di posta elettronica diventa irraggiungibile o non in grado di elaborare i messaggi.Profiles improve reliability in cases where an e-mail server becomes unreachable or unable to process messages. Ogni account del profilo è caratterizzato da un numero di sequenza.Each account in the profile has a sequence number. Il numero di sequenza determina l'ordine in cui Posta elettronica database utilizza gli account nel profilo.The sequence number determines the order in which Database Mail uses accounts in the profile. Per un nuovo messaggio di posta elettronica, Posta elettronica database utilizza l'ultimo account che ha inviato un messaggio di posta elettronica con esito positivo, o l'account che presenta il numero di sequenza più basso nel caso non siano stati ancora inviati messaggi.For a new e-mail message, Database Mail uses the last account that sent a message successfully, or the account that has the lowest sequence number if no message has yet been sent. Se l'invio del messaggio con tale account ha esito negativo, Posta elettronica database prova con l'account con il numero di sequenza successivo e così via, finché il messaggio non viene inviato o finché anche l'invio con l'account con il numero di sequenza più alto non ha esito negativo.Should that account fail, Database Mail uses the account with the next highest sequence number, and so on until either Database Mail sends the message successfully, or the account with the highest sequence number fails. Se l'invio del messaggio con l'account con il numero di sequenza più alto non riesce, Posta elettronica database sospende i tentativi di invio del messaggio per il periodo di tempo specificato nel parametro AccountRetryDelay di sysmail_configure_sp. Trascorso questo periodo di tempo, Posta elettronica database prova di nuovo a inviare il messaggio, iniziando con l'account con il numero di sequenza più basso.If the account with the highest sequence number fails, the Database Mail pauses attempts to send the mail for the amount of time configured in the AccountRetryDelay parameter of sysmail_configure_sp, then starts the process of attempting to send the mail again, starting with the lowest sequence number. Usare il parametro AccountRetryAttempts di sysmail_configure_spper specificare quante volte il processo di posta elettronica esterno deve tentare di inviare il messaggio di posta elettronica usando ogni account indicato del profilo specificato.Use the AccountRetryAttempts parameter of sysmail_configure_sp, to configure the number of times that the external mail process attempts to send the e-mail message using each account in the specified profile.

Se esistono più account con lo stesso numero di sequenza, Posta elettronica database utilizza solo uno di questi account per un messaggio di posta specifico.If more than one account exists with the same sequence number, Database Mail only uses one of those accounts for a given e-mail message. In questo caso, non viene garantito quale account viene utilizzato per quel numero di sequenza né che venga utilizzato lo stesso account per ogni messaggio.In this case, Database Mail makes no guarantees as to which of the accounts is used for that sequence number or that the same account is used from message to message.

Attività di configurazione di Posta elettronica database Database Mail Configuration Tasks

Nella tabella seguente vengono descritte le attività di configurazione di Posta elettronica database.The following table describes the Database Mail configuration tasks.

Attività di configurazioneConfiguration Task Collegamento all'argomentoTopic Link
Viene illustrata la creazione di account di Posta elettronica databaseDescribes how to create a Database Mail accounts Creare un account di Posta elettronica database.Create a Database Mail Account
Viene illustrata la creazione di profili di Posta elettronica databaseDescribes how to Create Database Mail profiles Creare un profilo di Posta elettronica databaseCreate a Database Mail Profile
Viene illustrata la configurazione di Posta elettronica databaseDescribes how to Configure Database mail Configurare Posta elettronica databaseConfigure Database Mail
Viene illustrata la creazione di uno script di configurazione per Posta elettronica database utilizzando i modelliDescribes how to create a Database Mail configuration script using templates

Attività aggiuntive di configurazione di Posta elettronica database (Stored procedure di sistema) Additional Database Configuration Tasks (System Stored Procedures)

Le stored procedure per la configurazione di Posta elettronica database sono disponibili nel database msdb .Database Mail configuration stored procedures are located in the msdb database.

Nelle tabelle seguenti vengono elencate le stored procedure utilizzate per la configurazione e la gestione di Posta elettronica database.The following tables list the stored procedures used for configuring and managing Database Mail.

Impostazioni di Posta elettronica databaseDatabase Mail Settings

NomeName DescrizioneDescription
sysmail_configure_sp (Transact-SQL)sysmail_configure_sp (Transact-SQL) Modifica le impostazioni di configurazione per Posta elettronica database.Changes configuration settings for Database Mail.
sysmail_help_configure_sp (Transact-SQL)sysmail_help_configure_sp (Transact-SQL) Visualizza le impostazioni di configurazione per Posta elettronica database.Displays configuration settings for Database Mail.

Account e profiliAccounts and Profiles

NomeName DescrizioneDescription
sysmail_add_profileaccount_sp (Transact-SQL)sysmail_add_profileaccount_sp (Transact-SQL) Aggiunge un account di posta a un profilo di Posta elettronica database.Adds a mail account to a Database Mail profile.
sysmail_delete_account_sp (Transact-SQL)sysmail_delete_account_sp (Transact-SQL) Elimina un account di Posta elettronica database.Deletes a Database Mail account.
sysmail_delete_profile_sp (Transact-SQL)sysmail_delete_profile_sp (Transact-SQL) Elimina un profilo di Posta elettronica database.Deletes a Database Mail profile.
sysmail_delete_profileaccount_sp (Transact-SQL)sysmail_delete_profileaccount_sp (Transact-SQL) Rimuove un account da un profilo di Posta elettronica database.Removes an account from a Database Mail profile.
sysmail_help_account_sp (Transact-SQL)sysmail_help_account_sp (Transact-SQL) Elenca informazioni relative agli account di Posta elettronica database.Lists information about Database Mail accounts.
sysmail_help_profile_sp (Transact-SQL)sysmail_help_profile_sp (Transact-SQL) Elenca informazioni relative a uno o più profili di Posta elettronica database.Lists information about one or more Database Mail profiles.
sysmail_help_profileaccount_sp (Transact-SQL)sysmail_help_profileaccount_sp (Transact-SQL) Elenca gli account associati a uno o più profili di Posta elettronica database.Lists the accounts associated with one or more Database Mail profiles.
sysmail_update_account_sp (Transact-SQL)sysmail_update_account_sp (Transact-SQL) Aggiorna le informazioni in un account di Posta elettronica database esistente.Updates the information in an existing Database Mail account.
sysmail_update_profile_sp (Transact-SQL)sysmail_update_profile_sp (Transact-SQL) Modifica la descrizione o il nome di un profilo di Posta elettronica database.Changes the description or name of a Database Mail profile.
sysmail_update_profileaccount_sp (Transact-SQL)sysmail_update_profileaccount_sp (Transact-SQL) Aggiorna il numero di sequenza di un account in un profilo di Posta elettronica database.Updates the sequence number of an account within a Database Mail profile.

SicurezzaSecurity

NomeName DescrizioneDescription
sysmail_add_principalprofile_sp (Transact-SQL)sysmail_add_principalprofile_sp (Transact-SQL) Concede le autorizzazioni necessarie a una entità database per utilizzare un profilo di Posta elettronica database.Grants permission for a database principal to use a Database Mail profile.
sysmail_delete_principalprofile_sp (Transact-SQL)sysmail_delete_principalprofile_sp (Transact-SQL) Rimuove le autorizzazioni che consentono a un utente di database di utilizzare un profilo pubblico o privato di Posta elettronica database.Removes permission for a database user to use a public or private Database Mail profile.
sysmail_help_principalprofile_sp (Transact-SQL)sysmail_help_principalprofile_sp (Transact-SQL) Elenca le informazioni relative al profilo di Posta elettronica database per un determinato utente di database.Lists Database Mail profile information for a given database user.
sysmail_update_principalprofile_sp (Transact-SQL)sysmail_update_principalprofile_sp (Transact-SQL) Aggiorna le informazioni relative alle autorizzazioni per un determinato utente di database.Updates the permission information for a given database user.

Stato del sistemaSystem State

NomeName DescrizioneDescription
sysmail_start_sp (Transact-SQL)sysmail_start_sp (Transact-SQL) Avvia il programma esterno Posta elettronica database e la coda associata di SQL Service Broker.Starts the Database Mail external program and the associated SQL Service Broker queue.
sysmail_stop_sp (Transact-SQL)sysmail_stop_sp (Transact-SQL) Arresta il programma esterno Posta elettronica database e la coda associata di SQL Service Broker.Stops the Database Mail external program and the associated SQL Service Broker queue.
sysmail_help_status_sp (Transact-SQL)sysmail_help_status_sp (Transact-SQL) Indica se Posta elettronica database è stato avviato.Indicates if Database Mail is started.

Riferimenti aggiuntivi Additional References