Administrar servidores com Gerenciamento Baseado em PolíticasAdminister Servers by Using Policy-Based Management

O Gerenciamento Baseado em Políticas é um sistema baseado em política para gerenciar uma ou mais instâncias do SQL ServerSQL Server.Policy-Based Management is a policy based system for managing one or more instances of SQL ServerSQL Server. Usado para criar condições que contêm expressões de condição.Use is to create conditions that contain condition expressions. Em seguida, crie políticas que se aplicam as condições a objetos de destino de banco de dados.Then, create policies that apply the conditions to database target objects.

Por exemplo, como o administrador de banco de dados, é recomendável garantir que alguns servidores não tenham o Database Mail habilitado, para que você possa criar uma condição e uma política que define essa opção do servidor.For example, as the database administrator, you may want to ensure that certain servers do not have Database Mail enabled, so you create a condition and a policy that sets that server option.

IMPORTANTE:IMPORTANT!! As políticas podem afetar o funcionamento de alguns recursos.Policies can affect how some features work. Por exemplo, a captura de dados de alterações e a replicação transacional usam uma tabela systranschemas que não possui um índice.For example, change data capture and transactional replication both use the systranschemas table, which does not have an index. Se você habilitar uma política em que todas as tabelas devam ter um índice, a imposição de conformidade da política causará falha nesses recursos.If you enable a policy that all tables must have an index, enforcing compliance of the policy will cause these features to fail.

Use o SQL Server Management Studio para criar e gerenciar políticas, para:Use SQL Server management Studio to create and manage policies, to:

  1. Selecionar uma faceta de Gerenciamento Baseado em Políticas que contenha as propriedades a serem configuradas.Select a Policy-Based Management facet that contains the properties to be configured.

  2. Definir uma condição que especifique o estado de uma faceta de gerenciamento.Define a condition that specifies the state of a management facet.

  3. Definir uma política que contenha uma condição, as condições adicionas que filtram os conjuntos de destino e o modo de avaliação.Define a policy that contains the condition, additional conditions that filter the target sets, and the evaluation mode.

  4. Verificar se uma instância do SQL ServerSQL Server está em conformidade com a política.Check whether an instance of SQL ServerSQL Server is in compliance with the policy.

    Para as políticas com falha, o Pesquisador de Objetos indica um aviso de integridade crítica como um ícone vermelho ao lado do destino e dos nós superiores na árvore do Pesquisador de Objetos.For failed policies, Object Explorer indicates a critical health warning as a red icon next to the target and the nodes that are higher in the Object Explorer tree.

OBSERVAÇÃO: quando o sistema calcula o objeto definido para uma política, por padrão, os objetos do sistema são excluídos.NOTE: When the system computes the object set for a policy, by default the system objects are excluded. Por exemplo, se o conjunto de objetos da política referenciar todas as tabelas, a política não se aplicará a tabelas do sistema.For example, if the object set of the policy refers to all tables, the policy will not apply to system tables. Se os usuários desejarem avaliar uma política em relação a objetos do sistema, eles poderão explicitamente adicionar objetos do sistema ao conjunto de objetos.If users want to evaluate a policy against system objects, they can explicitly add system objects to the object set. Entretanto, embora todas as políticas tenham suporte para o modo de avaliação verificação de agenda , por questões de desempenho, nem todas as políticas com conjuntos de objetos arbitrários têm suporte para o modo de avaliação verificação de alterações .However, though all policies are supported for check on schedule evaluation mode, for performance reason, not all policies with arbitrary object sets are supported for check on change evaluation mode. Para obter mais informações, confira http://blogs.msdn.com/b/sqlpbm/archive/2009/04/13/policy-evaluation-modes.aspxFor more information, see http://blogs.msdn.com/b/sqlpbm/archive/2009/04/13/policy-evaluation-modes.aspx

Três componentes do Gerenciamento Baseado em PolíticasThree Policy-Based Management components

O Gerenciamento Baseado em Políticas tem três componentes:Policy-Based Management has three components:

  • Gerenciamento de política.Policy management. Os administradores de políticas criam políticas.Policy administrators create policies.

  • Administração explícita.Explicit administration. Os administradores selecionam um ou mais destinos gerenciados e verificam explicitamente se eles estão de acordo com uma política específica, ou explicitamente fazem com que os destinos estejam de acordo com uma política.Administrators select one or more managed targets and explicitly check that the targets comply with a specific policy, or explicitly make the targets comply with a policy.

  • Modos de avaliação.Evaluation modes. Há quatro modos de avaliação, três dos quais podem ser automatizados:There are four evaluation modes; three can be automated:

    • Sob demanda.On demand. Este modo avalia a política quando especificado diretamente pelo usuário.This mode evaluates the policy when directly specified by the user.

    • Ao alterar: impedir.On change: prevent. Esse modo automatizado usa gatilhos DDL para impedir violações de política.This automated mode uses DDL triggers to prevent policy violations.

      IMPORTANTE:IMPORTANT! Se a opção de configuração do servidor gatilhos aninhados for desabilitada, Ao alterar: impedir não funcionará corretamente.If the nested triggers server configuration option is disabled, On change: prevent will not work correctly. O Gerenciamento Baseado em Políticas necessita de gatilhos DDL para detectar e reverter operações de DDL que não estejam em conformidade com políticas que usam este modo de avaliação.Policy-Based Management relies on DDL triggers to detect and roll back DDL operations that do not comply with policies that use this evaluation mode. Remover os gatilhos DDL do Gerenciamento Baseado em Políticas ou desabilitar os gatilhos aninhados fará com que este modo de avaliação falhe ou execute de forma inesperada.Removing the Policy-Based Management DDL triggers or disabling nest triggers, will cause this evaluation mode to fail or perform unexpectedly.

    • Ao alterar: log apenas.On change: log only. Este modo automatizado usa a notificação de eventos para avaliar uma política quando uma alteração relevante é feita.This automated mode uses event notification to evaluate a policy when a relevant change is made.

    • Ao agendar.On schedule. Este modo automatizado usa um trabalho do SQL ServerSQL Server Agent para avaliar periodicamente uma política.This automated mode uses a SQL ServerSQL Server Agent job to periodically evaluate a policy.

      Quando as políticas automatizadas não estão habilitadas, o Gerenciamento Baseado em Políticas não afetará o desempenho do sistema.When automated policies are not enabled, Policy-Based Management will not affect system performance.

