DBAtlas · 데이터베이스 운영 아틀라스

229: The SELECT/EXECUTE permission was denied on the object

SQL Server

의미

사용자에게 객체에 대해 요청한 작업(SELECT, INSERT, EXECUTE 등)을 수행할 권한이 없다. 보안상 접근이 거부되었다.

원인

필요한 권한이 사용자/롤에 부여되지 않음, 잘못된 스키마 소유권(ownership chaining 단절), 객체에 대한 명시적 DENY, 또는 사용자가 충분한 롤의 멤버가 아님.

해결 방법

필요한 권한을 부여한다: GRANT SELECT ON dbo.MyTable TO UserName(또는 GRANT EXECUTE ON dbo.MyProcedure TO ...). 사용자를 적절한 롤(예: db_datareader)에 추가한다. 명시적 DENY가 있으면 제거한다. 최소 권한 원칙에 따라 권한을 구성한다. sys.database_permissions로 기존 권한을 감사한다.

DBAtlas에서 열기 →

같은 데이터베이스의 다른 항목