Autorização do acesso a objetos e operações (Serviços de Análise)

Aplica-se a: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Utilizadores não administrativos têm acesso a cubos, dimensões e modelos de mineração dentro de uma base de dados do SQL Server Analysis Services por serem membros de uma ou mais funções de base de dados. Os administradores do SQL Server Analysis Services criam estas funções da base de dados, concedem permissões de Leitura ou de Leitura/Escrita nos objetos do SQL Server Analysis Services e atribuem utilizadores e grupos do Microsoft Windows a cada função.

O SQL Server Analysis Services determina as permissões efetivas para um utilizador ou grupo específico do Windows, combinando as permissões associadas a cada papel de base de dados ao qual o utilizador ou grupo pertence. Como resultado, se um papel de base de dados não der permissão a um utilizador ou grupo para visualizar uma dimensão, medida ou atributo, mas um papel diferente de base de dados der permissão a esse utilizador ou grupo, o utilizador ou grupo tem permissão para visualizar o objeto.

Importante

Os membros do papel de Administrador do SQL Server Analysis Services e os membros de uma função de base de dados com permissões de Controlo Total (Administrador) podem aceder a todos os dados e metadados da base de dados e não necessitam de permissões adicionais para visualizar objetos específicos. Além disso, os membros do papel de servidor SQL Server Analysis Services não podem ser impedidos de aceder a qualquer objeto em qualquer base de dados, e os membros de uma base de dados do SQL Server Analysis Services que tenham permissões de Controlo Total (Administrador) dentro de uma base de dados não podem ser impedidos de aceder a qualquer objeto dessa base de dados. Operações administrativas especializadas, como o processamento, podem ser autorizadas através de funções separadas com menos permissão. Consulte permissões para concessão de processos (Serviços de Análise) para mais informações.

Lista de papéis definidos para a sua base de dados

Os administradores podem executar uma consulta simples ao DMV no SQL Server Management Studio para obter uma lista de todos os papéis definidos no servidor.

  1. No SSMS, clique com o botão direito numa base de dados e selecione Nova Consulta | MDX.

  2. Escreva a seguinte consulta e pressione F5 para executar:

    Select * from $SYSTEM.DBSCHEMA_CATALOGS  
    

    Os resultados incluem o nome da base de dados, a descrição, o nome da função e a data da última modificação. Usando esta informação como ponto de partida, pode aceder a bases de dados individuais para verificar a pertença e as permissões de uma função específica.

Visão geral de cima para baixo da autorização dos Serviços de Análise

Esta secção cobre o fluxo de trabalho básico para configurar permissões.

Passo 1: Administração do Servidor

Como primeiro passo, decida quem terá direitos de administrador ao nível do servidor. Durante a instalação, o administrador local que instala o SQL Server é obrigado a especificar uma ou mais contas Windows como administrador do servidor dos Serviços de Análise. Os administradores de servidores têm todas as permissões possíveis num servidor, incluindo a permissão para visualizar, modificar e eliminar qualquer objeto no servidor, ou visualizar dados associados. Após a conclusão da instalação, um administrador de servidores pode adicionar ou remover contas para alterar a composição desta função. Consulte Conceder direitos de administrador de servidor a uma instância de Serviços de Análise para detalhes sobre este nível de permissão.

Passo 2: Administração da Base de Dados

De seguida, depois de criar uma solução tabular ou multidimensional, implemente-a no servidor como base de dados. Um administrador de servidores pode delegar tarefas de administração de bases de dados definindo um papel que tenha permissões de Controlo Total para a base de dados. Os membros deste papel podem processar ou consultar objetos na base de dados, bem como criar funções adicionais para aceder a cubos, dimensões e outros objetos dentro da própria base de dados. Para mais informações, consulte Conceder permissões de base de dados (Serviços de Análise).

Passo 3: Ativar o acesso a cubos ou modelos para cargas de trabalho de consulta e processamento

