문제

전제 조건 :

delphi32에는 작성된 클라이언트/서버 응용 프로그램이 있습니다. RDBMS는 SQL Server 2005입니다. 특정 응용 프로그램 기능은 대상 데이터베이스에서 트리거 생성/삭제 (Ad Hoc DDL 문을 사용하는 응용 프로그램)를 필요로합니다.

문제:

사용자가 역할에 속하는 경우 Sysadmin은 트리거를 작성/드롭하는 데 아무런 문제가 없습니다. 그러나 이것은 응용 프로그램 사용자에게는 너무 허용되는 역할로 간주됩니다.

질문:

  • 트리거 생성/드롭에 사용될 수있는 표준 최소 (예 : 가장 제한적인) SQL 서버 역할은 무엇입니까?
  • 표준 역할을 사용하는 것이 아니라이 문제를 해결하기위한보다 세밀한 접근 방식을 구성 할 수 있습니까?
도움이 되었습니까?

해결책

보조금의 범위에 따라 다양한 옵션이 있습니다 (데이터베이스의 트리거, 스키마 또는 특정 테이블의 트리거).

일반적으로 SQL 작업에 필요한 권한은 SQL 참조에 문서화되어 있습니다. 예를 들어 CREATE TRIGGER SQL 2008에서 여기 ( "권한"으로 아래로 스크롤),이 경우 :

DML 트리거는 테이블에서 ALTER PERSIRMING이 필요합니다.

원하는 권한 만 부여한 다음 해당 역할에 사용자/그룹을 추가 할 수 있으므로 최소한의 역할은 구성원을 허용하려는 특정 액세스만으로 만드는 역할입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top