저장 프로시저에 대한 사용 권한 부여

적용 대상:SQL ServerAzure SQL 데이터베이스Azure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System(PDW)

이 문서에서는 SQL Server Management Studio 또는 Transact-SQL을 사용하여 SQL Server에서 저장 프로시저에 대한 권한을 부여하는 방법에 대해 설명합니다. 데이터베이스의 기존 사용자, 데이터베이스 역할 또는 애플리케이션 역할에 사용 권한을 부여할 수 있습니다.

제한 사항

  • SQL Server Management Studio 를 사용하여 시스템 프로시저나 시스템 함수에 대한 사용 권한을 부여할 수 없습니다. 이 경우 GRANT Object Permissions 를 사용하세요.

권한

사용 권한을 부여한 사용자 또는 AS 옵션으로 지정한 보안 주체에게 GRANT OPTION을 통한 사용 권한이 있거나 부여할 사용 권한을 포함하는 상위 사용 권한이 있어야 합니다. 프로시저가 속한 스키마에 대한 ALTER 권한 또는 프로시저에 대한 CONTROL 권한이 필요합니다. 자세한 내용은 GRANT 개체 사용 권한(Transact-SQL)을 사용하여 저장 프로시저에 대한 사용 권한을 부여하는 방법에 대해 설명합니다.

SQL Server Management Studio 사용

저장 프로시저에 대한 사용 권한을 부여하려면

  1. 개체 탐색기에서 데이터베이스 엔진 의 인스턴스에 연결한 다음 해당 인스턴스를 확장합니다.

  2. 데이터베이스를 확장하고 해당 프로시저가 속한 데이터베이스를 확장한 다음 프로그래밍 기능을 확장합니다.

  3. 저장 프로시저를 확장하고, 권한을 부여할 프로시저를 마우스 오른쪽 단추로 클릭한 다음, 속성을 선택합니다.

  4. 저장 프로시저 속성에서 사용 권한 페이지를 선택합니다.

  5. 사용자, 데이터베이스 역할 또는 애플리케이션 역할에 권한을 부여하려면 검색을 선택합니다.

  6. 사용자 또는 역할 선택에서 개체 형식을 선택하여 원하는 사용자와 역할을 추가하거나 지웁니다.

  7. 찾아보기를 선택하여 사용자 또는 역할 목록을 표시합니다. 사용 권한을 부여할 사용자 또는 역할을 선택합니다.

  8. 명시적 사용 권한 표에서 지정된 사용자 또는 역할에 부여할 사용 권한을 선택합니다. 사용 권한에 대한 설명은 사용 권한(데이터베이스 엔진)을 참조하세요.

허용 을 선택하면 지정된 사용 권한이 피부여자에게 제공됩니다. 허용 권한 소유 를 선택하면 피부여자가 지정된 사용 권한을 다른 보안 주체에 부여할 수도 있습니다.

Transact-SQL 사용

저장 프로시저에 대한 사용 권한을 부여하려면

  1. 데이터베이스 엔진에 연결합니다.

  2. 표준 도구 모음에서 새 쿼리를 선택합니다.

  3. 다음 예제를 복사하여 쿼리 창에 붙여넣고 실행을 선택합니다. 이 예에서는 EXECUTE 이라는 애플리케이션 역할에 대해 저장 프로시저 HumanResources.uspUpdateEmployeeHireInfo 에 대한 Recruiting11권한을 부여합니다.

USE AdventureWorks2022;   
GRANT EXECUTE ON OBJECT::HumanResources.uspUpdateEmployeeHireInfo  
    TO Recruiting11;  
GO  

스키마의 모든 저장 프로시저에 대한 권한을 부여하려면

  1. 데이터베이스 엔진에 연결합니다.

  2. 표준 도구 모음에서 새 쿼리를 선택합니다.

  3. 다음 예제를 복사하여 쿼리 창에 붙여넣고 실행을 선택합니다. 이 예제에서는 HumanResources 스키마에서 존재 유무에 관계없이 모든 저장 프로시저에 대한 EXECUTE 권한을 Recruiting11이라는 애플리케이션 역할에 부여합니다.

USE AdventureWorks2022;   
GRANT EXECUTE ON SCHEMA::HumanResources
    TO Recruiting11;  
GO  

다음 단계