Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Ustawienia odnajdywania grup usługi Active Directory można skonfigurować w Configuration Manager, modyfikując wymagane ustawienia pliku kontroli lokacji.
Aby skonfigurować odnajdywanie grup usługi Active Directory
Skonfiguruj połączenie z dostawcą programu SMS.
Nawiązywanie połączenia z sekcją Odnajdywanie grupy usługi Active Directory w pliku kontroli lokacji
SMS_SCI_Component
przy użyciu klasy .Przeprowadź pętlę przez tablicę dostępnych właściwości, wprowadzając zmiany zgodnie z potrzebami.
Zatwierdź zmiany w pliku kontroli lokacji.
Przykład
W poniższym przykładzie ustawienia odnajdywania grup usługi Active Directory są ustawiane przy użyciu SMS_SCI_Component
klasy w celu nawiązania połączenia z plikiem kontroli lokacji i zmiany właściwości.
Aby uzyskać informacje na temat wywoływania przykładowego kodu, zobacz Wywoływanie fragmentów kodu Configuration Manager.
Sub ConfigureADGroupDiscoverySettings(swbemServices, _
swbemContext, _
siteCode, _
serverName, _
newStartupSchedule, _
enableDisableDiscovery)
' Load site control file and get the SMS_AD_SECURITY_GROUP_DISCOVERY_AGENT section.
swbemServices.ExecMethod "SMS_SiteControlFile.Filetype=1,Sitecode=""" & siteCode & """", "Refresh", , , swbemContext
Query = "SELECT * FROM SMS_SCI_Component " & _
"WHERE ItemName = 'SMS_AD_SECURITY_GROUP_DISCOVERY_AGENT|" & serverName & "' " & _
"AND SiteCode = '" & siteCode & "'"
' Get the SMS_AD_SECURITY_GROUP_DISCOVERY_AGENT properties.
Set SCIComponentSet = swbemServices.ExecQuery(Query, ,wbemFlagForwardOnly Or wbemFlagReturnImmediately, swbemContext)
' Only one instance is returned from the query.
For Each SCIComponent In SCIComponentSet
' Display the server name.
wscript.echo "Server: " & SCIComponent.Name
' Loop through the array of embedded SMS_EmbeddedProperty instances.
For Each vProperty In SCIComponent.Props
' Setting: Startup Schedule
If vProperty.PropertyName = "Startup Schedule" Then
wscript.echo " "
wscript.echo vProperty.PropertyName
wscript.echo "Current value " & vProperty.Value1
' Modify the value.
vProperty.Value1 = newStartupSchedule
wscript.echo "New value " & newStartupSchedule
End If
' Setting: SETTINGS
If vProperty.PropertyName = "SETTINGS" Then
wscript.echo " "
wscript.echo vProperty.PropertyName
wscript.echo "Current value " & vProperty.Value1
' Modify the value.
vProperty.Value1 = enableDisableDiscovery
wscript.echo "New value " & enableDisableDiscovery
End If
Next
' Update the component in your copy of the site control file. Get the path
' to the updated object, which could be used later to retrieve the instance.
Set SCICompPath = SCIComponent.Put_(wbemChangeFlagUpdateOnly, swbemContext)
Next
' Commit the change to the actual site control file.
Set InParams = swbemServices.Get("SMS_SiteControlFile").Methods_("CommitSCF").InParameters.SpawnInstance_
InParams.SiteCode = siteCode
swbemServices.ExecMethod "SMS_SiteControlFile", "CommitSCF", InParams, , swbemContext
End Sub
public void ConfigureADGroupDiscoverySettings(WqlConnectionManager connection,
string siteCode,
string serverName,
string newStartupSchedule,
string enableDisableDiscovery)
{
try
{
// Connect to SMS_AD_SECURITY_GROUP_DISCOVERY_AGENT section of the site control file.
IResultObject siteDefinition = connection.GetInstance(@"SMS_SCI_Component.FileType=2,ItemType='Component',SiteCode='" + siteCode + "',ItemName='SMS_AD_SECURITY_GROUP_DISCOVERY_AGENT|" + serverName + "'");
// Create temporary copy of the embedded properties.
Dictionary<string, IResultObject> embeddedProperties = siteDefinition.EmbeddedProperties;
// Enumerate through the embedded properties and makes changes as needed.
foreach (KeyValuePair<string, IResultObject> kvp in siteDefinition.EmbeddedProperties)
{
// Setting: Startup Schedule
if (kvp.Value.PropertyList["PropertyName"] == "Startup Schedule")
{
Console.WriteLine();
Console.WriteLine(kvp.Value.PropertyList["PropertyName"]);
Console.WriteLine("Current value: " + kvp.Value.PropertyList["Value1"]);
// Change value using the newStartupSchedule value passed in.
embeddedProperties["Startup Schedule"]["Value1"].StringValue = newStartupSchedule;
Console.WriteLine("New value : " + newStartupSchedule);
}
// Setting: SETTINGS
if (kvp.Value.PropertyList["PropertyName"] == "SETTINGS")
{
Console.WriteLine();
Console.WriteLine(kvp.Value.PropertyList["PropertyName"]);
Console.WriteLine("Current value: " + kvp.Value.PropertyList["Value1"]);
// Change value using the newEnableHeartbeatDDR value passed in.
embeddedProperties["SETTINGS"]["Value1"].StringValue = enableDisableDiscovery;
Console.WriteLine("New value : " + enableDisableDiscovery);
}
}
// Store the settings that have changed.
siteDefinition.EmbeddedProperties = embeddedProperties;
// Save the settings.
siteDefinition.Put();
}
catch (SmsException ex)
{
Console.WriteLine("Failed. Error: " + ex.InnerException.Message);
throw;
}
}
Przykładowa metoda ma następujące parametry:
Parametr | Wpisać | Opis |
---|---|---|
- connection - swbemServices |
-Zarządzane: WqlConnectionManager - VBScript: SWbemServices |
Prawidłowe połączenie z dostawcą programu SMS. |
swbemContext |
-Vbscript: SWbemContext |
Prawidłowy obiekt kontekstu. Aby uzyskać więcej informacji, zobacz How to Add a Configuration Manager Context Qualifier by Using WMI (Jak dodać kwalifikator kontekstu Configuration Manager przy użyciu usługi WMI). |
siteCode |
-Zarządzane: String -Vbscript: String |
Kod witryny. |
serverName |
-Zarządzane: String -Vbscript: String |
Nazwa serwera. |
newStartupSchedule |
-Zarządzane: String -Vbscript: String |
Nowy harmonogram. |
enableDisableDiscovery |
-Zarządzane: String -Vbscript: String |
Wartość umożliwiająca włączenie lub wyłączenie metody odnajdywania. Wyłączone — NIEAKTYWNE Włączone — ACTIVE |
Kompilowanie kodu
Ten przykład języka C# wymaga:
Obszary nazw
System
System.collections.generic
System.text
Microsoft.ConfigurationManagement.ManagementProvider
Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine
Zestawu
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
Niezawodne programowanie
Aby uzyskać więcej informacji na temat obsługi błędów, zobacz Informacje o błędach Configuration Manager.
zabezpieczenia .NET Framework
Aby uzyskać więcej informacji na temat zabezpieczania aplikacji Configuration Manager, zobacz Configuration Manager administracja oparta na rolach.
Zobacz też
Informacje o pliku kontrolki lokacji Configuration Manager
Jak odczytywać i zapisywać w pliku kontroli lokacji Configuration Manager przy użyciu kodu zarządzanego
Jak odczytywać i zapisywać w pliku kontroli lokacji Configuration Manager przy użyciu usługi WMI
SMS_SCI_Component Server WMI Class
Informacje o harmonogramachJak Twórca token harmonogramu