sysmail_add_principalprofile_sp(Transact-SQL)

데이터베이스 메일 프로필을 사용하도록 데이터베이스 사용자 또는 역할의 사용 권한을 부여합니다.

항목 링크 아이콘 Transact-SQL 구문 표기 규칙

구문

sysmail_add_principalprofile_sp  { [ @principal_id = ] principal_id | [ @principal_name = ] 'principal_name' } ,
    { [ @profile_id = ] profile_id | [ @profile_name = ] 'profile_name' }
    [ , [ @is_default ] = 'is_default' ]

인수

  • [ **@principal\_id** = ] principal_id
    연결의 msdb 데이터베이스에 있는 데이터베이스 사용자 또는 역할의 ID입니다. principal_id는 int이며 기본값은 NULL입니다. principal_id 또는 principal_name을 지정해야 합니다. principal_id가 0이면 이 프로필은 공개 프로필이 되며 데이터베이스의 모든 보안 주체에 액세스 권한이 부여됩니다.

  • [ **@principal\_name** = ] 'principal_name'
    연결의 msdb 데이터베이스에 있는 데이터베이스 사용자 또는 역할의 이름입니다. principal_name은 sysname이며 기본값은 NULL입니다. principal_id 또는 principal_name을 지정해야 합니다. principal_name이 **'public'**이면 이 프로필은 공개 프로필이 되며 데이터베이스의 모든 보안 주체에 액세스 권한이 부여됩니다.

  • [ **@profile\_id** = ] profile_id
    연결에 대한 프로필의 ID입니다. profile_id는 int이며 기본값은 NULL입니다. profile_id 또는 profile_name을 지정해야 합니다.

  • [ **@profile\_name** = ] 'profile_name'
    연결에 대한 프로필의 이름입니다. profile_name은 sysname이며 기본값은 없습니다. profile_id 또는 profile_name을 지정해야 합니다.

  • [ **@is\_default** = ] is_default
    해당 프로필이 해당 보안 주체에 대한 기본 프로필인지 여부를 지정합니다. 보안 주체는 하나의 기본 프로필을 가져야 합니다. is_default는 bit이며 기본값은 없습니다.

반환 코드 값

0(성공) 또는 1(실패)

주의

프로필을 공개 프로필로 사용하려면 **@principal\_id**를 0으로 지정하거나 **@principal\_name**을 public으로 지정합니다. 공개 프로필은 msdb 데이터베이스의 모든 사용자가 사용할 수 있습니다. 그러나 사용자가 sp_send_dbmail을 실행하려면 DatabaseMailUserRole의 멤버여야 합니다.

데이터베이스 사용자는 하나의 기본 프로필만 가질 수 있습니다. **@is\_default**가 '1'이고 사용자가 하나 이상의 프로필에 이미 연결되어 있는 경우에는 지정한 프로필이 해당 사용자의 기본 프로필이 됩니다. 이전에 기본 프로필이던 프로필은 사용자와 계속 연결되어 있긴 하지만 더 이상 기본 프로필이 아닙니다.

**@is\_default**가 '0'이고 다른 연결이 없을 경우 저장 프로시저는 오류를 반환합니다.

sysmail_add_principalprofile_sp 저장 프로시저는 msdb 데이터베이스에 있으며 dbo 스키마가 소유합니다. 현재 데이터베이스가 msdb가 아닐 경우 이 프로시저를 세 부분으로 구성된 이름으로 실행해야 합니다.

사용 권한

이 프로시저에 대한 실행 권한은 기본적으로 sysadmin 고정 서버 역할의 멤버로 설정됩니다.

1. 연결 생성 및 기본 프로필 설정

다음 예에서는 AdventureWorks Administrator Profile이라는 프로필과 msdb 데이터베이스 사용자 ApplicationUser 간에 연결을 만듭니다. 이 프로필은 해당 사용자의 기본 프로필입니다.

EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
    @principal_name = 'ApplicationUser',
    @profile_name = 'AdventureWorks Administrator Profile',
    @is_default = 1 ;

2. 프로필을 기본 공개 프로필로 사용

다음 예에서는 AdventureWorks Public Profile 프로필을 msdb 데이터베이스의 사용자에 대한 기본 공개 프로필로 사용합니다.

EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
    @principal_name = 'public',
    @profile_name = 'AdventureWorks Public Profile',
    @is_default = 1 ;

참고 항목

참조

데이터베이스 메일 저장 프로시저(Transact-SQL)

개념

데이터베이스 메일

데이터베이스 메일 구성 개체