Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Используйте мастер настройки Database Mail или Transact-SQL для создания Database Mail общедоступных и частных профилей.
Перед началом
Предварительные требования
Создайте одну или несколько учетных записей компонента Database Mail для профиля. Дополнительные сведения о создании компонента Database Mail см. в разделе Создание учетной записи компонента Database Mail.
Безопасность
Открытый профиль дает возможность всем пользователям получать доступ к базе данных msdb , отправив туда почтовое сообщение из этого профиля. Персональный профиль может использоваться как пользователем, так и ролью. Предоставление роли доступа к профилю создает более простую обслуживаемую архитектуру. Для отправки почты пользователь должен быть членом роли DatabaseMailUserRole в базе данных msdb , а также иметь доступ как минимум к одному профилю Database Mail.
Разрешения
Пользователь, создающий учетные записи профилей и выполняющий хранимые процедуры, должен быть членом предопределенной роли сервера sysadmin.
Использование мастера настройки компонента Database Mail
Создание профиля компонента Database Mail
В обозревателе объектов подключитесь к экземпляру SQL Server , для которого необходимо настроить компонент Database Mail, и разверните дерево сервера.
Разверните узел Управление
Дважды щелкните компонент Database Mail, чтобы открыть мастер настройки компонента Database Mail.
На странице Выбор задачи настройки выберите Управление учетными записями и профилями компонента Database Mail и нажмите кнопку Далее.
На странице Управление профилями и учетными записями выберите команду Создать новый профиль и нажмите кнопку Далее.
На странице Создать профиль задайте имя профиля и описание, а также добавьте учетные записи, которые будут включены в профиль, после чего нажмите кнопку Далее.
На странице Завершение работы мастера просмотрите действия, которые будут выполнены, и нажмите кнопку Готово , чтобы завершить создание нового профиля.
Настройка закрытого профиля компонента Database Mail.
Откройте мастер настройки компонента Database Mail.
На странице Выбор задачи настройки выберите Управление учетными записями и профилями компонента Database Mail и нажмите кнопку Далее.
На странице Управление учетными записями и профилями выберите Управление безопасностью профилей и нажмите кнопку Далее.
На вкладке Закрытые профили установите флажок для профиля, который необходимо настроить, и нажмите кнопку Далее.
На странице Завершение работы мастера просмотрите действия, которые необходимо выполнить, и нажмите кнопку Готово , чтобы завершить настройку профиля.
Настройка открытого профиля компонента Database Mail.
Откройте мастер настройки компонента Database Mail.
На странице Выбор задачи настройки выберите Управление учетными записями и профилями компонента Database Mail и нажмите кнопку Далее.
На странице Управление учетными записями и профилями выберите Управление безопасностью профилей и нажмите кнопку Далее.
На вкладке Открытые профили установите флажок для профиля, который необходимо настроить, и нажмите кнопку Далее.
На странице Завершение работы мастера просмотрите действия, которые необходимо выполнить, и нажмите кнопку Готово , чтобы завершить настройку профиля.
Использование Transact-SQL
Создание закрытого профиля компонента Database Mail
Подключитесь к экземпляру SQL Server .
Чтобы создать новый профиль, выполните системную хранимую процедуру sysmail_add_profile_sp (Transact-SQL) следующим образом:
EXECUTEmsdb.dbo.sysmail_add_profile_sp
@profile_name = 'Имя профиля'
@description = 'Desciption'
где @profile_name — это имя профиля, а @description — описание профиля. Этот параметр является необязательным.
Для каждой учетной записи выполните хранимую процедуру sysmail_add_profileaccount_sp (Transact-SQL) следующим образом:
EXECUTEmsdb.dbo.sysmail_add_profileaccount_sp
@profile_name = 'Имя профиля'
@account_name = "Имя учетной записи"
@sequence_number = 'порядковый номер учетной записи в профиле. '
где @profile_name — имя профиля, а @account_name — имя учетной записи для добавления в профиль, @sequence_number определяет порядок использования учетных записей в профиле.
Всем ролям или пользователям баз данных, отправляющим письма с использованием этого профиля, следует предоставить доступ к профилю. Для этого выполните хранимую процедуру sysmail_add_principalprofile_sp (Transact-SQL) следующим образом:
EXECUTEmsdb.sysmail_add_principalprofile_sp
@profile_name = 'Имя профиля'
@ principal_name = 'Имя пользователя или роли базы данных'
@is_default = 'Состояние профиля по умолчанию '
где @profile_name — имя профиля, а @principal_name — имя пользователя или роли базы данных, @is_default определяет, является ли этот профиль пользователем или ролью базы данных по умолчанию.
В следующем примере создается учетная запись компонента Database Mail, создается закрытый профиль компонента Database Mail, затем учетная запись добавляется к профилю и предоставляется доступ к профилю для роли базы данных DBMailUsers в базе данных msdb .
-- 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 = '[email protected]',
@replyto_address = '[email protected]',
@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 ;
Создание открытого профиля компонента Database Mail
Подключитесь к экземпляру SQL Server .
Чтобы создать новый профиль, выполните системную хранимую процедуру sysmail_add_profile_sp (Transact-SQL) следующим образом:
EXECUTEmsdb.dbo.sysmail_add_profile_sp
@profile_name = 'Имя профиля'
@description = 'Desciption'
где @profile_name — это имя профиля, а @description — описание профиля. Этот параметр является необязательным.
Для каждой учетной записи выполните хранимую процедуру sysmail_add_profileaccount_sp (Transact-SQL) следующим образом:
EXECUTEmsdb.dbo.sysmail_add_profileaccount_sp
@profile_name = 'Имя профиля'
@account_name = "Имя учетной записи"
@sequence_number = 'порядковый номер учетной записи в профиле. '
где @profile_name — имя профиля, а @account_name — имя учетной записи для добавления в профиль, @sequence_number определяет порядок использования учетных записей в профиле.
Чтобы предоставить общий доступ, выполните хранимую процедуру sysmail_add_principalprofile_sp (Transact-SQL) следующим образом:
EXECUTEmsdb.sysmail_add_principalprofile_sp
@profile_name = 'Имя профиля'
@ principal_name = 'открытый или 0'
@is_default = 'Состояние профиля по умолчанию '
где @profile_name — это имя профиля, а @principal_name , чтобы указать, что это общедоступный профиль, @is_default определяет, является ли этот профиль стандартным для пользователя или роли базы данных.
В следующем примере создается учетная запись компонента Database Mail, создается закрытый профиль компонента Database Mail, затем учетная запись добавляется к профилю и предоставляется общий доступ к профилю.
-- 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 = '[email protected]',
@replyto_address = '[email protected]',
@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 ;