Sintomi
Si consideri lo scenario seguente:
-
Si esegue un'istanza del catalogo di Integration Services e SSISDB in Microsoft SQL Server 2012 o SQL Server 2014.
-
Le autorizzazioni concesse ai membri del gruppo di Windows in modo che abbiano accesso a un SSIS ambiente, progetto o cartella da proteggere articolo catalogo.
Nota: È possibile concedere le autorizzazioni in uno dei seguenti modi:-
Utilizzare Management Studio. Per eseguire questa operazione, destro dell'oggetto nel catalogo di Integration Services, scegliere proprietàe quindi, nella pagina autorizzazioni , passare al gruppo, aggiungere il gruppo, quindi selezionare le autorizzazioni per tale gruppo.
-
Si chiama la stored procedure seguente:
[SSISDB].[catalog].[grant_permission]
-
-
Un utente di Windows che è un membro del gruppo di Windows tenta di visualizzare ed eseguire i pacchetti nel database di SSISDB nel catalogo di Integration Services mediante l'utilizzo di Management Studio o la stored procedure.
In questo scenario, l'utente non può vedere i pacchetti a cui sono state concesse autorizzazioni e non può convalidare o eseguire i pacchetti.
Causa
Questo problema si verifica a causa di un problema di viste interne SSISDB. In questo modo l'utente non le autorizzazioni valide previste quando le autorizzazioni vengono concesse tramite l'appartenenza al gruppo di Windows.
Risoluzione
Il problema è stato risolto prima nell'aggiornamento cumulativo seguente di SQL Server.
Aggiornamento cumulativo 1 per SQL Server 2014/en-us/help/2931693
Aggiornamento cumulativo 7 per SQL Server 2012 SP1/en-us/help/2894115
Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli hotfix e tutte le correzioni di protezione che sono state incluse nell'aggiornamento cumulativo precedente. Estrarre gli ultimi aggiornamenti cumulativi per SQL Server:
Soluzione alternativa
Per risolvere questo problema, non utilizzare il gruppo di Windows dei vari utenti per l'accesso di SSIS da proteggere. Utilizzare invece un ruolo del database definito dall'utente in SQL Server per incapsulare l'elenco degli utenti di Windows necessario e quindi assegnare le autorizzazioni al ruolo del database.
A tale scopo, attenersi alla seguente procedura:
-
Creare i login di Windows necessari per l'istanza di SQL Server e quindi assegnare all'utente l'accesso al database SSISDB. Ad esempio, è possibile utilizzare Management Studio passando alla protezione, facendo clic su account di accessoe quindi fare clic su Nuovo account di accesso. In alternativa, è possibile utilizzare lo script seguente per ogni accesso dell'utente di Windows:
Utilizzare master
GO
CREATE LOGIN dominio\nomeutente con WINDOWS DEFAULT_DATABASE =master
GO
Utilizzare SSISDB
GO
Crea utente dominio\nomeutente FOR LOGIN dominio\nomeutente
GO -
Nel database di SSISDB, creare un ruolo di database definito dall'utente, ad esempio ssis_users. Ad esempio, è possibile utilizzare Management Studio per accedere ai database, scegliere SSISDBfacendo clic su protezione, facendo clic su ruoli, Ruoli del Databasee quindi facendo clic su Nuovo ruolo del Database. In alternativa, è possibile utilizzare il seguente script:
Utilizzare SSISDB
GO
Crea ruolo ssis_users
GO -
Aggiungere gli utenti desiderati in SSISDB il ruolo ssis_users. Ad esempio, è possibile utilizzare Management Studio per accedere ai database, scegliere SSISDBfacendo clic su protezione, facendo clic su ruoli, Ruoli del Database, facendo clic su Membri del ruoloe quindi fare clic su Aggiungi. In alternativa, è possibile utilizzare il seguente script:
Utilizzare SSISDB
GO
ALTER ROLE ssis_users Aggiungi membro dominio\nomeutente
GO -
Destro oggetto a protezione diretta nel catalogo di servizi di integrazione, fare clic su proprietà, fare clic su Sfoglia nella pagina autorizzazioni per aggiungere il ruolo di Database nelle autorizzazioni e quindi fare Grant o Deny alle autorizzazioni esplicite desiderate come segue:
Nota: Queste autorizzazioni potrebbero non essere sufficiente per eseguire correttamente un pacchetto SSIS. Ogni pacchetto SSIS è un modello e può avere requisiti supplementari specifici per accedere a determinati server e database o le condivisioni per convalidare o eseguire correttamente il pacchetto SSIS.
Stato
Microsoft ha confermato che questo è un problema dei prodotti Microsoft elencati nella sezione "Si applica a".
Riferimenti
Per ulteriori informazioni, vedere gli argomenti seguenti nel sito Web Microsoft Developer Network (MSDN):
Catalogo SSIS
Finestra di dialogo Proprietà cartella
Finestra di dialogo Proprietà progetto
Finestra di dialogo proprietà di ambiente
Vedere la terminologia utilizzata da Microsoft per descrivere gli aggiornamenti software.