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.
As funções de banco de dados, funções definidas por administradores para controlar o acesso a objetos e dados para usuários não administradores.
A segurança no Microsoft SQL Server Analysis Services segurança é 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. Permissões para objetos são especificadas por funções e todos os membros em uma função podem usar os objetos para o qual tem permissão. Todos os membros em uma função têm permissões iguais para os objetos. As permissões são específicas dos objetos. Cada objeto tem um conjunto de permissões concedidas para esse objeto; diferentes conjuntos de permissões podem ser concedidos para um objeto. Cada permissão, do conjunto de permissões do objeto, tem uma única função atribuída a ele.
Objetos da função e de membro da função
Uma função é um objeto contendo um conjunto 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 um membro de uma função antes de acessar qualquer objeto.
Um Role objeto é composto dos parâmetros Nome, ID e Membros. Os membros são um conjunto de cadeia de caracteres. Cada membro contém o nome do usuário na forma "domínio\nomedousuário." O nome é uma cadeia de caracteres que contém o nome da função. O ID é uma cadeia de caracteres que contém o identificador exclusivo da função.
Função do 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 SQL Server Management Studio ou 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 o AMO (Objetos de Gerenciamento de Análise).
Manter funções de banco de dados do Analysis Services.
Iniciar os rastreamentos (diferentes dos para processar eventos, que podem ser executados por uma função de banco de dados com acesso 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 ID dessa função é Administrators e, diferentemente de funções de bancos de dados, a função do servidor não pode ser excluída, nem 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. Os usuários e grupos do Windows são incluídos na função por um administrador que também define as 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 de objetos e dados no banco de dados. Cada permissão tem um ou mais direitos de acesso associados a ele, os quais, por sua vez, dão à permissão um controle mais preciso sobre o acesso a um determinado objeto no banco de dados.
Objetos de permissão
As permissões estão associadas a um objeto (cubo, dimensão, outros) para uma determinada função. As permissões especificam quais operações o membro da função pode executar no objeto.
A classe Permission é uma classe abstrata. Portanto, você deve usar as classes derivadas para definir permissões para os objetos correspondentes. Para cada objeto, é definida uma classe derivada da permissão.
Objeto | Classe |
---|---|
Database | DatabasePermission |
DataSource | DataSourcePermission |
Dimension | DimensionPermission |
Cube | CubePermission |
MiningStructure | MiningStructurePermission |
MiningModel | MiningModelPermission |
As ações possíveis habilitadas por permissões são mostradas na lista:
Ação | Valores | Explicação |
---|---|---|
Processo | {true , false }Padrão= false |
Se true , os membros podem processar o objeto e qualquer objeto contido no objeto.As permissões de processo não se aplicam aos modelos de mineração. Permissões MiningModel sempre são herdadas de MiningStructure. |
ReadDefinition | {None , Basic , Allowed }Padrão= None |
Especifica se membros podem ler a definição de dados (ASSL) associada ao objeto. Se Allowed , os membros podem ler o ASSL associado ao objeto.Basic e Allowed são herdados por objetos contidos no objeto. Allowed substitui Basic e None .Allowed é necessário para DISCOVER_XML_METADATA em um objeto. Basic é necessário para criar objetos vinculados e cubos locais. |
Ler | {None , Allowed }Padrão = None (exceto para DimensionPermission, onde padrão=Allowed ) |
Especifica se membros têm acesso de leitura a conjuntos de linhas do 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 concede acesso de leitura nos conjuntos de linhas do esquema e acesso ao conteúdo do cubo (a menos que restringido por CellPermission e CubeDimensionPermission).Allowed em uma dimensão concede permissão de leitura em todos os atributos na dimensão (a menos que restringidos por CubeDimensionPermission). A permissão de leitura é usada para herança estática para o CubeDimensionPermission. None em uma dimensão oculta a dimensão e concede acesso ao membro padrão apenas para atributos agregáveis; ocorrerá um erro se a dimensão contiver um atributo não agregável.Allowed em um MiningModelPermission concede permissões de visualização de objetos em conjuntos de linhas de esquema e executar associações previsíveis.NoteAllowed é necessário para ler ou gravar em qualquer objeto no banco de dados. |
Gravar | {None , Allowed }Padrão= None |
Especifica se membros têm acesso de gravação aos dados do objeto pai. O acesso aplica-se às subclasses Dimension, Cube e MiningModel. Ele não se aplica às subclasses de banco de dados MiningStructure que geram um erro de validação. Allowed em um Dimension concede permissão de gravação em todos os atributos na dimensão.Allowed em um Cube concede permissão de gravação nas células do cubo para partições definidas como Type=write-back.Allowed em um MiningModel concede permissão para modificar o conteú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 esteja definida como Allowed |
Administrar Observação: somente em permissões de banco de dados | {true , false }Padrão= false |
Especifica se membros podem administrar um banco de dados.true concede acesso de membros a todos os objetos em um banco de dados.Um membro pode ter permissões Administrador 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)