역할 조인Join a Role

이 항목에서는 SQL Server 2017SQL Server 2017 또는 SQL Server Management StudioSQL Server Management Studio 을 사용하여 Transact-SQLTransact-SQL에서 로그인 및 데이터베이스 사용자에 역할을 할당하는 방법에 대해 설명합니다.This topic describes how to assign roles to logins and database users in SQL Server 2017SQL Server 2017 by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL. SQL ServerSQL Server 의 역할을 사용하면 사용 권한을 효율적으로 관리할 수 있습니다.Use roles in SQL ServerSQL Server to efficiently manage permissions. 역할에 사용 권한을 할당하고 사용자와 로그인을 역할에 추가하거나 제거합니다.Assign permissions to roles, and then add and remove users and logins to the roles. 역할을 사용하면 각 사용자의 사용 권한을 개별적으로 유지 관리할 필요가 없습니다.By using roles, permissions do not have to be individually maintained for each user.

SQL ServerSQL Server 에서는 다음과 같은 네 가지 역할 유형을 지원합니다. supports four types of roles.

  • 고정 서버 역할Fixed server roles

  • 사용자 정의 서버 역할User-defined server roles

  • 고정 데이터베이스 역할Fixed database roles

  • 사용자 정의 데이터베이스 역할User-defined database roles

    고정 역할은 SQL ServerSQL Server에서 자동으로 사용할 수 있습니다.The fixed roles are automatically available in SQL ServerSQL Server. 고정 역할은 일반적인 태스크를 수행하는 데 필요한 사용 권한을 가집니다.Fixed roles have the necessary permissions to accomplish common tasks. 고정 역할에 대한 자세한 내용은 다음 링크를 참조하십시오.For more information about fixed roles, see the following links. 사용자 정의 역할은 사용자가 만들며 사용자가 선택한 사용 권한으로 사용자 지정할 수 있습니다.User-defined roles are created by you, and can be customized with the permissions that you select. 사용자 정의 역할에 대한 자세한 내용은 다음 링크를 참조하십시오.For more information about user-defined roles, see the following links.

    항목 내용In This Topic

  • 시작하기 전에:Before you begin:

    제한 사항Limitations and Restrictions

    보안Security

  • 로그인 및 데이터베이스 사용자에 역할을 할당하려면:To assign roles to logins and database users, using:

    SQL Server Management StudioSQL Server Management Studio

    Transact-SQLTransact-SQL

시작하기 전 주의 사항 Before You Begin

제한 사항 Limitations and Restrictions

  • 데이터베이스 역할의 이름을 변경하더라도 역할의 ID 번호, 소유자 또는 사용 권한은 변경되지 않습니다.Changing the name of a database role does not change ID number, owner, or permissions of the role.

  • 데이터베이스 역할은 sys.database_role_members 및 sys.database_principals 카탈로그 뷰에 표시됩니다.Database roles are visible in the sys.database_role_members and sys.database_principals catalog views.

보안 Security

사용 권한 Permissions

데이터베이스에 대한 ALTER ANY ROLE 권한, 역할에 대한 ALTER 권한 또는 db_securityadmin의 멤버 자격이 필요합니다.Requires ALTER ANY ROLE permission on the database, ALTER permission on the role, or membership in db_securityadmin.

SQL Server Management Studio 사용 Using SQL Server Management Studio

고정 서버 역할에 멤버를 추가하려면To add a member to a fixed server role

  1. 개체 탐색기에서 고정 서버 역할을 편집할 서버를 확장합니다.In Object Explorer, expand the server in which you want to edit a fixed server role.

  2. 보안 폴더를 확장합니다.Expand the Security folder.

  3. 서버 역할 폴더를 확장합니다.Expand the Server Roles folder

  4. 편집할 역할을 마우스 오른쪽 단추로 클릭한 다음 속성을 선택합니다.Right-click the role you want to edit and select Properties.

  5. 서버 역할 속성 –server_role_name 대화 상자의 멤버 페이지에서 추가를 클릭합니다.In the Server Role Properties –server_role_name dialog box, on the Members page, click Add.

  6. 서버 로그인 또는 역할 선택 대화 상자의 선택할 개체 이름을 입력하십시오. (예)에 이 서버 역할에 추가할 로그인 또는 서버 역할을 입력합니다.In the Select Server Login or Role dialog box, under Enter the object names to select (examples), enter the login or server role to add to this server role. 또는 찾아보기…Alternately, click Browse… 를 클릭한 다음 개체 찾아보기 대화 상자에서 사용 가능한 개체를 선택합니다.and select any or all of the available objects in the Browse for Objects dialog box. 확인 을 클릭하여 서버 역할 속성 –server_role_name 대화 상자로 돌아갑니다.Click OK to return to the Server Role Properties –server_role_name dialog box.

  7. 확인을 클릭합니다.Click OK.

