Current Branch 1706 のConfiguration Manager コマンドレット ライブラリの変更
注:
System Center Configuration Current Branch 1702 は、これらの変更のベースラインです。 詳細については、「Current Branch 1702 のコマンドレット ライブラリの変更をConfiguration Managerする」を参照してください。
重要な変更
ドキュメント ライブラリの更新
最新のコマンドレット ライブラリのドキュメントについては、「 ConfigurationManager モジュール リファレンス」を参照してください。
管理者コンソールの統合スクリプト環境 (ISE) エクスペリエンスの向上
管理者コンソールから ISE を起動するときに生成されるスクリプトが更新され、カスタマイズと再利用が容易になりました。
スクリプトが以前に生成されている場合は、新しいスクリプトを作成するためにから %APPDATA%\TEMP
削除する必要があります。
削除されたコマンドレット
次のコマンドレットはサポートされなくなり、削除されました。
- Add-CMComplianceRegistrySetting
- New-CMComplianceRule
既知の問題
これらは、このリリースでは解決されないコマンドレット ライブラリに関する既知の問題です。
Get-CMAadConditionalAccessPolicy と Set-CMAadConditionalAccessPolicy
これらのコマンドレットには、64 ビットの PowerShell 環境が必要です。
回避策
- なし
New-CMWirelessProfile と Set-CMWirelessProfile
64 ビット PowerShell 環境で実行すると、コマンドレットが失敗する可能性があります。
回避策
- 32 ビット PowerShell 環境でこれらのコマンドレットを実行します。
Add-CMDataWarehouseServicePoint と Set-CMDataWarehouseServicePoint
"毎日" を実行するようにスケジュールを設定できません
回避策
- なし
Import-CMSecurityRole
コマンドレットは、ファイル SecuredRoles.xsd
を検索する DirectoryNotFoundException エラーで失敗する可能性があります。
回避策
論理 Import-Module
パスまたはモジュール名ではなく、 がファイルに対して ConfigurationManager.psd1
呼び出されていることを確認します。
New-CMApplicationDeployment と New-CMClientSettingDeployment
コマンドレットを使用すると、 CollectionName、 Collection、 CollectionId の各パラメーターを組み合わせて、未定義の動作を引き起こすことができます。
回避策
CollectionName、Collection、または CollectionId のみを指定します。 これらのパラメーターは組み合わせないでください。
Remove-CMStateMigrationPoint
サイト ロールによってホストされているコンテンツがある場合、State Migration Point を削除するときに ArgumentOutOfRangeException でコマンドレットが失敗する可能性があります。
回避策
SMS プロバイダーから状態移行ポイントを直接削除します。
$smp = Get-CMStateMigrationPoint ... # Get the state migration point
$smp.Delete() # Directly delete the object.
新しいコマンドレット
これらは、新しい機能を追加したり、既存のコマンドレットの機能を強化したりする、このリリース用に新しく追加されたコマンドレットです。
構成項目のコンプライアンス設定と規則
構成項目の設定と規則の作成をサポートするために、新しいコマンドレットが追加されました。
- Add/Set-CMComplianceSettingActiveDirectory
- Add/Set-CMComplianceSettingAssembly
- Add/Set-CMComplianceSettingDirectory
- Add/Set-CMComplianceSettingFile
- Add/Set-CMComplianceSettingIisMetabase
- Add/Set-CMComplianceSettingRegistryKey
- Add/Set-CMComplianceSettingRegistryKeyValue
- Add/Set-CMComplianceSettingRule
- Add/Set-CMComplianceSettingScript
- Add/Set-CMComplianceSettingSqlQuery
- Add/Set-CMComplianceSettingWqlQuery
- Add/Set-CMComplianceSettingXPathQuery
- Get-CMComplianceRule
- Get-CMComplianceSetting
- New-CMComplianceRuleAssembly
- New-CMComplianceRuleExistential
- New-CMComplianceRuleFileFolderAttribute
- New-CMComplianceRuleFileFolderDate
- New-CMComplianceRuleFileFolderPermission
- New-CMComplianceRuleFileFolderSimple
- New-CMComplianceRuleFileFolderSize
- New-CMComplianceRuleRegistryKeyPermission
- New-CMComplianceRuleValue
- New-CMComplianceRuleVersion
- Remove-CMComplianceRule
- Remove-CMComplianceSetting
例 1: 規則のないレジストリ キー値の設定を作成する
# Creates a setting looking for HKLM\Software\Microsoft\Windows NT\CurrentVersion:ReleaseId
$ci | Add-CMComplianceSettingRegistryKeyValue -SettingName "ReleaseId no rule" -DataType String -Hive LocalMachine -KeyName "SOFTWARE\Microsoft\Windows NT\CurrentVersion" -ValueName "ReleaseId" -NoRule
例 2: 存在する規則を使用してレジストリ キー値の設定を作成する
# Creates a setting requiring the HKLM\Software\Microsoft\WindowsNT\CurrentVersion:ReleaseId registry key to exist
$ci | Add-CMComplianceSettingRegistryKeyValue -SettingName "ReleaseId must exist" -DataType String -Hive LocalMachine -KeyName "SOFTWARE\Microsoft\Windows NT\CurrentVersion" -ValueName "ReleaseId" -ExistentialRule -Existence MustExist
例 3: 値ルールを使用してレジストリ キーの値設定を作成する
# Creates a setting requiring the HKLM\Software\Microsoft\WindowsNT\CurrentVersion:ReleaseId registry key to be equal to "1703"
$ci | Add-CMComplianceSettingRegistryKeyValue -SettingName "ReleaseId must be 1703" -DataType String -Hive LocalMachine -KeyName "SOFTWARE\Microsoft\Windows NT\CurrentVersion" -ValueName "ReleaseId" -ValueRule -ExpressionOperator IsEqual -ExpectedValue "1703"
例 4: ファイルに特定の属性を設定する必要があるファイル規則を作成する
$ci | Add-CMComplianceSettingFile -Path "C:\" -FileName "hiberfile.sys" -NoRule -SettingName "hiberfile.sys must have system attribute"
$setting = $ci | Get-CMComplianceSetting -SettingName "hiberfile.sys must have system attribute" # Get the SDK setting object
$rule = $setting | New-CMComplianceRuleFileFolderAttribute -RuleName "hiberfile.sys must be system" -System $true # Create the rule
$ci | Add-CMComplianceSettingRule $rule # Bind the rule to the CI
更新とサービス
Configuration Managerでの更新とサービスの自動化をサポートするために、新しいコマンドレットが追加されました。
- Enable-CMSiteFeature
- Get-CMSiteFeature
- Get-CMSiteUpdate
- Get-CMSiteUpdateHistory
- Get-CMSiteUpdateInstallStatus
- Install-CMSiteUpdate
- Invoke-CMSitePromotePreproductionClient
- Invoke-CMSiteUpdateCheck
- Invoke-CMSiteUpdateDownload
- Invoke-CMSiteUpdatePrerequisiteCheck
例 1: 更新プログラムをダウンロードし、その状態を監視する
# Get the update object for the 1706 TP and invoke a download
$update = Get-CMSiteUpdate -Name "Configuration Manager Technical Preview 1706" -Fast
$update | Invoke-CMSiteUpdateDownload
``` powershell
# Now monitor the download status
``` powershell
while($true) {
cls
$update | Get-CMSiteUpdateInstallStatus -Step Download | select orderid, progress, description | ft
sleep 5
}
例 2: 更新プログラムをインストールし、その状態を監視する
$update = Get-CMSiteUpdate -Name "Configuration Manager Technical Preview 1706" -Fast
$update | Install-CMSiteUpdate -IgnorePrerequisiteWarning -Force
while($true) {
cls
$update | Get-CMSiteUpdateInstallStatus -Step All -Complete | select orderid, progress, description -Last 10 | ft
sleep 5
}
展開の種類に対する強化された検出方法
Windows インストーラー (MSI)、スクリプト、および Mac の展開の種類への拡張検出方法の追加をサポートするために、新しいコマンドレットが追加されました。
- Windows インストーラー & スクリプト検出句
- New-CMDetectionClauseDirectory
- New-CMDetectionClauseFile
- New-CMDetectionClauseRegistryKey
- New-CMDetectionClauseRegistryKeyValue
- New-CMDetectionClauseWindowsInstaller
- Mac 検出句
- New-CMDetectionClauseMacBundle
- New-CMDetectionClauseMacPackage
例: Windows インストーラーの展開の種類に特定の製品 ID とディレクトリ名が存在することを要求する検出句を追加します。
$clause1 = New-CMDetectionClauseWindowsInstaller -ProductCode $guid [Value -ExpressionOperator IsEquals -ExpectedValue "1.1.1.1" # Do a version check
$clause2 = New-CMDetectionClauseDirectory -DirectoryName "mymsi" -Path "C:\" -Existence # c:\mymsi should exist
$app | Add-CMMsiDeploymentType -ContentLocation "\\myserver\mypath\mymsi.msi" -Force -AddDetectionClause ($clause1, $clause2)
Notes (メモ)
現在、検出句を変更することはサポートされていません。
現在、検出句のグループ化またはグループ解除はサポートされていません。
タスク シーケンス
タスク シーケンスの手順とグループ化の変更をサポートするために、新しいコマンドレットが追加されました。
- タスク シーケンス グループと手順
- Get/New/Remove/Set-CMTaskSequenceGroup
- Add/Get/Remove-CMTaskSequenceStep
- タスク シーケンス条件 (Get 動詞と New 動詞がサポートされています)
- CMTaskSequenceStepConditionIfStatement
- CMTaskSequenceStepConditionQueryWmi
- CMTaskSequenceStepConditionRegistry
- CMTaskSequenceStepConditionFile
- CMTaskSequenceStepConditionFolder
- CMTaskSequenceStepConditionOperatingSystem
- CMTaskSequenceStepConditionSoftware
- タスク シーケンス コマンド (Get、New、Remove、Set verbs supported)
- CMTaskSequenceStepRunCommandLine
- CMTaskSequenceStepInstallApplication
- CMTaskSequenceStepInstallSoftware
- CMTaskSequenceStepInstallUpdate
- CMTaskSequenceStepPartitionDisk
- CMTaskSequenceStepReboot
- CMTaskSequenceStepRunPowerShellScript
- CMTaskSequenceStepSetupWindowsAndConfigMgr
- CMTaskSequenceStepSetVariable
- タスク シーケンスのサポート コマンド
- New-CMTaskSequencePartitionSetting
例: 2 つの PowerShell スクリプトを実行するカスタム タスク シーケンスを作成する
$step1 = New-CMTaskSequenceStepRunPowerShellScript -Name "Run script 1" -PackageID $PackageId -ScriptName "script1.ps1" -ExecutionPolicy Bypass
$step2 = New-CMTaskSequenceStepRunPowerShellScript -Name "Run script 2" -PackageID $PackageId -ScriptName "script2.ps1" -ExecutionPolicy Bypass
$ts = New-CMTaskSequence -Name "Run scripts" -CustomTaskSequence
$ts | Add-CMTaskSequenceStep -Step ($step1, $step2)
注:
今後のリリースで追加される追加のタスク シーケンス コマンド。
iOS 一括登録
iOS 一括登録シナリオをサポートするために、新しいコマンドレットが追加されました。
- Get-CMCorpOwnedDevice
- Get-CMIosEnrollmentProfile
- New-CMIosEnrollmentProfile
- Remove-CMCorpOwnedDevice
- Remove-CMIosEnrollmentProfile
- Set-CMIosEnrollmentProfileAssignment
ワイヤレス プロファイル
ワイヤレス プロファイルをサポートするために、新しいコマンドレットが追加されました。
- Get-CMWirelessProfile
- New-CMWirelessProfile
- Remove-CMWirelessProfile
- Set-CMWirelessProfile
デプロイ コマンドレット
追加のデプロイ シナリオをサポートするために、新しいコマンドレットが追加されました。
- New-CMClientSettingsDeployment
- 優先
Start-CMClientSettingsDeployment
- 優先
- New-CMApplicationDeploymentSimulation
- 優先
Start-CMApplicationDeploymentSimulation
- 優先
リソースの追跡と回復 (BETA)
PowerShell ランタイムで使用される SMS プロバイダー オブジェクトの追跡をサポートし、不要になったときにこれらのリソースをクリーンするために、新しいコマンドレットが追加されました。
- Disconnect-CMTrackedObject
- Start-CMObjectTracking
- Stop-CMObjectTracking
を実行すると Start-CMObjectTracking
、PowerShell ランタイムはコマンドレット ライブラリ コマンドレットによって作成されたオブジェクトを追跡 IResultObject
します。 手動で.Dispose()
クリーンアップされていないコマンドレットは、個々のオブジェクト (例: $o | Disconnect-CMTrackedObject
) Disconnect-CMTrackedObject -All
に対して を使用Disconnect-CMTrackedObject
して再利用することも、追跡されたすべてのオブジェクトを再利用して使用することもできます。
オブジェクトが再利用されると、オブジェクト パイプラインを介して再利用したり、別のコマンドレットに渡したりできなくなります。
Stop-CMObjectTracking
を使用して、オブジェクトの追跡をオフにすることができます。 以前に割り当てられたオブジェクトはアクティブなままになります。
リソースが解放されていないと、SMS プロバイダーによってクォータ違反エラーが発生する可能性があります。 通常、これらの問題は、非常に大規模な SMS プロバイダー オブジェクトのセットを操作するか、非常に長時間実行される環境で動作する場合に現れます
Notes (メモ)
これは実験的な機能であり、将来のリリースで変更または削除される可能性があります。 この機能はオプトインであり、既定では有効になっていません。
Get-CMClientHealthSummary
このコマンドレットを使用すると、オプションの日付範囲を持つコレクションのクライアント正常性情報を取得できます。
例: 2017 年 1 月以降の "すべてのシステム" のクライアント正常性を取得します。
Get-CMCollection -Name "All Systems" | Get-CMClientHealthSummary -StartDate "2017/01/01"
Get-CMSoftwareUpdateSyncStatus
このコマンドレットを使用して、Windows Updateとの同期の状態を取得できます。
Invoke-CMContentRedistribution
このコマンドレットを使用すると、配布ポイントに既に展開されているコンテンツを再配布できます。 これは、アプリケーション、パッケージ、ブート イメージ、ソフトウェア更新プログラム、ドライバー、イメージ、タスク シーケンス、オペレーティング システムのコンテンツの配布をサポートします。
例: パッケージを配布ポイントに再配布する
Get-CMPackage -Name Contoso | Invoke-CMContentRedistribution -DistributionPointName myserver.contoso.com
Invoke-CMDeploymentSummarization
このコマンドレットを使用すると、デプロイの概要をすぐに実行できます。
Stop-CMMigrationSource
このコマンドレットを使用して、サイトの移行の発生を停止できます。
Sync-CMMigrationSource
移行を再開するために使用する必要があります。
コマンドレットの変更
このリリースの既存のコマンドレットに対して、次の変更が行われました。 変更は、新機能、バグ修正、または非推奨の可能性があり、破壊的な可能性があります。 このセクションに記載されているコマンドレットまたは機能領域のいずれかを使用する場合は、変更内容を注意深く確認して、それらが使用に与える影響を理解してください。
Add-CMApplicationCatalogWebsitePoint
修正されたバグ
ApplicationWebServicePointServer に指定された値に想定されるサイト ロールが含まれていない場合、コマンドレットは KeyNotFoundException エラーで失敗する可能性があります。
破壊的でない変更
の出力Get-CMApplicatinWebServicePoint
を使用して Web サービス ポイントを定義できるように ApplicationWebServicePointServer を追加しました。
ApplicationWebServicePointServerName と組み合わせることはできません。
Add-CMAssetIntelligenceSynchronizationPoint
修正されたバグ
無効な CertificatePath が指定されている場合、ロールが正しく作成されない可能性があります。 「 Remove-CMAssetIntelligenceSynchronizationPoint」も参照してください。
Add-CMDataWarehouseServicePoint
破壊的変更
DaysOfWeek 値が整数から列挙値に DataWarehouseDaysOfWeek
変更されました。
修正されたバグ
DataWarehouseDatabaseServerName は、FQDN ホスト名が 16 文字未満であることを検証しません。
破壊的でない変更
SQL Server インスタンスの指定をサポートするために DataWarehouseInstanceName パラメーターを追加しました。
Add-CMMacDeploymentType
破壊的でない変更
AddDetectionClause パラメーターを追加して、デプロイの種類への検出句の追加をサポートしました。 詳細については、「 拡張検出方法」セクション を参照してください。
Add-CMMsiDeploymentType
破壊的でない変更
AddDetectionClause パラメーターを追加して、デプロイの種類への検出句の追加をサポートしました。 詳細については、「 拡張検出方法」セクション を参照してください。
再起動動作を定義できるように RebootBehavior パラメーターを追加しました。
Add-CMScriptDeploymentType
破壊的でない変更
AddDetectionClause パラメーターを追加して、デプロイの種類への検出句の追加をサポートしました。 詳細については、「 拡張検出方法」セクション を参照してください。
再起動動作を定義できるように RebootBehavior パラメーターを追加しました。
Add-CMWindowsPhoneStoreDeploymentType
修正されたバグ
WINDOWSPHONE.COM URL が指定されている場合、無効なデプロイの種類が作成される可能性があります。
Approve-CMApprovalRequest と Deny-CMApprovalRequest
破壊的でない変更
コマンドレットは、要求に関連付けられている GUID を使用して、承認要求の承認または拒否をサポートするようになりました。
Get-CMAlert
修正されたバグ
Endpoint Protection または Client Health に関連するアラートの種類は、コマンドレットによって取得されません。
Get-CMApprovalRequest
破壊的でない変更
承認の状態で承認要求をフィルター処理できるように CurrentState パラメーターを追加しました。
Get-CMMaintenanceWindow
修正されたバグ
サイトに対してメンテナンス期間が定義されていない場合、NullReferenceException でコマンドレットが失敗する可能性があります。
Import-CMWirelessProfileConfigurationItem
修正されたバグ
Path パラメーターは、入力が有効な UNC パスであることを検証しません。
Import-CMClientCertificatePfx
破壊的でない変更
ForSmimeEncryption パラメーターを追加して、Microsoft Intuneがデバイスの暗号化に証明書を使用できることを示しました。
Import-CMDriver
修正されたバグ
Path パラメーターは、入力が有効な UNC パスであることを検証しません。
Import-CMTaskSequence
修正されたバグ
ImportFilePath パラメーターは、入力が有効な UNC パスであることを検証しません。
Lock-CMObject
修正されたバグ
ロックをサポートしていないオブジェクトに対して呼び出された場合、コマンドレットは NullReferenceException で失敗する可能性があります。
New-CMADGroupDiscoveryScope
修正されたバグ
GroupDN パラメーターは、入力が有効な識別名であることを検証しません。
New-CMAlertSubscription
修正されたバグ
EmailAddress に複数の値が指定されている場合、サブスクリプションが正しく構成されていません。
New-CMApplicationDeployment
破壊的でない変更
遅延適用を構成するために EnableSoftDeadline パラメーターを追加しました。
New-CMCertificateProfileScep
破壊的でない変更
KeySize パラメーターでバイト値 4096
を使用できるようになりました。
New-CMTaskSequence
破壊的でない変更
InstallOperatingSystemImage を使用するときにタイム ゾーン情報を指定できる TimeZone パラメーターが追加されました。 タイム ゾーンは、 コマンドレットを使用して Get-TimeZone
指定できます。
New-CMSoftwareUpdateAutoDeploymentRule
修正されたバグ
言語が指定されている場合は、無効な自動展開規則が作成される可能性があります。
場所が存在しない場合は、無効な自動展開規則が作成される可能性があります。
Remove-CMAssetIntelligenceSynchronizationPoint
修正されたバグ
正しく構成されていない資産インテリジェンス同期ポイント ロールを削除すると、ArgumentNullException でコマンドレットが失敗する可能性があります。
Remove-CMMaintenanceWindow
修正されたバグ
WhatIf または Confirm により、コマンドレットから ItemNotFoundException エラーが返される可能性があります。
Remove-CMUpdateGroupDeployment
修正されたバグ
コマンドレットが ItemNotFoundException エラーで有効なデプロイを削除できない場合があります。
Remove-CMUserCollectionDirectMembershipRule
破壊的でない変更
ResourceName パラメーターでワイルドカード値がサポートされるようになりました。
Set-CMAlertSubscription
非推奨
EmailAddress パラメーターが AddEmailAddress および RemoveEmailAddress によって置き換えられた
破壊的でない変更
電子メール アドレスを変更できるように AddEmailAddress パラメーターを追加しました。 EmailAddress と組み合わせることはできません。
電子メール アドレスをインプレースで削除できるように RemoveEmailAddress パラメーターを追加しました。 EmailAddress と組み合わせることはできません。
Set-CMApplicationDeployment
破壊的でない変更
遅延適用を構成するために EnableSoftDeadline パラメーターを追加しました。
Set-CMConfigurationPolicyDeployment
修正されたバグ
コマンドレットがリモート接続プロファイルをデプロイできない場合があります。
破壊的でない変更
RemoteConnectionProfileName パラメーターと RemoteConnectionProfileId パラメーターを追加して、リモート接続プロファイルを名前または ID でデプロイできるようにしました。
Set-CMDataWarehouseServicePoint
破壊的変更
DaysOfWeek 値が整数から列挙値に DataWarehouseDaysOfWeek
変更されました。
修正されたバグ
使用されていないパラメーターを使用すると、コマンドレットの実行時に値が既定値にリセットされる可能性があります。
DataWarehouseDatabaseServerName は、FQDN ホスト名が 16 文字未満であることを検証しません。
破壊的でない変更
SQL Server インスタンスの指定をサポートするために DataWarehouseInstanceName パラメーターを追加しました。
Set-CMEmailNotificationComponent
修正されたバグ
[ポート] に値を指定せずに UseSsl を指定した場合、SMTP ポートが正しく構成されていない可能性があります。
Set-CMHierarchySetting
修正されたバグ
コマンドレットを使用すると、除外コレクションを組み込みコレクション (すべてのシステムなど) に設定できます。
破壊的でない変更
プレリリース機能の有効化をサポートするために EnablePrereleaseFeature パラメーターを追加しました。 これは 1 回限りの変更であり、 Force を使用しない限り確認を求められます。 詳細については、「 更新プログラム & サービス 」を参照してください。
Set-CMMacDeploymentType
破壊的でない変更
AddDetectionClause パラメーターを追加して、デプロイの種類への検出句の追加をサポートしました。 詳細については、「 拡張検出方法」セクション を参照してください。
RemoveDetectionClause パラメーターを追加して、デプロイの種類からの検出句の削除をサポートしました。 詳細については、「 拡張検出方法」セクション を参照してください。
Set-CMMsiDeploymentType
破壊的でない変更
AddDetectionClause パラメーターを追加して、デプロイの種類への検出句の追加をサポートしました。 詳細については、「 拡張検出方法」セクション を参照してください。
RemoveDetectionClause パラメーターを追加して、デプロイの種類からの検出句の削除をサポートしました。 詳細については、「 拡張検出方法」セクション を参照してください。
再起動動作を定義できるように RebootBehavior パラメーターを追加しました。
Set-CMProgram
修正されたバグ
ProgramRunType の 変更は、指定したプログラムに適用できません。
Set-CMScriptDeploymentType
破壊的でない変更
AddDetectionClause パラメーターを追加して、デプロイの種類への検出句の追加をサポートしました。 詳細については、「 拡張検出方法」セクション を参照してください。
RemoveDetectionClause パラメーターを追加して、デプロイの種類からの検出句の削除をサポートしました。 詳細については、「 拡張検出方法」セクション を参照してください。
再起動動作を定義できるように RebootBehavior パラメーターを追加しました。
Set-CMSiteMaintenanceTask
修正されたバグ
サイト バックアップに関連するタスクのアラートを有効にすることはできません。
Set-CMSoftwareInventory
破壊的変更
Tag1Id、 Tag2Id、および Tag3Id の各パラメーターで検証が実行され、正しい書式設定が確実に使用されるようになりました。
破壊的でない変更
PassThru パラメーターのサポートが追加されました。
修正されたバグ
無効な Tag2Id 値を指定すると、最初に指定したタグが削除される可能性があります。
Set-CMSoftwareUpdateAutoDeploymentRule
修正されたバグ
場所が存在しない場合は、無効な自動展開規則が作成される可能性があります。
Set-CMSoftwareUpdatePointComponent
破壊的でない変更
更新動作を構成するために ContentFileOption パラメーター Windows 10追加しました。
Set-CMWindowsPhoneStoreDeploymentType
修正されたバグ
WINDOWSPHONE.COM URL が指定されている場合、無効なデプロイの種類が作成される可能性があります。