TermosTerms

Destino gerenciado pelo Gerenciamento Baseado em Políticas As entidades gerenciadas pelo Gerenciamento Baseado em Políticas, como uma instância do Mecanismo de Banco de Dados do SQL ServerSQL Server Database Engine, um banco de dados, uma tabela ou um índice.Policy-Based Management managed target Entities that are managed by Policy-Based Management, such as an instance of the Mecanismo de Banco de Dados do SQL ServerSQL Server Database Engine, a database, a table, or an index. Todos os destinos em uma instância de servidor formam uma hierarquia de destino.All targets in a server instance form a target hierarchy. Um conjunto de destino é aquele resultante da aplicação de um conjunto de filtros de destino à hierarquia de destino. Por exemplo, todas as tabelas do banco de dados de propriedade do esquema HumanResources.A target set is the set of targets that results from applying a set of target filters to the target hierarchy, for example, all the tables in the database owned by the HumanResources schema.

Faceta do Gerenciamento Baseado em Políticas Um conjunto de propriedades lógicas que modelam o comportamento ou as características de alguns tipos de destinos gerenciados.Policy-Based Management facet A set of logical properties that model the behavior or characteristics for certain types of managed targets. O número e as características das propriedades são incorporados à faceta e só podem ser adicionados ou removidos pelo criador da faceta.The number and characteristics of the properties are built into the facet and can be added or removed by only the maker of the facet. Um tipo de destino pode implementar uma ou mais facetas de gerenciamento, e uma faceta de gerenciamento pode ser implementada por um ou mais tipos de destino.A target type can implement one or more management facets, and a management facet can be implemented by one or more target types. Algumas propriedades de uma faceta só podem ser aplicadas a uma versão específica.Some properties of a facet can only apply to a specific version..

Condição de Gerenciamento Baseado em PolíticasPolicy-Based Management condition
Uma expressão booliana que especifica um conjunto de estados permitidos de um destino gerenciado pelo Gerenciamento Baseado em Políticas em relação a uma faceta de gerenciamento.A Boolean expression that specifies a set of allowed states of a Policy-Based Management managed target with regard to a management facet. SQL ServerSQL Server tenta observar agrupamentos ao avaliar uma condição. tries to observe collations when evaluating a condition. Quando os agrupamentos do SQL ServerSQL Server não correspondem exatamente a agrupamentos do Windows, teste sua condição para determinar como o algoritmo resolve conflitos.When SQL ServerSQL Server collations do not exactly match Windows collations, test your condition to determine how the algorithm resolves conflicts.

Política de Gerenciamento Baseado em PolíticasPolicy-Based Management policy
Uma condição do Gerenciamento Baseado em Políticas e o comportamento esperado, como, por exemplo, modo de avaliação, filtros de destino e agenda.A Policy-Based Management condition and the expected behavior, for example, evaluation mode, target filters, and schedule. Uma política só pode conter uma condição.A policy can contain only one condition. As políticas podem ser habilitadas ou desabilitadas.Policies can be enabled or disabled. As políticas são armazenadas no banco de dados msdb.Policies are stored in the msdb database.

Categoria de política do Gerenciamento Baseado em PolíticasPolicy-Based Management policy category
Uma categoria definida pelo usuário para ajudar a gerenciar políticas.A user-defined category to help manage policies. Os usuários podem classificar as políticas em categorias diferentes.Users can classify policies into different policy categories. Uma política pertence a somente uma categoria.A policy belongs to one and only one policy category. Categorias de políticas se aplicam a bancos de dados e servidores.Policy categories apply to databases and servers. No nível de banco de dados, as seguintes condições se aplicam:At the database level, the following conditions apply:

  • Os proprietários de banco de dados podem assinar um conjunto de categorias de política para um banco de dados.Database owners can subscribe a database to a set of policy categories.

  • Somente as políticas das categorias assinadas podem governar um banco de dados.Only policies from its subscribed categories can govern a database.

  • Todos os bancos de dados assinam implicitamente a categoria de política padrão.All databases implicitly subscribe to the default policy category.

    No nível de servidor, é possível aplicar categorias de políticas a todos os bancos de dados.At the server level, policy categories can be applied to all databases.

    Política efetivaEffective policy
    As políticas efetivas de um destino são aquelas que governam esse destino.The effective policies of a target are those policies that govern this target. Uma política só será efetiva em relação a um destino se todas as seguintes condições forem satisfeitas:A policy is effective with regard to a target only if all the following conditions are satisfied:

  • A política está habilitada.The policy is enabled.

  • O destino pertence ao conjunto de destino da política.The target belongs to the target set of the policy.

  • O destino ou um dos destinos ancestrais assina o grupo de políticas que contém essa política.The target or one of the targets ancestors subscribes to the policy group that contains this policy.

ExemplosExamples