Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Используйте мастер настройки компонента 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.
На странице "Выбор задачи конфигурации" выберите пункт "Управление учетными записями и профилями базы данных" и нажмите кнопку "Далее".
На странице "Управление профилями и учетными записями" выберите пункт "Управление безопасностью профиля" и нажмите кнопку "Далее".
На вкладке "Общедоступные профили" установите флажок для профиля, который вы хотите настроить и нажмите кнопку "Далее".
На странице "Завершение работы мастера" просмотрите действия, которые необходимо выполнить, и нажмите кнопку "Готово ", чтобы завершить настройку профиля.
Использование Transact-SQL
Создать закрытый профиль для Database Mail
Подключитесь к экземпляру SQL Server.
Чтобы создать новый профиль, запустите системную хранимую процедуру sysmail_add_profile_sp (Transact-SQL), как показано ниже.
EXECUTEmsdb.dbo.sysmail_add_profile_sp
@profile_name = "Имя профиля"
@description = 'Описание'
где @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 = '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 ;
Создание общедоступного профиля Database Mail
Подключитесь к экземпляру SQL Server.
Чтобы создать новый профиль, запустите системную хранимую процедуру sysmail_add_profile_sp (Transact-SQL), как показано ниже.
EXECUTEmsdb.dbo.sysmail_add_profile_sp
@profile_name = "Имя профиля"
@description = 'Описание'
где @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 = "public or 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 = '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 ;