[SQL] GRANT 모든 저장 프로 시저 실행을
SQLGRANT 모든 저장 프로 시저 실행을
다음 명령을 효과적으로 사용자 주는가 "참고 MyUser를,"권한은 모두 데이터베이스에 저장 프로 시저를 실행하려면?
GRANT EXECUTE TO [MyDomain\MyUser]
해결법
-
==============================
1.SQL Server 2008 및 위 :
SQL Server 2008 및 위 :
/* CREATE A NEW ROLE */ CREATE ROLE db_executor /* GRANT EXECUTE TO THE ROLE */ GRANT EXECUTE TO db_executor
단지 사용자 (안 역할)의 경우 :
USE [DBName] GO GRANT EXECUTE TO [user]
-
==============================
2.SQL Server 2005는 당신이 설명한대로 데이터베이스, 데이터베이스 원리에 실행 권한을 부여 할 수있는 기능을 도입 :
SQL Server 2005는 당신이 설명한대로 데이터베이스, 데이터베이스 원리에 실행 권한을 부여 할 수있는 기능을 도입 :
GRANT EXECUTE TO [MyDomain\MyUser]
즉 암시 적으로 모든 스키마의 모든 저장 프로 시저를 포함하는 데이터베이스 범위에서 권한을 부여합니다. 명시 적으로 저장 프로 시저에 따라 권한을 부여 할 필요가 없습니다이 의미합니다.
당신은 또한 당신이 더 세분화되고 싶은 경우 스키마가 실행 권한을 부여하여 제한 할 수 있습니다 :
GRANT EXECUTE ON SCHEMA ::dbo TO [MyDomain\MyUser]
-
==============================
3.위의 답변뿐만 아니라, 내가 추가하고 싶습니다 :
위의 답변뿐만 아니라, 내가 추가하고 싶습니다 :
대신 역할에이 권한을 부여하고 사용자 (들)에게 역할을 할당 할 수 있습니다. 당신은을 통해 역할 myAppRights을 만든 가정 해
CREATE ROLE [myAppRights]
당신은을 통해 실행 권한을 부여 할 수 있습니다
GRANT EXECUTE TO [myAppRights]
그 역할에.
또는, 스키마 수준에서 그것을 수행하려는 경우 :
GRANT EXECUTE ON SCHEMA ::dbo TO [myAppRights]
또한 (이 예에서는 역할 myAppRights 나중에 스키마 DBO의 모든 요소에 대한 권리를 실행해야합니다) 작동합니다.
좀 더 복잡한 액세스 프로파일을 작성하려는 경우 특히 유용합니다 - 당신이 나중에 그것을 변경해야하는 경우 및 할당 할 수 있습니다 / 사용자로부터 / 쉽게 모든 관련 응용 프로그램 권한을 취소하면이 방법, 당신은 단지 그것을 할 수 있습니다.
참고 : 나중에 만든 것이다 요소에 영향을 미치는 스키마에 역할을 부여하면 -이, 이익 또는 의도 된 설계에 따라하지 수 있도록 명심 수 있습니다.
-
==============================
4.GRANT EXECUTE TO [역할]
GRANT EXECUTE TO [역할]
이것은 확실히 도움
from https://stackoverflow.com/questions/9321334/grant-execute-to-all-stored-procedures by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 인덱스가 존재하지 않을 때 추가 최신 행 결정 [중복] (0) | 2020.07.20 |
---|---|
[SQL] 조건과 고유 한 카운트 (0) | 2020.07.20 |
[SQL] 나는 다른 데이터베이스 테이블에 하나의 데이터베이스와 삽입에서 포함 된 테이블을 복사하려면 (0) | 2020.07.20 |
[SQL] 소켓 '/tmp/mysql.sock'을 통해 지역의 MySQL 서버에 연결할 수 없습니다 (2) (0) | 2020.07.20 |
[SQL] 어떻게 데이터베이스가 오라클 및이 SQL을 사용하여 어떤 버전 확인할 수 있습니까? (0) | 2020.07.20 |