2016-09-06 1 views
0

Я подключаюсь к моему менеджеру студий SQL с помощью Power BI (программа для написания отчетов). Мне нужно только, чтобы таблицы отображались в определенной схеме и запрещали доступ ко всем остальным, вместо отображения всех таблиц, которые она в настоящее время делает.Предотвращать доступ всех пользователей к таблицам/представлениям по схеме

Обычно, когда предотвращение индивидуальных пользователей от доступа к схеме, я хотел бы использовать следующий код:

revoke select on schema::UnwantedSchema to User 
grant select on schema::WantedSchema To User 

Однако, теперь я хочу, так что все пользователи и логины этих настроек разрешения. Не только индивидуальный пользователь. Есть ли способ сделать это без необходимости устанавливать разрешения для каждого отдельного пользователя?

ответ

1

Если вы хотите установить права доступа к нескольким пользовательским входам, вам необходимо создать роль и назначить роль для этой роли. Предоставить необходимое разрешение для созданной роли.

Ниже приведены примеры шагов.

--Create a new role 
EXEC sp_addrole 'yourRole' 
GO 

--Assiging role to the user 
EXEC sp_addrolemember 'yourRole', 'yourUser'; 
GO 

--Assigning permissions to the Role 
GRANT ALTER, DELETE, EXECUTE, INSERT, REFERENCES, SELECT, 
      UPDATE, VIEW DEFINITION ON SCHEMA::YourSchema TO yourRole; 
GO 

GRANT CREATE TABLE, CREATE PROCEDURE, CREATE FUNCTION, CREATE VIEW TO yourRole; 
GO 

 Смежные вопросы

  • Нет связанных вопросов^_^