Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Conceder permissões em nível de tabela no SQL Server


Inicie o SQL Server Management Studio e conecte-se às credenciais que receberam a função 'sa'.

Expanda Segurança , clique com o botão direito do mouse em Logins e selecione Novo Login .



Insira um Nome de login descritivo , selecione autenticação do SQL Server e digite uma senha segura. Na parte inferior da página, selecione o banco de dados ao qual o Chartio se conectará como o banco de dados padrão .



Selecione o Mapeamento do usuário guia, marque a caixa ao lado do banco de dados desejado, confirme se apenas 'público' está selecionado e clique em OK .



Clique em Nova consulta botão e selecione o banco de dados que você está conectando ao Chartio.

Cole a seguinte consulta na janela de consulta e execute. Substitua “chartio_read_only” pelo nome de usuário real do usuário que você criou.
SELECT 'GRANT SELECT ON "' + TABLE_SCHEMA + '"."' + TABLE_NAME + '" TO "chartio_read_only"' FROM information_schema.tables



Selecione e copie os resultados da consulta na janela de consulta.

Remova todas as tabelas ou visualizações que você não deseja que o “usuário chartio_read_only” tenha acesso. Neste exemplo, removi as tabelas Invoice e InvoiceLine porque elas contêm informações confidenciais.
GRANT SELECT ON "dbo"."Customer" TO "chartio_read_only"
GRANT SELECT ON "dbo"."Employee" TO "chartio_read_only"
GRANT SELECT ON "dbo"."Genre" TO "chartio_read_only"
GRANT SELECT ON "dbo"."MediaType" TO "chartio_read_only"
GRANT SELECT ON "dbo"."Playlist" TO "chartio_read_only"
GRANT SELECT ON "dbo"."PlaylistTrack" TO "chartio_read_only"
GRANT SELECT ON "dbo"."Track" TO "chartio_read_only"
GRANT SELECT ON "dbo"."Album" TO "chartio_read_only"
GRANT SELECT ON "dbo"."Artist" TO "chartio_read_only"

Execute a consulta.



Em seguida, você precisará conceder definição de exibição no esquema dbo. Copie a consulta abaixo e execute-a no SQL Server. Substitua o nome de usuário pelo nome de usuário que você criou anteriormente.
GRANT VIEW DEFINITION ON SCHEMA :: dbo TO chartio_read_only

Agora você pode usar essas credenciais para conectar o Chartio ao seu banco de dados com permissões somente leitura nas tabelas que você especificou.