SQL Server 에이전트 역할 - Amazon Relational Database Service

SQL Server 에이전트 역할

RDS for SQL Server는 작업 관리를 위한 각기 다른 수준의 권한을 가진 다음과 같은 SQL Server 에이전트 역할을 지원합니다.

  • SQLAgentUserRole

    권한

    • 자체 작업, 일정 및 연산자 생성 및 관리

    • 자체 작업 및 일정의 속성 보기

    • 다른 사용자가 생성한 작업을 보거나 관리할 수 없음

    이 역할은 자신의 작업을 생성하고 관리해야 하지만 다른 사용자가 생성한 작업에는 액세스할 필요가 없는 사용자에게 적합합니다.

  • SQLAgentReaderRole

    권한

    • SQLAgentUserRole의 모든 권한

    • 다른 사용자가 생성한 작업 및 일정을 포함하여 모든 작업 및 일정 목록 보기

    • 모든 작업의 속성 보기

    • 작업 기록 검토

    이 역할은 모든 작업의 상태를 모니터링해야 하지만 관리할 필요는 없는 사용자에게 적합합니다.

  • SQLAgentOperatorRole

    권한

    • SQLAgentUserRole 및 SQLAgentReaderRole의 모든 권한

    • 작업 실행, 중지 또는 시작

    • 작업 기록 관리

    • 작업 및 일정 활성화/비활성화

    • 연산자 및 프록시 보기

    이 역할은 가장 포괄적인 권한을 제공하며 모든 작업을 완전히 제어해야 하는 사용자에게 적합합니다.

다음 명령을 사용하여 SQL Server 로그인에 역할을 할당합니다.

USE msdb; EXEC sp_addrolemember 'SQLAgentOperatorRole', 'username';

RDS for SQL Server에서 SQLAgentOperatorRole 관리

현재 작업을 보려면 SQL Server 로그인에 SQLAgentOperatorRole을 추가하고 데이터베이스 연결을 해제하기 전에 제거해야 합니다.

SQL Server Management Studio에서 SQL Server 에이전트 트리를 시각화하려면 다음 지침을 따르세요.

SQL Server Management Studio(SSMS)에서 SQL Server 에이전트 보기
  1. RDS 마스터 자격 증명을 사용하여 RDS SQL Server 인스턴스에 로그인하고 원하는 사용자에게 SQLAgentUserRole을 부여합니다.

    USE msdb GO IF NOT EXISTS(SELECT name FROM sys.database_principals WHERE name = 'UserName') BEGIN CREATE USER UserName FROM LOGIN UserName END GO ALTER ROLE SQLAgentUserRole ADD MEMBER UserName GO GRANT ALTER ON ROLE::[SQLAgentOperatorRole] to UserName GO

    이러한 명령은 사용자가 존재하지 않는 경우 msdb 데이터베이스에 사용자를 생성합니다. 또한 SSMS의 SQL Server 에이전트 트리가 표시되도록 SQLAgentUserRole에 사용자를 추가합니다. 마지막으로, SQLAgentOperatorRole에 대한 변경 권한을 사용자에게 부여합니다. 이렇게 하면 사용자가 해당 역할에 자신을 추가/제거할 수 있습니다.

  2. 위에서 언급한 역할에 자신을 추가하려면 작업을 확인해야 하는 사용자와 함께 RDS SQL Server 인스턴스에 연결하고 다음 스크립트를 실행합니다.

    use msdb go ALTER ROLE SQLAgentOperatorRole ADD MEMBER UserName GO

    그런 다음, 작업 폴더를 마우스 오른쪽 버튼으로 클릭하고 새로 고침을 선택합니다.

  3. 이 작업을 수행하면 작업 탭에 +(더하기) 버튼이 표시됩니다. 이 버튼을 클릭하여 SQL Server 에이전트 작업 목록을 확장합니다.

  4. 중요

    RDS SQL Server 인스턴스에서 연결을 해제하기 전에 SQLAgentOperatorRole에서 자신을 제거해야 합니다.

    SQLAgentOperatorRole에서 로그인을 제거하려면 Management Studio를 연결 해제하거나 닫기 전에 다음 쿼리를 실행합니다.

    USE msdb GO ALTER ROLE SQLAgentOperatorRole DROP MEMBER UserName GO

자세한 내용은 Leveraging SQLAgentOperatorRole in RDS SQL Server을 참조하세요.