Tôi gặp sự cố khi đặt VIEW DEFINITION
quyền một cách thích hợp ở cấp lược đồ cho một trong những người dùng của tôi. Tôi đã tạo lược đồ TestSchema
và thêm một số bảng. Người dùng hiện có quyền truy cập thiết lập để truy cập & sửa đổi bảng ( SELECT
, UPDATE
, DELETE
, vv) thông qua dbo_datareader
và dbo_datawriter
vai trò. Tuy nhiên, họ không thể thấy bất kỳ bảng nào trong trình thám hiểm đối tượng SSMS.
Tôi đã thử cấp quyền để xem định nghĩa:
grant view definition on SCHEMA :: [TestSchema] to [User]
Điều đó đã không làm việc. Tôi đã thử thiết lập quyền cấp bảng:
grant view definition on [TestSchema].[NewTable] to [User]
Điều đó cũng không hiệu quả. Sau đó, tôi đã cố gắng chỉ là một khoản trợ cấp chăn:
grant view definition to [User]
Và điều đó đã làm việc; bây giờ họ có thể thấy TestSchema
, cũng như các lược đồ khác mà họ không nên truy cập.
Mục tiêu của tôi ở đây là cho phép người dùng xem tất cả các bảng trong một lược đồ nhất định. Làm thế nào để tôi thực hiện điều đó? Nếu tôi nên có thể làm điều này bằng cách mặc định, các quyền mà tôi nên được xem xét để tìm lý do tại sao tôi không thể?