Zuweisen von Konfigurationsbaselines

In Configuration Manager wird zum Zuweisen einer Konfigurationsbaseline zu einer Sammlung eine Zuweisungsinstanz erstellt, mit einem Mindestsatz erforderlicher Werte aufgefüllt und gespeichert.

So weisen Sie Konfigurationsbaselines zu

  1. Richten Sie eine Verbindung mit dem SMS-Anbieter ein.

  2. Erstellen Sie eine Instanz von SMS_BaselineAssignment.

  3. Füllen Sie die Instanzeigenschaften auf.

  4. Speichern Sie die neue SMS_BaselineAssignment Instanz.

Beispiel

Die folgenden Codebeispiele zeigen, wie eine Instanz einer Baselinezuweisung erstellt wird.

Informationen zum Aufrufen des Beispielcodes finden Sie unter Aufrufen von Configuration Manager Codeausschnitten.


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.");  

}  

Die Beispielmethode verfügt über die folgenden Parameter:

Parameter Typ Beschreibung
- connection
- swbemServices
-Verwalteten: WqlConnectionManager
– VBScript: SWbemServices
Eine gültige Verbindung mit dem SMS-Anbieter.
applyToSubTargets -Verwalteten: Boolean
-Vbscript: Boolean
true , um die Konfigurationselementzuweisung auf eine Untersammlung anzuwenden.
assignmentAction -Verwalteten: Integer
-Vbscript: Integer
Aktion, die der Konfigurationselementzuweisung zugeordnet ist.
assignmentName -Verwalteten: String
-Vbscript: String
assignmentName
assignmentDescription -Verwalteten: String
-Vbscript: String
Der Name der lokalen Zuweisung.
desiredConfigType -Verwalteten: String
-Vbscript: String
Der Typ des Konfigurationselements.
distributionPointLocality -Verwalteten: Integer
-Vbscript: Integer
Flags, die bestimmen, wie der Client Verteilungspunkte gemäß der Verteilungspunktlokalität erhält.
evaluationSchedule -Verwalteten: String
-Vbscript: String
Der Zeitplan für die Zuordnungsauswertung.
logComplianceToWinEvent -Verwalteten: Boolean
-Vbscript: Boolean
true , um den Konformitätsstatus in Windows-Ereignisprotokollen zu protokollieren.
notifyUser -Verwalteten: Boolean
-Vbscript: Boolean
true , um den Benutzer zu benachrichtigen, wenn ein Konfigurationselement verfügbar ist.
sendDetailedNonComplianceStatus -Verwalteten: Boolean
-Vbscript: Boolean
true , um eine ausführliche Statusmeldung zu Nichtkonformität zu senden.
startTime -Verwalteten: String
-Vbscript: String
Das Datum und die Uhrzeit, zu dem die Konfigurationselementzuweisung anfänglich angeboten wurde.
suppressReboot -Verwalteten: Integer
-Vbscript: Integer
Wert, der angibt, ob der Client den Computer nicht neu starten soll, wenn ein Neustart aussteht, nachdem das Konfigurationselement angewendet wurde.
targetCollectionID -Verwalteten: String
-Vbscript: String
Der Bezeichner der Auflistung, auf die die Zuweisung ausgerichtet ist.
useGMTTimes -Verwalteten: Boolean
-Vbscript: Boolean
true , wenn die Zeiten und Zeitpläne in der koordinierten Weltzeit (UTC) liegen.
baselineID – Verwaltet: Integer Array
– VBScript: Integer Array
Array von IDs für die Konfigurationselemente, auf die die Zuweisung abzielt.

Kompilieren des Codes

Namespaces

System

System.Collections.Generic

System.ComponentModel

Microsoft. ConfigurationManagement.ManagementProvider

Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

Robuste Programmierung

Weitere Informationen zur Fehlerbehandlung finden Sie unter Informationen zu Configuration Manager Fehlern.

.NET Framework-Sicherheit

Weitere Informationen zum Schützen Configuration Manager Anwendungen finden Sie unter Configuration Manager rollenbasierte Verwaltung.

Siehe auch

Informationen zu Konfigurationsbaselines und Konfigurationselementen
Übersicht über Objekte: Herstellen einer Verbindung mit einem Configuration Manager-Anbieter mithilfe von verwaltetem Code
Herstellen einer Verbindung mit einem Configuration Manager Anbieter mithilfe von WMI
WMI-Klasse des SMS_BaselineAssignment-Servers