Partilhar via


Segurança de integração CLR

Aplica-se a:SQL Server

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

O modelo de segurança de integração CLR tem os seguintes objetivos:

  • Por padrão, a execução de código de usuário gerenciado no SQL Server não deve comprometer a integridade e a estabilidade do SQL Server. A execução de operações que potencialmente comprometem a robustez do SQL Server deve ser protegida por permissões de alto nível apropriadas.

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

  • Deve haver controles para restringir o código do usuário de acessar quaisquer recursos fora do servidor, usando-o estritamente para acesso a dados locais e computação.

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

O SQL Server agora integra o modelo de segurança baseado em usuário do SQL Server com o modelo de segurança baseado em acesso a código do CLR. Algumas das vantagens desta abordagem combinada à segurança são discutidas nesta secção.

Nesta secção

A tabela a seguir lista os artigos desta seção.

Artigo Descrição
Integração CLR de Segurança de Acesso ao Código Discute o modelo de segurança de acesso ao código (CAS) para código gerenciado
Atributos de proteção de host e de programação de integração CLR Fornece informações sobre os valores de atributo de proteção do host (HPA) que não são permitidos em SAFE e EXTERNAL_ACCESS assemblies
Representação e credenciais para conexões Descreve como partes de código de usuário podem chamar umas às outras no SQL Server
Domínios de Aplicação e de Segurança de Integração CLR Descreve como assemblies são carregados em domínios de aplicativo