2009-09-01 44 views
17

Tôi muốn tạo người dùng mới trên db chỉ với quyền chọn (truy cập chỉ đọc) làm cách nào tôi có thể thực hiện việc này? Tôi đang làm việc với sql 2008Cách cho phép người dùng chỉ chọn quyền trên cơ sở dữ liệu

+1

Hiya - đây là loại câu hỏi đó ServerFault.com được thiết kế cho, vì nó nhiều hơn một câu hỏi chính như trái ngược với một câu hỏi lập trình. Bạn có thể có may mắn hơn ở đó (và câu hỏi này có thể được di chuyển ở đó từ đây). Chào mừng bạn đến với StackOverflow. :) – Amber

Trả lời

31

Bạn có thể thêm người dùng vào Vai trò cấp cơ sở dữ liệu db_datareader.

Thành viên của vai trò cơ sở dữ liệu cố định db_datareader có thể chạy câu lệnh SELECT đối với bất kỳ bảng hoặc chế độ xem nào trong cơ sở dữ liệu.

Xem Books Online để tham khảo:

http://msdn.microsoft.com/en-us/library/ms189121%28SQL.90%29.aspx

Bạn có thể thêm một người sử dụng cơ sở dữ liệu đến một vai trò cơ sở dữ liệu bằng cách sử dụng truy vấn sau đây:

EXEC sp_addrolemember N'db_datareader', N'userName' 
+0

câu trả lời tuyệt vời. +1 –

11

Bạn có thể sử dụng Tạo người dùng tạo một người dùng

CREATE LOGIN sam 
    WITH PASSWORD = '340$Uuxwp7Mcxo7Khy'; 
USE AdventureWorks; 
CREATE USER sam FOR LOGIN sam; 
GO 

và cấp (Chỉ truy cập chỉ đọc s) bạn có thể sử dụng sau đây

GRANT SELECT TO sam 

Hy vọng điều đó sẽ hữu ích.

18

Đối với những người cùng chí hướng GUI, bạn có thể:

  • Nhấp chuột phải vào cơ sở dữ liệu trong Management Studio.
  • Chọn Properties
  • Chọn Quyền
  • Nếu người dùng của bạn không hiển thị trong danh sách, chọn Search và gõ tên của họ
  • Chọn người dùng trong Users hoặc Role liệt kê
  • Trong khung cửa sổ thấp , Kiểm tra Select phép dưới cột Grant
-1
create LOGIN guest WITH PASSWORD='[email protected]', CHECK_POLICY = OFF; 

Hãy chắc chắn khi bạn muốn exceute sau

DENY VIEW ANY DATABASE TO guest; 

ALTER AUTHORIZATION ON DATABASE::BiddingSystemDB TO guest 

chọn cơ sở dữ liệu nên Thạc sĩ

Các vấn đề liên quan