일련의 응용 프로그램에 대한 모든 테이블이 포함 된 데이터베이스 (DB_data라고 부름)로 작업하고 있습니다. 업그레이드 중 다운 타임을 최소화하기 위해 DB_data의 각 테이블에 대한 뷰가있는 facade 데이터베이스 (DB_facade라고 부름)가 생성되었습니다. 또한 이러한 뷰에 대해 작동하는 모든 함수 및 저장 프로 시저를 포함합니다.데이터베이스 간보기 권한
DB_data에서 보안을 잠그려고 할 때 DB_data의 모든 사용자에 대해 모든 테이블에서 DENY를 수행했습니다. 이러한 모든 사용자는 뷰에 대한 사용 권한이있는 DB_facade에서도 생성되었습니다.
여기서 문제는 데이터베이스 간 소유권 체인으로 인해 DB_data의 DENY가 DB_facade의 GRANT보다 우선합니다.
원래의 테스트에서 액세스 문제를 해결 한 것 같지만 잠재적 인 보안 문제로 인해이 두 데이터베이스의 소유권 체인을 사용하지 않는 것이 좋습니다. 또한 응용 프로그램에 미치는 영향을 최소화하기 위해 모든 액세스가 저장 프로 시저를 통해 이루어지고 인증서 사용이 필요하지 않습니다.
아무도이 문제를 해결하는 방법에 대한 다른 제안이 있습니까?
감사합니다.
[권한 부여] (http://www.sommarskog.se/grantperm.html) 및 [게스트 사용자 계정] (http://www.mssqltips.com/tip.asp?)에서 이러한 링크를 찾을 수 있습니다. tip = 1172) helpful –