Permissões de catálogo de serviços de integração não funcionam para grupos de Windows no SQL Server 2012 ou 2014 do SQL Server

Bugs #: 1519527 (SQL VSTS)
BUGS #: 196314 (Manutenção do conteúdo)

Sintomas

Considere o seguinte cenário:

  • Executar uma instância do catálogo de serviços de integração e o catálogo SSISDB de 2012 do Microsoft SQL Server ou SQL Server 2014.

  • Conceder permissões aos membros do grupo do Windows que tenham acesso a um SSIS pasta, o projecto ou o ambiente passível de ser protegido item de catálogo.

    Nota Pode conceder as permissões em qualquer uma das seguintes formas:

    • Utilize Management Studio. Para efectuar este procedimento, o objecto no catálogo de serviços de integração com o botão direito, seleccione Propriedadese, em seguida, na página de permissões , navegue para o grupo, adicione o grupo e, em seguida, seleccione as permissões para esse grupo.

    • Chamar o procedimento armazenado seguinte:

      [SSISDB].[catalog].[grant_permission]

  • Um utilizador do Windows que é membro do grupo Windows tenta visualizar e executar os pacotes na base de dados SSISDB no catálogo de serviços de integração utilizando Management Studio ou o procedimento armazenado.


Neste cenário, o utilizador não é possível ver os pacotes para o qual foram concedidas permissões e não é possível validar ou executar os pacotes.

Causa

Este problema ocorre devido a um problema nas vistas internos SSISDB. Isto impede que o utilizador ter as permissões efectivas esperadas quando as permissões são concedidas utilizando membros do grupo do Windows.

Resolução

O problema foi corrigido pela primeira vez na actualização cumulativa do SQL Server.

Actualização cumulativa 1 para o SQL Server 2014/en-us/help/2931693

Actualização cumulativa 7 para o SQL Server 2012 SP1/en-us/help/2894115

Cada nova actualização cumulativa para o SQL Server contém todas as correcções e todas as correcções de segurança que foram incluídas na anterior actualização cumulativa. Verifique as actualizações cumulativas mais recentes para o SQL Server:


Solução alternativa

Para contornar este problema, não utilize o grupo do Windows de vários utilizadores para aceder a SSIS passível de ser protegido. Em vez disso, utilize uma função de base de dados definido pelo utilizador no SQL Server para encapsular a lista de utilizadores do Windows necessária e, em seguida, atribua as permissões para essa função de base de dados.

Para tal, siga estes passos:

  1. Criar os logins do Windows necessários para a instância do SQL Server e, em seguida, atribua ao utilizador acesso à base de dados SSISDB. Por exemplo, pode utilizar o Management Studio vai para a segurança, clicando em inícios de sessãoe, em seguida, clicando em Novo início de sessão. Em alternativa, pode utilizar o script seguinte para cada início de sessão de utilizador do Windows:

    UTILIZAR principal
    GO
    Criar início de sessão de domínio\nome de utilizador do WINDOWS com DEFAULT_DATABASE =principal
    GO
    Utilize SSISDB
    GO
    Criar utilizador de domínio\nome de utilizador para início de sessão de domínio\nome de utilizador
    GO

  2. Na base de dados SSISDB, crie uma função de base de dados definido pelo utilizador, como ssis_users. Por exemplo, pode utilizar o Management Studio vai bases de dados, clicando em SSISDB, clicando em segurança, clicando em funções, clicando em Funções de base de dados, e, em seguida, clicando em Novo direito de base de dados. Em alternativa, pode utilizar o seguinte script:

    Utilize SSISDB
    GO
    Criar função ssis_users
    GO

  3. Adicione os utilizadores pretendidos na SSISDB a função ssis_users. Por exemplo, pode utilizar o Management Studio vai bases de dados, clicando em SSISDB, clicando em segurança, clicando em funções, clicando em Funções de base de dados, clicando em Membros da funçãoe, em seguida, clicando em Adicionar. Em alternativa, pode utilizar o seguinte script:

    Utilize SSISDB
    GO
    Alterar função ssis_users adicionar membros de domínio\nome de utilizador
    GO

  4. O objecto passível de ser protegido no catálogo de serviços de integração com o botão direito, clique em Propriedades, clique em Procurar na página de permissões para adicionar a função de base de dados para as permissões e, em seguida, seleccione conceder ou Negar nas permissões explícitas pretendidas da seguinte forma:

    Select Grant or Deny on the desired explicit permissions


Nota Estas permissões não podem ser suficientes para executar um pacote SSIS com êxito. Cada pacote SSIS é uma estrutura personalizada e poderá ter requisitos específicos adicionais para aceder a determinados servidores e bases de dados ou partilhas para validar ou execute o pacote SSIS com êxito.

Estado

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a".

Referências

Para mais informações, consulte os seguintes tópicos no Web site da Microsoft Developer Network (MSDN):

Catálogo SSIS

Caixa de diálogo de propriedades de pasta

Caixa de diálogo de propriedades do projecto

Caixa de diálogo de propriedades de ambiente


Consulte a terminologia utilizada pela Microsoft para descrever actualizações de software.

KE: jannaw
Autor: jasonh
Writer: v-thomr
Revisor técnico: jasonh; wegong; wajokiel; sqlprev; jannaw
Editor: v-anwale

Precisa de mais ajuda?

Aumente os seus conhecimentos
Explore as formações
Seja o primeiro a obter novas funcionalidades
Aderir ao Microsoft insiders

As informações foram úteis?

Obrigado pelos seus comentários!

Obrigado pelo seu feedback! Parece que poderá ser benéfico reencaminhá-lo para um dos nossos agentes de suporte do Office.

×