Поделиться через


Класс Policy

The Policy object represents a Policy-Based Management policy. A policy represents the relationship between a target object and a condition.

Иерархия наследования

System. . :: . .Object
  Microsoft.SqlServer.Management.Sdk.Sfc. . :: . .SfcInstance
    Microsoft.SqlServer.Management.Dmf..::..Policy

Пространство имен:  Microsoft.SqlServer.Management.Dmf
Сборка:  Microsoft.SqlServer.Dmf (в Microsoft.SqlServer.Dmf.dll)

Синтаксис

'Декларация
<StrongNameIdentityPermissionAttribute(SecurityAction.LinkDemand, PublicKey := "0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")> _
<StrongNameIdentityPermissionAttribute(SecurityAction.LinkDemand, PublicKey := "0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")> _
Public NotInheritable Class Policy _
    Inherits SfcInstance _
    Implements ISfcCreatable, ICreatable, ISfcDroppable, IDroppable,  _
    ISfcAlterable, IAlterable, ISfcRenamable, IRenamable, ISfcValidate
'Применение
Dim instance As Policy
[StrongNameIdentityPermissionAttribute(SecurityAction.LinkDemand, PublicKey = "0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")]
[StrongNameIdentityPermissionAttribute(SecurityAction.LinkDemand, PublicKey = "0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")]
public sealed class Policy : SfcInstance, 
    ISfcCreatable, ICreatable, ISfcDroppable, IDroppable, ISfcAlterable, 
    IAlterable, ISfcRenamable, IRenamable, ISfcValidate
[StrongNameIdentityPermissionAttribute(SecurityAction::LinkDemand, PublicKey = L"0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")]
[StrongNameIdentityPermissionAttribute(SecurityAction::LinkDemand, PublicKey = L"0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")]
public ref class Policy sealed : public SfcInstance, 
    ISfcCreatable, ICreatable, ISfcDroppable, IDroppable, ISfcAlterable, 
    IAlterable, ISfcRenamable, IRenamable, ISfcValidate
[<SealedAttribute>]
[<StrongNameIdentityPermissionAttribute(SecurityAction.LinkDemand, PublicKey = "0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")>]
[<StrongNameIdentityPermissionAttribute(SecurityAction.LinkDemand, PublicKey = "0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")>]
type Policy =  
    class
        inherit SfcInstance
        interface ISfcCreatable
        interface ICreatable
        interface ISfcDroppable
        interface IDroppable
        interface ISfcAlterable
        interface IAlterable
        interface ISfcRenamable
        interface IRenamable
        interface ISfcValidate
    end
public final class Policy extends SfcInstance implements ISfcCreatable, ICreatable, ISfcDroppable, IDroppable, ISfcAlterable, IAlterable, ISfcRenamable, IRenamable, ISfcValidate

Тип Policy обеспечивает доступ к следующим элементам.

Конструкторы

  Имя Описание
Открытый метод Policy() () () () Initializes a new instance of the Policy class.
Открытый метод Policy(PolicyStore, String) Initializes a new instance of the Policy class.

В начало

Свойства

  Имя Описание