사용자 정의 데이터베이스 역할에 멤버를 추가하려면To add a member to a user-defined database role

  1. 개체 탐색기에서 사용자 정의 데이터베이스 역할을 편집할 서버를 확장합니다.In Object Explorer, expand the server in which you want to edit a user-defined database role.

  2. 데이터베이스 폴더를 확장합니다.Expand the Databases folder.

  3. 사용자 정의 데이터베이스 역할을 편집할 데이터베이스 서버를 확장합니다.Expand the database in which you want to edit a user-defined database role.

  4. 보안 폴더를 확장합니다.Expand the Security folder.

  5. 역할 폴더를 확장합니다.Expand the Roles folder.

  6. 서버 역할 폴더를 확장합니다.Expand the Server Roles folder.

  7. 편집할 역할을 마우스 오른쪽 단추로 클릭한 다음 속성을 선택합니다.Right-click the role you want to edit and select Properties.

  8. 데이터베이스 역할 속성 –database_role_name 대화 상자의 일반 페이지에서 추가를 클릭합니다.In the Database Role Properties –database_role_name dialog box, in the General page, click Add.

  9. 데이터베이스 사용자 또는 역할 선택 대화 상자의 선택할 개체 이름을 입력하십시오. (예)에 이 데이터베이스 역할에 추가할 로그인 또는 데이터베이스 역할을 입력합니다.In the Select Database User or Role dialog box, under Enter the object names to select (examples), enter the login or database role to add to this database role. 또는 찾아보기…Alternately, click Browse… 를 클릭한 다음 개체 찾아보기 대화 상자에서 사용 가능한 개체를 선택합니다.and select any or all of the available objects in the Browse for Objects dialog box. 확인 을 클릭하여 데이터베이스 역할 속성 –database_role_name 대화 상자로 돌아갑니다.Click OK to return to the Database Role Properties –database_role_name dialog box.

  10. 확인을 클릭합니다.Click OK.

Transact-SQL 사용 Using Transact-SQL

고정 서버 역할에 멤버를 추가하려면To add a member to a fixed server role

  1. 개체 탐색기에서 데이터베이스 엔진Database Engine인스턴스에 연결합니다.In Object Explorer, connect to an instance of 데이터베이스 엔진Database Engine.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.On the Standard bar, click New Query.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.Copy and paste the following example into the query window and click Execute.

    ALTER SERVER ROLE diskadmin ADD MEMBER [Domain\Juan] ;  
    GO  
    

    자세한 내용은 ALTER ROLE(Transact-SQL)을 참조하세요.For more information, see ALTER ROLE (Transact-SQL).

사용자 정의 데이터베이스 역할에 멤버를 추가하려면To add a member to a user-defined database role

  1. 개체 탐색기에서 데이터베이스 엔진Database Engine인스턴스에 연결합니다.In Object Explorer, connect to an instance of 데이터베이스 엔진Database Engine.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.On the Standard bar, click New Query.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.Copy and paste the following example into the query window and click Execute.

    ALTER ROLE Marketing ADD MEMBER [Domain\Juan] ;  
    GO  
    

    자세한 내용은 sp_addrolemember(Transact-SQL)를 참조하세요.For more information, see sp_addrolemember (Transact-SQL).

관련 항목:See Also

서버 수준 역할 Server-Level Roles
데이터베이스 수준 역할 Database-Level Roles
응용 프로그램 역할Application Roles