Como atribuir linhas de base de configuração
Em Configuration Manager, para atribuir uma linha de base de configuração a uma coleção, uma instância de atribuição é criada, preenchida com um conjunto mínimo de valores necessários e salva.
Para atribuir linhas de base de configuração
Configure uma conexão com o Provedor de SMS.
Criar uma instância de
SMS_BaselineAssignment
.Preencha as propriedades da instância.
Salve a nova
SMS_BaselineAssignment
instância.
Exemplo
Os exemplos de código a seguir mostram como criar uma instância de uma atribuição de linha de base.
Para obter informações sobre como chamar o código de exemplo, consulte Chamando Configuration Manager Snippets de Código.
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.");
}
O método de exemplo tem os seguintes parâmetros:
Parâmetro | Tipo | Descrição |
---|---|---|
- connection - swbemServices |
-Gerenciado: WqlConnectionManager - VBScript: SWbemServices |
Uma conexão válida com o provedor de SMS. |
applyToSubTargets |
-Gerenciado: Boolean -Vbscript: Boolean |
true para aplicar a atribuição do item de configuração a uma subcolleção. |
assignmentAction |
-Gerenciado: Integer -Vbscript: Integer |
Ação associada à atribuição do item de configuração. |
assignmentName |
-Gerenciado: String -Vbscript: String |
assignmentName |
assignmentDescription |
-Gerenciado: String -Vbscript: String |
O nome da atribuição local. |
desiredConfigType |
-Gerenciado: String -Vbscript: String |
O tipo do item de configuração. |
distributionPointLocality |
-Gerenciado: Integer -Vbscript: Integer |
Sinalizadores que determinam como o cliente obtém pontos de distribuição, de acordo com a localidade do ponto de distribuição. |
evaluationSchedule |
-Gerenciado: String -Vbscript: String |
A agenda de avaliação de atribuição. |
logComplianceToWinEvent |
-Gerenciado: Boolean -Vbscript: Boolean |
true para registrar o status de conformidade nos logs de eventos do Windows. |
notifyUser |
-Gerenciado: Boolean -Vbscript: Boolean |
true para notificar o usuário quando um item de configuração estiver disponível. |
sendDetailedNonComplianceStatus |
-Gerenciado: Boolean -Vbscript: Boolean |
true para enviar uma mensagem detalhada de status de não conformidade. |
startTime |
-Gerenciado: String -Vbscript: String |
A data e hora em que a atribuição do item de configuração foi oferecida inicialmente. |
suppressReboot |
-Gerenciado: Integer -Vbscript: Integer |
Valor que indica se o cliente não deve reiniciar o computador, se houver uma reinicialização pendente após a aplicação do item de configuração. |
targetCollectionID |
-Gerenciado: String -Vbscript: String |
O identificador da coleção à qual a atribuição é direcionada. |
useGMTTimes |
-Gerenciado: Boolean -Vbscript: Boolean |
true se os horários e horários estiverem em TEMPO Coordenado Universal (UTC). |
baselineID |
– Gerenciado: Integer Matriz- VBScript: Integer Matriz |
Matriz de IDs para os itens de configuração direcionados pela atribuição. |
Compilando o código
Namespaces
System
System.Collections.Generic
System.ComponentModel
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
Programação robusta
Para obter mais informações sobre o tratamento de erros, consulte Sobre erros de Configuration Manager.
Segurança do .NET Framework
Para obter mais informações sobre como proteger aplicativos Configuration Manager, consulte Configuration Manager administração baseada em função.
Confira também
Sobre linhas de base de configuração e itens de configuração
Visão geral de objetoscomo se conectar a um provedor de Configuration Manager usando código gerenciado
Como se conectar a um provedor de Configuration Manager usando o WMI
Classe WMI do servidor SMS_BaselineAssignment