Защищенное свойство AbstractIdentityKey Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Открытое свойство AutomatedPolicyEvaluationMode Gets or sets the evaluation mode.
Открытое свойство CategoryId Gets the ID value that uniquely identifies the category that is associated with the policy.
Открытое свойство Condition Gets or sets the condition.
Открытое свойство CreateDate Gets the date and time when the policy was created.
Открытое свойство CreatedBy Gets the policy store authentication credentials of the user who created the policy.
Открытое свойство DateModified Gets the date and time when the policy was last modified.
Открытое свойство Description Gets or sets the textual description of the policy.
Открытое свойство Enabled Gets or set the Boolean value that specifies whether the policy is enabled.
Открытое свойство EvaluationHistories Gets the evaluation histories collection.
Открытое свойство HasScript Gets the Boolean value that specifies whether the policy has a script.
Открытое свойство HelpLink Gets or sets a URN to additional help information for the policy.
Открытое свойство HelpText Gets or sets the display name for the help text.
Открытое свойство ID Gets the ID value that uniquely identifies the policy.
Открытое свойство IdentityKey Gets the key that identifies the policy.
Открытое свойство IsSystemObject Determines whether the Policy object is a Object.
Открытое свойство Metadata Returns metadata about the instance and its domain. (Производный от SfcInstance.)
Открытое свойство ModifiedBy Gets the policy store authentication credentials of the user who last modified the policy.
Открытое свойство Name Gets the name of the Policy object.
Открытое свойство ObjectSet Gets or sets the set of objects that are associated with the policy.
Открытое свойство Parent Gets or sets the PolicyStore that is the parent of the policy object.
Открытое свойство PolicyCategory Gets or sets the category that is associated with the policy.
Открытое свойство Properties Returns a collection instance properties. (Производный от SfcInstance.)
Защищенное свойство PropertyStorageProvider Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Открытое свойство RootCondition Gets or sets the name of the root condition for this policy.
Открытое свойство ScheduleUid Gets or sets the Guid that identifies the SQL Server Agent schedule that checks on the policy.
Защищенное свойство State Returns the state of the SfcInstance object. (Производный от SfcInstance.)
Открытое свойство Urn Returns the uniform resource name of the SfcInstance object. (Производный от SfcInstance.)

В начало

Методы

  Имя Описание
Открытый метод Alter Updates any Policy object property changes on the instance of SQL Server.
Защищенный метод AlterImpl Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Защищенный метод CheckObjectCreated Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Защищенный метод CheckObjectState Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Открытый метод Create Creates management policy item.
Защищенный метод CreateIdentityKey Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Защищенный метод CreateImpl Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Открытый метод Discover Discovers conditions in the ObjectSet and adds them to the ISfcDependencyDiscoveryObjectSink identified by the sink parameter. (Переопределяет SfcInstance. . :: . .Discover(ISfcDependencyDiscoveryObjectSink).)
Открытый метод Drop Removes the policy from the instance of SQL Server.
Защищенный метод DropImpl Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Открытый метод Equals (Производный от Object.)
Открытый метод Evaluate(AdHocPolicyEvaluationMode, array<ISfcConnection> [] () [] []) Evaluates the Policy object and applies policy to the data in identified by the targetConnections parameter.
Открытый метод Evaluate(AdHocPolicyEvaluationMode, array<Object> [] () [] []) Immediately executes the policy against the specified target objects by using the specified evaluation mode.
Открытый метод Evaluate(AdHocPolicyEvaluationMode, SfcQueryExpression, array<ISfcConnection> [] () [] []) Evaluates the Policy object and applies policy to the data in identified by the targetConnections parameter.
Защищенный метод Finalize (Производный от Object.)
Защищенный метод GetChildCollection Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Открытый метод GetDomain Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Открытый метод GetHashCode (Производный от Object.)
Открытый методСтатический элемент GetObjectFactory Gets the object factory for the object.
Открытый метод GetPropertySet Returns the set of properties for the SfcInstance object. (Производный от SfcInstance.)
Открытый метод GetType (Производный от Object.)
Защищенный метод GetTypeMetadataImpl Indicates the domains that override by returning the right TypeMetadata class directly. Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Защищенный метод InitializeUIPropertyState Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Защищенный метод MarkForDropImpl Returns a value that indicates the existing objects to be dropped. Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Защищенный метод MarkRootAsConnected Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Защищенный метод MemberwiseClone (Производный от Object.)
Защищенный метод MoveImpl Indicates the new parent object to move in an instance. Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Защищенный метод OnPropertyMetadataChanges Invoked whenever the effective value of any SfcInstance metadata is updated. (Производный от SfcInstance.)
Защищенный метод OnPropertyValueChanges Invoked whenever the effective value of any SfcInstance property is updated. (Производный от SfcInstance.)
Защищенный метод PostAlter Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Защищенный метод PostCreate Indicates the default implementor that creates the execution result. Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Защищенный метод PostDrop Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Защищенный метод PostMove Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Защищенный метод PostRename Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Открытый метод ProduceConfigureScript Gets the condition of a Policy object.
Открытый метод Refresh Refreshes the object's properties by reading them from the server. (Производный от SfcInstance.)
Открытый метод Rename Renames the policy.
Защищенный метод RenameImpl Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Защищенный метод ResetKey Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Открытый метод ScriptAlter Alters the script that is used to create the policy.
Открытый метод ScriptAlterWithObjectSet Alters a previously created ISfcScript object of the Policy object.
Открытый метод ScriptCreate Creates a script that is used to create the policy.
Открытый метод ScriptCreateWithDependencies Creates the ISfcScript object of the Policy object.
Открытый метод ScriptCreateWithObjectSet Creates the ISfcScript object of the ObjectSet.
Открытый метод ScriptDrop Drops the script that is used to create the policy.
Открытый метод ScriptDropWithObjectSet Drops the ISfcScript object of the ObjectSet.
Открытый метод Serialize Serializes the instance to XML. (Производный от SfcInstance.)
Открытый метод ToString Returns a string representation of the instance Urn. (Производный от SfcInstance.)
Защищенный метод UpdateUIPropertyState Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Открытый метод UsesFacet Determines whether the facet identified by the parameter is contained by the Condition.
Защищенный метод Validate() () () () Indicates the basic child object's validation. Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Открытый метод Validate(String) Validates a Policy object as specified by the mode parameter.

