Compartilhar via


Segurança da integração CLR

O modelo de segurança da integração do SQL Server com o CLR (Common Language Runtime) .NET Framework gerencia e protege o acesso entre tipos diferentes de objetos CLR e não CLR em execução no SQL Server. Esses objetos podem ser chamados por uma instrução Transact-SQL ou outro objeto CLR em execução no servidor. As chamadas entre objetos conhecidas como links. Os tipos de verificações de segurança realizados nesses objetos dependem dos tipos de links envolvidos.

O modelo de segurança de integração do CLR tem as seguintes metas:

  • Por padrão, executar código de usuário gerenciado no SQL Server não deve comprometer a integridade e a estabilidade do SQL Server. Realizar operações que podem comprometem a eficiência do SQL Server deve ser protegido por meio de permissões de alto nível apropriadas.

  • O código de usuário gerenciado não deve ter acesso não autorizado a dados de usuário ou outro código de usuário no banco de dados. O código definido pelo usuário deve ser executado no contexto de segurança da sessão do usuário que o invocou e com os privilégios corretos para o contexto de segurança.

  • Deve haver controles para impedir que o código do usuário acesse qualquer recurso fora do servidor, usando-o estritamente para acesso a dados locais e computação.

  • O código definido pelo usuário não deve obter acesso não autorizado a recursos do sistema em virtude da execução no processo do SQL Server.

O SQL Server agora integra o modelo de segurança baseado no usuário do SQL Server com o modelo de segurança baseado no acesso ao código do CLR. Algumas das vantagens dessa abordagem combinada em relação à segurança são abordadas nesta seção.

A tabela a seguir lista os tópicos desta seção.

Consulte também

Conceitos

Gerenciando assemblies de integração CLR