Comment attribuer des bases de référence de configuration
Dans Configuration Manager, pour affecter une base de référence de configuration à une collection, une instance d’affectation est créée, remplie avec un ensemble minimal de valeurs requises et enregistrée.
Pour affecter des bases de référence de configuration
Configurez une connexion au fournisseur SMS.
Créez une instance de
SMS_BaselineAssignment
.Renseignez les propriétés de l’instance.
Enregistrez la nouvelle
SMS_BaselineAssignment
instance.
Exemple
Les exemples de code suivants montrent comment créer une instance d’une affectation de référence.
Pour plus d’informations sur l’appel de l’exemple de code, consultez Appel d’extraits de code Configuration Manager.
Sub DCMCreateAssignment(swbemServices, _
baselineID, _
applyToSubTargets, _
assignmentAction, _
assignmentName, _
assignmentDescription, _
desiredConfigType, _
distributionPointLocality, _
evaluationSchedule, _
logComplianceToWinEvent, _
notifyUser, _
sendDetailedNonComplianceStatus, _
startTime, _
suppressReboot, _
targetCollectionID, _
useGMTTimes)
' Create new assignment object.
set newAssignment = swbemServices.Get("SMS_BaselineAssignment").SpawnInstance_()
' Assign variable values to assignment properties.
' //
' // The following properties are set by the provider on put():
' // AssignmentID
' // AssignmentUniqueID
' // SourceSite
' // CreationTime
newAssignment.ApplyToSubTargets = applyToSubTargets
newAssignment.AssignmentAction = assignmentAction
newAssignment.AssignmentName = assignmentName
newAssignment.AssignmentDescription = assignmentDescription
newAssignment.DesiredConfigType = desiredConfigType
newAssignment.DPLocality = distributionPointLocality
newAssignment.EvaluationSchedule = evaluationSchedule
newAssignment.LogComplianceToWinEvent = logComplianceToWinEvent
newAssignment.NotifyUser = notifyUser
newAssignment.SendDetailedNonComplianceStatus = sendDetailedNonComplianceStatus
newAssignment.StartTime = startTime
newAssignment.SuppressReboot = suppressReboot
newAssignment.TargetCollectionID = targetCollectionID
newAssignment.UseGMTTimes = useGMTTimes
newAssignment.AssignedCIs = Array(baselineID)
' Save assignment.
newAssignment.Put_
Wscript.Echo " "
Wscript.Echo "Created new assignment."
End Sub
public void DCMCreateAssignment(WqlConnectionManager connection,
bool applyToSubTargets,
int assignmentAction,
string assignmentName,
string assignmentDescription,
string desiredConfigType,
int distributionPointLocality,
string evaluationSchedule,
bool logComplianceToWinEvent,
bool notifyUser,
bool sendDetailedNonComplianceStatus,
string startTime,
int suppressReboot,
string targetCollectionID,
bool useGMTTimes,
int baselineID)
{
// Set required variables.
// Set AssignedCIs like array with a known baseline id (this is the initial creation of the assignment, so no existing values).
int[] arrayBaselineNumbers = new int[] { baselineID };
try
{
// Create new assignment object.
IResultObject newAssignment = connection.CreateInstance("SMS_BaselineAssignment");
// Assign variable values to assignment properties.
//
// The following properties are set by the provider on put():
// AssignmentID
// AssignmentUniqueID
// SourceSite
// CreationTime
newAssignment["ApplyToSubTargets"].BooleanValue = applyToSubTargets;
newAssignment["AssignmentAction"].IntegerValue = assignmentAction;
newAssignment["AssignmentName"].StringValue = assignmentName;
newAssignment["AssignmentDescription"].StringValue = assignmentDescription;
newAssignment["DesiredConfigType"].StringValue = desiredConfigType;
newAssignment["DPLocality"].IntegerValue = distributionPointLocality;
newAssignment["EvaluationSchedule"].StringValue = evaluationSchedule;
newAssignment["LogComplianceToWinEvent"].BooleanValue = logComplianceToWinEvent;
newAssignment["NotifyUser"].BooleanValue = notifyUser;
newAssignment["SendDetailedNonComplianceStatus"].BooleanValue = sendDetailedNonComplianceStatus;
newAssignment["StartTime"].StringValue = startTime;
newAssignment["SuppressReboot"].IntegerValue = suppressReboot;
newAssignment["TargetCollectionID"].StringValue = targetCollectionID;
newAssignment["AssignedCIs"].IntegerArrayValue = arrayBaselineNumbers;
newAssignment["UseGMTTimes"].BooleanValue = useGMTTimes;
// Save assignment object.
newAssignment.Put();
}
catch (SmsException ex)
{
Console.WriteLine("Failed to create new assignment." + "\\n" + ex.Message);
throw;
}
Console.WriteLine("Created new assignment.");
}
L’exemple de méthode a les paramètres suivants :
Paramètre | Type | Description |
---|---|---|
- connection - swbemServices |
-Géré: WqlConnectionManager - VBScript : SWbemServices |
Connexion valide au fournisseur SMS. |
applyToSubTargets |
-Géré: Boolean -Vbscript: Boolean |
true pour appliquer l’affectation d’élément de configuration à une sous-collection. |
assignmentAction |
-Géré: Integer -Vbscript: Integer |
Action associée à l’affectation d’élément de configuration. |
assignmentName |
-Géré: String -Vbscript: String |
assignmentName |
assignmentDescription |
-Géré: String -Vbscript: String |
Nom de l’affectation locale. |
desiredConfigType |
-Géré: String -Vbscript: String |
Type de l’élément de configuration. |
distributionPointLocality |
-Géré: Integer -Vbscript: Integer |
Indicateurs qui déterminent la façon dont le client obtient les points de distribution, en fonction de la localité du point de distribution. |
evaluationSchedule |
-Géré: String -Vbscript: String |
Planification de l’évaluation des affectations. |
logComplianceToWinEvent |
-Géré: Boolean -Vbscript: Boolean |
true pour journaliser l’état de conformité aux journaux des événements Windows. |
notifyUser |
-Géré: Boolean -Vbscript: Boolean |
true pour avertir l’utilisateur lorsqu’un élément de configuration est disponible. |
sendDetailedNonComplianceStatus |
-Géré: Boolean -Vbscript: Boolean |
true pour envoyer un message détaillé d’état de non-conformité. |
startTime |
-Géré: String -Vbscript: String |
Date et heure à laquelle l’attribution d’élément de configuration a été initialement proposée. |
suppressReboot |
-Géré: Integer -Vbscript: Integer |
Valeur indiquant si le client ne doit pas redémarrer l’ordinateur si un redémarrage est en attente après l’application de l’élément de configuration. |
targetCollectionID |
-Géré: String -Vbscript: String |
Identificateur de la collection à laquelle l’affectation est ciblée. |
useGMTTimes |
-Géré: Boolean -Vbscript: Boolean |
true si les heures et les planifications sont en temps universel coordonné (UTC). |
baselineID |
- Géré : Integer Tableau- VBScript : Integer Array |
Tableau d’ID pour les éléments de configuration ciblés par l’affectation. |
Compilation du code
Espaces de noms
Système
System.Collections.Generic
System.ComponentModel
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
Programmation robuste
Pour plus d’informations sur la gestion des erreurs, consultez À propos des erreurs Configuration Manager.
Sécurité de .NET Framework
Pour plus d’informations sur la sécurisation des applications Configuration Manager, consultez Configuration Manager’administration basée sur les rôles.
Voir aussi
À propos des bases de référence de configuration et des éléments de configuration
Vue d’ensemble des objetsComment se connecter à un fournisseur Configuration Manager à l’aide de code managé
Comment se connecter à un fournisseur Configuration Manager à l’aide de WMI
Classe WMI du serveur SMS_BaselineAssignment