Por defeito, apenas administradores de servidores e bases de dados têm acesso a cubos ou modelos tabulares. Para tornar estas estruturas de dados disponíveis para outras pessoas na sua organização, atribua papéis adicionais que mapeem as contas de utilizadores e grupos do Windows para cubos ou modelos, juntamente com permissões que especifiquem privilégios de Leitura. Para mais informações, consulte Conceder permissões de cubo ou modelo (Serviços de Análise).

Pode isolar tarefas de processamento das outras funções administrativas. Isto permite aos administradores de servidores e de bases de dados delegar esta tarefa noutras pessoas, ou configurar o processamento sem supervisão, especificando contas de serviço que executam software de agendamento. Para mais informações, consulte Concessão de permissões de processo (Serviços de Análise).

Observação

Os utilizadores não precisam de quaisquer permissões para as tabelas relacionais na base de dados relacional subjacente a partir das quais o SQL Server Analysis Services carrega os seus dados. Também não precisam de permissões ao nível do ficheiro no computador onde a instância do SQL Server Analysis Services está a correr.

Passo 4 (Opcional): Permitir ou negar o acesso a objetos interiores do cubo

O SQL Server Analysis Services fornece definições de segurança para definir permissões em objetos individuais, incluindo membros de dimensões e células dentro de um modelo de dados. Para mais informações, consulte Conceder acesso personalizado a dados dimensionais (Serviços de Análise) e Conceder acesso personalizado a dados de células (Serviços de Análise).

Também pode variar as permissões consoante a identidade do utilizador. Esta variação é frequentemente referida como segurança dinâmica e é implementada usando a função Nome de Utilizador (MDX ).

Melhores práticas

Para gerir melhor as permissões, utilize uma abordagem semelhante aos seguintes passos:

  1. Crie funções por função (por exemplo, dbadmin, cubedeveloper, processadmin) para que quem mantém os papéis possa ver de relance o que o cargo permite. Como referido noutro local, pode definir papéis na definição do modelo, preservando assim esses papéis em relação às implementações subsequentes da solução.

  2. Crie um grupo de segurança Windows correspondente no Active Directory e depois mantenha o grupo de segurança no Active Directory para garantir que contém as contas individuais apropriadas. Esta abordagem atribui a responsabilidade pela pertença ao grupo de segurança aos especialistas em segurança que já têm proficiência nas ferramentas e nos processos utilizados para a manutenção de contas na sua organização.

  3. Gera scripts no SQL Server Management Studio para que possas replicar rapidamente as atribuições de papéis sempre que o modelo for redistribuído dos ficheiros fonte para um servidor. Consulte Conceder permissões de cubo ou modelo (Serviços de Análise) para detalhes sobre como gerar rapidamente um script.

  4. Adote uma convenção de nomenclatura que reflita o âmbito e a composição do cargo. Os nomes das funções só são visíveis em ferramentas de design e administração, por isso use uma convenção de nomes que faça sentido para os seus especialistas em segurança de cubos. Por exemplo, processadmin-windowsgroup1 indica acesso de leitura, mais direitos de processamento, a pessoas na sua organização cujas contas individuais de utilizador Windows pertencem ao grupo de segurança windowsgroup1 .

    Incluir informações de conta pode ajudá-lo a acompanhar quais contas são usadas em várias funções. Como os papéis são aditivos, os papéis combinados associados ao windowsgroup1 constituem o conjunto efetivo de permissões para as pessoas pertencentes a esse grupo de segurança.

  5. Os programadores do Cube necessitam de permissões de Controlo Total para modelos e bases de dados em desenvolvimento, mas só precisam de permissões de Leitura depois de uma base de dados ser implementada num servidor de produção. Lembre-se de desenvolver definições de funções e atribuições para todos os cenários, incluindo desenvolvimento, testes e implementações em produção.

Ao adotar uma abordagem como esta, minimiza-se a rotatividade nas definições de funções e na afiliação de funções no modelo, e obtém-se uma visibilidade nas atribuições de funções que torna mais fácil implementar e manter as permissões do cubo.

Consulte também

Conceder direitos de administrador de servidor a uma instância de Serviços de Análise
Funções e Permissões (Serviços de Análise)
Metodologias de autenticação suportadas pelos Serviços de Análise