Cómo crear perfiles privados de Correo electrónico de base de datos (Transact-SQL)

Utilice el Asistente para configuración del Correo electrónico de base de datos o los procedimientos almacenados del Correo electrónico de base de datos para crear perfiles privados de Correo electrónico de base de datos con el fin de enviar correo electrónico mediante SMTP (Protocolo simple de transferencia de correo). Un perfil privado puede ser utilizado por un usuario o por un rol. Al conceder a los roles derechos de acceso a los perfiles, se crea una arquitectura más fácil de mantener.

Para crear un perfil de Correo electrónico de base de datos mediante Transact-SQL

  1. Cree una o varias cuentas de Correo electrónico de base de datos para el perfil. Para obtener más información acerca de cómo crear cuentas de correo de base de datos, vea Cómo crear cuentas de Correo electrónico de base de datos (Transact-SQL).

  2. Para crear el perfil ejecute el procedimiento almacenado msdb.dbo.sysmail_add_profile_sp; para ello, especifique lo siguiente:

    • El nombre del perfil que se creará.

    • Una descripción opcional del perfil.

  3. Ejecute msdb.dbo.sysmail_add_profileaccount_sp para cada cuenta con el fin de agregarla al perfil.

  4. Otorgue acceso al perfil a cada usuario o rol de base de datos que vaya a enviar correo electrónico mediante este perfil. Para ello, ejecute msdb.sysmail_add_principalprofile_sp.

Ejemplo

En el siguiente ejemplo se crea una cuenta y un perfil del Correo electrónico de base de datos. A continuación, el ejemplo agrega la cuenta al perfil y concede acceso al perfil para el rol de base de datos DBMailUsers en la base de datos msdb.

-- Create a Database Mail account
EXECUTE msdb.dbo.sysmail_add_account_sp
    @account_name = 'AdventureWorks2008R2 Administrator',
    @description = 'Mail account for administrative e-mail.',
    @email_address = 'dba@Adventure-Works.com',
    @replyto_address = 'danw@Adventure-Works.com',
    @display_name = 'AdventureWorks2008R2 Automated Mailer',
    @mailserver_name = 'smtp.Adventure-Works.com' ;

-- Create a Database Mail profile
EXECUTE msdb.dbo.sysmail_add_profile_sp
    @profile_name = 'AdventureWorks2008R2 Administrator Profile',
    @description = 'Profile used for administrative mail.' ;

-- Add the account to the profile
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
    @profile_name = 'AdventureWorks2008R2 Administrator Profile',
    @account_name = 'AdventureWorks2008R2 Administrator',
    @sequence_number =1 ;

-- Grant access to the profile to the DBMailUsers role
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
    @profile_name = 'AdventureWorks2008R2 Administrator Profile',
    @principal_name = 'ApplicationUser',
    @is_default = 1 ;