Free cookie consent management tool by TermsFeed Policy Generator
  • SQL Server Video
  •    19 page views
  •   3011 video views
  • 2024, August 21, Wednesday

#026 How to enable Row Level Security in SQL Server

Apresentamos nesse vídeo como habilitar o nível de segurança de linha (Row Level Security) em registros da tabela do SQL Server.

Iremos conhecer as técnicas:

1. Criar tabela contendo os acessos dos usuários (CREATE TABLE):

  • O comando CREATE TABLE é usado para criar uma nova tabela no banco de dados SQL Server. Essa tabela pode ser projetada para armazenar informações relacionadas aos acessos dos usuários, como registros de login, timestamps, ou outros dados relacionados à segurança.

    Exemplo:

    CREATE TABLE TabelaAcessos (
        UsuarioID INT PRIMARY KEY,
        NomeUsuario NVARCHAR(50),
        DataAcesso DATETIME
    );
    

2. Criar consulta de definição de segurança (SELECT):

  • Uma consulta de definição de segurança geralmente é uma consulta SELECT que é projetada para recuperar informações relacionadas à segurança do banco de dados. Pode ser usada para verificar as permissões de um usuário ou revisar informações sobre a política de segurança.

    Exemplo:

    SELECT UsuarioID, NomeUsuario FROM TabelaAcessos WHERE NomeUsuario = 'NomeDeUsuario';
    

3. Criar função para validar os valores conforme a tabela de acessos (CREATE FUNCTION):

  • O comando CREATE FUNCTION é utilizado para criar uma função no SQL Server. Neste contexto, você pode criar uma função que valida os valores com base na tabela de acessos. Essa função pode ser usada como parte de uma política de segurança.

    Exemplo:

    CREATE FUNCTION dbo.ValidarAcesso(@UsuarioID INT)
    RETURNS TABLE
    AS
    RETURN (
        SELECT 1 AS AcessoPermitido
        FROM TabelaAcessos
        WHERE UsuarioID = @UsuarioID
    );
    

4. Criar política de segurança definindo a função como filtro (CREATE SECURITY POLICY):

  • O comando CREATE SECURITY POLICY é usado para criar uma política de segurança no SQL Server. Você pode definir uma função como um filtro de segurança nesta política, controlando o acesso aos dados com base nos resultados da função.

    Exemplo:

    CREATE SECURITY POLICY PoliticaAcesso
    ADD FILTER PREDICATE dbo.ValidarAcesso(UsuarioID) ON TabelaAcessos
    WITH (STATE = ON);
    

5. Executar uma consulta SQL como um usuário diferente (EXECUTE AS USER):

  • O comando EXECUTE AS USER permite que uma consulta SQL seja executada como se fosse um usuário diferente. Isso pode ser útil para testar as permissões e o acesso aos dados de um usuário específico.

    Exemplo:

    EXECUTE AS USER = 'NomeDeUsuario';
    SELECT * FROM TabelaAcessos;
    REVERT;
    

Esses conceitos e comandos no SQL Server são fundamentais para implementar e gerenciar políticas de segurança, garantindo que os dados sejam acessados apenas por usuários autorizados.

This content contains
  • Content Video
  • Language Portuguese
  • Duration 12m 50s
  • Subtitles Não

  • Reading time 1 min 53 seg

avatar
Fabio Santos

Data Scientist and Consultant for Digital and Analytics Solutions


  • Share

Youtube Channel

@fabioms

Subscribe now