В начало

События

  Имя Описание
Открытое событие ConnectionProcessingFinished Represents the event activated when connection processing completes.
Открытое событие ConnectionProcessingStarted Represents the event activated when connection processing begins.
Открытое событие PolicyEvaluationFinished Represents the event activated when policy evaluation completes.
Открытое событие PolicyEvaluationStarted Represents the event activated when policy evaluation begins.
Защищенное событие propertyChanged Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Открытое событие PropertyChanged CLS-compliant event for property changes. (Производный от SfcInstance.)
Защищенное событие propertyMetadataChanged Не ссылайтесь на этот элемент непосредственно из кода. Он поддерживает работу инфраструктуры SQL Server. (Производный от SfcInstance.)
Открытое событие PropertyMetadataChanged CLS-compliant event for property metadata changes. (Производный от SfcInstance.)
Открытое событие TargetProcessed Represents the event activated when policy target is processed.

В начало

Поля

  Имя Описание
Открытое полеСтатический элемент HelpLinkStringMaxLength Specifies the maximum length of the link to help text.
Открытое полеСтатический элемент HelpTextStringMaxLength Specifies the maximum length of the help text.

В начало

Явные реализации интерфейса

  Имя Описание
Явная реализация интерфейсаЗакрытый метод ISfcRenamable. . :: . .Rename Renames the instance of Policy identified by the key parameter.
Явная реализация интерфейсаЗакрытый метод ISfcRenamable. . :: . .ScriptRename Renames a script in the policy.
Явная реализация интерфейсаЗакрытый метод ISfcValidate. . :: . .Validate Validates a Policy object.

В начало

Замечания

A policy represents the relationship between an individual object or a target set of objects and a condition.

A target is an entity on an instance of SQL Server. It could be the instance of SQL Server, or a component of it, such as a database or a table.

A condition is a relationship between a facet and a Boolean expression that determine the state of the facet. A facet is a dimension of a target. For example, the target could be an instance of SQL Server, the facet is Database Mail, the expression specifies that it is installed on the instance and the condition is that Database Mail is installed. Thus, the policy is that Database Mail is installed on the specified instance of SQL Server.

The evaluation mode of the policy determines how and when the policy is checked and enforced.

Using the Policy object, you can manage the following characteristics of a policy:

  • Condition

  • Evaluation mode

  • Schedule

  • Target set filter using XPath expression

  • A job on evaluation success

  • A job on evaluation failure

  • A policy group

Примеры

C#

Policy p = new Policy(ps, policyName);
p.AutomatedPolicyEvaluationMode = execMode;
p.Condition = condition.Name;
p.ScheduleUid = schedule.ScheduleUid;
if (execMode != AutomatedPolicyEvaluationMode.None) p.Enabled = true;
p.Create();

Безопасность многопоточности

Любые открытые статический (Shared в Visual Basic) элементы этого типа потокобезопасны. Потокобезопасность с элементами экземпляров не гарантируется.