Partilhar via


Funções de segurança (Analysis Services – Dados Multidimensionais)

As funções são usadas no Microsoft SQL Server Analysis Services para gerenciar a segurança de objetos e dados do Analysis Services. Em termos básicos, uma função associa os SIDs (identificadores de segurança) de usuários e grupos do Microsoft Windows que têm direitos de acesso e permissões específicos definidos para objetos gerenciados por uma instância do Analysis Services. Dois tipos de funções são fornecidos no Analysis Services:

  • A função de servidor, uma função fixa que fornece acesso de administrador a uma instância do Analysis Services.

  • Funções de banco de dados, funções definidas pelos administradores para controlar o acesso a objetos e dados para usuários não administradores.

A segurança no Microsoft SQL Server Analysis Services é gerenciada usando funções e permissões. As funções são grupos de usuários. Os usuários, também chamados de membros, podem ser adicionados ou removidos das funções. As permissões para objetos são especificadas por funções e todos os membros em uma função podem usar os objetos para os quais a função tem permissões. Todos os membros em uma função têm permissões iguais para os objetos. As permissões são específicas para objetos. Cada objeto tem uma coleção de permissões com as permissões concedidas nesse objeto, diferentes conjuntos de permissões podem ser concedidos em um objeto. Cada permissão, da coleção de permissões do objeto, tem uma única função atribuída a ele.

Objetos de membro de função e função

Uma função é um objeto que contém uma coleção de usuários (membros). Uma definição de função estabelece a associação dos usuários no Analysis Services. Como as permissões são atribuídas por função, um usuário deve ser membro de uma função antes que o usuário tenha acesso a qualquer objeto.

Um Role objeto é composto pelos parâmetros Nome, ID e Membros. Membros é uma coleção de cadeias de caracteres. Cada membro contém o nome de usuário na forma de "domain\username". O nome é uma cadeia de caracteres que contém o nome da função. A ID é uma cadeia de caracteres que contém o identificador exclusivo da função.

Função de servidor

A função de servidor do Analysis Services define o acesso administrativo de usuários e grupos do Windows a uma instância do Analysis Services. Os membros dessa função têm acesso a todos os bancos de dados e objetos do Analysis Services em uma instância do Analysis Services e podem executar as seguintes tarefas:

  • Execute funções administrativas no nível do servidor usando o SQL Server Management Studio ou o SQL Server Data Tools (SSDT), incluindo a criação de bancos de dados e a configuração de propriedades no nível do servidor.

  • Execute funções administrativas programaticamente com AMO (Objetos de Gerenciamento de Análise).

  • Manter funções de banco de dados do Analysis Services.

  • Inicie rastreamentos (exceto para eventos de processamento, que podem ser executados por uma função de banco de dados com acesso ao processo).

Cada instância do Analysis Services tem uma função de servidor que define quais usuários podem administrar essa instância. O nome e a ID dessa função são Administradores e, ao contrário das funções de banco de dados, a função de servidor não pode ser excluída nem as permissões podem ser adicionadas ou removidas. Em outras palavras, um usuário é ou não um administrador de uma instância do Analysis Services, dependendo se ele está incluído na função de servidor para essa instância do Analysis Services.

Funções de banco de dados

Uma função de banco de dados do Analysis Services define o acesso do usuário a objetos e dados em um banco de dados do Analysis Services. Uma função de banco de dados é criada como um objeto separado em um banco de dados do Analysis Services e se aplica somente ao banco de dados no qual essa função é criada. Usuários e grupos do Windows são incluídos na função por um administrador, que também define permissões dentro da função.

As permissões de uma função podem permitir que os membros acessem e administrem o banco de dados, além dos objetos e dados no banco de dados. Cada permissão tem um ou mais direitos de acesso associados a ela, que, por sua vez, dão à permissão controle mais fino sobre o acesso a um objeto específico no banco de dados.

Objetos de permissão

As permissões são associadas a um objeto (cubo, dimensão, outros) para uma função específica. As permissões especificam quais operações o membro dessa função pode executar nesse objeto.

A Permission classe é uma classe abstrata. Portanto, você deve usar as classes derivadas para definir permissões nos objetos correspondentes. Para cada objeto, uma classe derivada de permissão é definida.

Objeto Classe
Database DatabasePermission
DataSource DataSourcePermission
Dimension DimensionPermission
Cube CubePermission
MiningStructure MiningStructurePermission
MiningModel MiningModelPermission

As possíveis ações habilitadas por permissões são mostradas na lista:

Ação Valores Explicação
Processo {true, false}

Default=false
Se true, os membros podem processar o objeto e qualquer objeto contido no objeto.

As permissões de processo não se aplicam a modelos de mineração. MiningModel as permissões são sempre herdadas de MiningStructure.
ReadDefinition {None, Basic, Allowed}

Default=None
Especifica se os membros podem ler a definição de dados (ASSL) associada ao objeto.

Se Allowed, os membros poderão ler o ASSL associado ao objeto.

Basic e Allowed são herdados por objetos contidos no objeto. Allowed substituições Basic e None.

Allowed é necessário para DISCOVER_XML_METADATA em um objeto. Basic é necessário para criar objetos vinculados e cubos locais.
Leitura {None, Allowed}

Default=None (exceto dimensionPermission, onde default=Allowed)
Especifica se os membros têm acesso de leitura a conjuntos de linhas de esquema e conteúdo de dados.

Allowed fornece acesso de leitura em um banco de dados, o que permite descobrir um banco de dados.

Allowed em um cubo fornece acesso de leitura em conjuntos de linhas de esquema e acesso ao conteúdo do cubo (a menos que restrito por CellPermission e CubeDimensionPermission).

Allowed em uma dimensão concede a permissão de leitura em todos os atributos na dimensão (a menos que restrito por CubeDimensionPermission). permissão Leitura é usado apenas para herança CubeDimensionPermission estática. None em uma dimensão oculta a dimensão e fornece acesso ao membro padrão apenas para atributos aggregáveis; um erro será gerado se a dimensão contiver um atributo não aggregável.

Allowed em um MiningModelPermission concede permissões para ver objetos em conjuntos de linhas de esquema e para executar junções de previsão.

NoteAllowed é necessário para ler ou gravar em qualquer objeto no banco de dados.
Escrever {None, Allowed}

Default=None
Especifica se os membros têm acesso de gravação aos dados do objeto pai.

O acesso se aplica a Dimension, Cubee MiningModel subclasses. Ele não se aplica a subclasses de banco de dados MiningStructure , o que gera um erro de validação.

Allowed em uma Dimension permissão de gravação de concessões em todos os atributos na dimensão.

Allowed em uma Cube permissão de gravação concedida nas células do cubo para partições definidas como Type=write-back.

Allowed em uma MiningModel permissão de concessão para modificar o conteúdo do modelo.

Allowed em um MiningStructure não tem nenhum significado específico no Analysis Services. Nota: A gravação não pode ser definida como Allowed , a menos que a leitura também seja definida como Allowed
Administrar observação: somente em permissões de banco de dados {true, false}

Default=false
Especifica se os membros podem administrar um banco de dados.

true concede aos membros acesso a todos os objetos em um banco de dados.

Um membro pode ter permissões de Administração para um banco de dados específico, mas não para outros.

Consulte Também

Autorizando o acesso a objetos e operações (Analysis Services)