다음을 통해 공유


CREATE SERVER ROLE(Transact-SQL)

적용 대상: SQL Server Azure SQL Managed Instance

새로운 사용자 정의 서버 역할을 만듭니다.

Transact-SQL 구문 표기 규칙

구문

CREATE SERVER ROLE role_name [ AUTHORIZATION server_principal ]  

인수

role_name

만들 서버 역할의 이름입니다.

AUTHORIZATION server_principal

새 서버 역할을 소유할 로그인입니다. 로그인을 지정하지 않으면 CREATE SERVER ROLE을 실행하는 로그인이 서버 역할을 소유합니다.

설명

서버 역할은 서버 수준 보안 개체입니다. 서버 역할을 만든 후 GRANT, DENY 및 REVOKE를 사용하여 역할의 서버 수준 사용 권한을 구성합니다. 서버 역할에 로그인을 추가하거나 서버 역할에서 로그인을 제거하려면 ALTER SERVER ROLE(Transact-SQL)을 사용합니다. 서버 역할을 삭제하려면 DROP SERVER ROLE(Transact-SQL)을 사용합니다. 자세한 내용은 sys.server_principals(Transact-SQL)를 참조하세요.

sys.server_role_memberssys.server_principals 카탈로그 뷰를 쿼리하여 서버 역할을 볼 수 있습니다.

데이터베이스 수준 보안 개체에서는 서버 역할에 사용 권한을 부여할 수 없습니다. 데이터베이스 역할을 만들려면 CREATE ROLE(Transact-SQL)을 참조하세요.

권한 시스템 디자인에 대한 정보는 Getting Started with Database Engine Permissions을(를) 참조하세요.

사용 권한

CREATE SERVER ROLE 권한 또는 sysadmin 고정 서버 역할의 멤버 자격이 필요합니다.

로그인의 경우 server_principal 에 대한 IMPERSONATE이 필요하고 server_principal로 사용되는 서버 역할의 경우 ALTER 권한이 필요합니다. 또는 server_principal로 사용되는 Windows 그룹의 멤버 자격이 필요합니다.

이렇게 하면 개체 유형이 서버 역할 및 추가할 이벤트 유형으로 설정된 Audit Server 보안 주체 관리 이벤트가 발생합니다.

AUTHORIZATION 옵션을 사용하여 서버 역할 소유권을 할당할 경우 다음 사용 권한도 필요합니다.

  • 다른 로그인에 서버 역할의 소유권을 할당하려면 해당 로그인에 대한 IMPERSONATE 권한이 필요합니다.

  • 다른 서버 역할에 서버 역할의 소유권을 할당하려면 받는 서버 역할의 멤버 자격이나 해당 서버 역할에 대한 ALTER 권한이 필요합니다.

A. 로그인에서 소유하는 서버 역할 만들기

다음 예에서는 buyers 로그인이 소유하는 BenMiller 서버 역할을 만듭니다.

USE master;  
CREATE SERVER ROLE buyers AUTHORIZATION BenMiller;  
GO  

B. 고정 서버 역할이 소유한 서버 역할 만들기

다음 예에서는 auditors 고정 서버 역할이 소유하는 securityadmin 서버 역할을 만듭니다.

USE master;  
CREATE SERVER ROLE auditors AUTHORIZATION securityadmin;  
GO  

다음 단계