2016-03-16 9 views
1

Мы пытаемся использовать SCCM 2012 R2 для выполнения некоторых проверок на клиентах и ​​при необходимости исправлять проблемы. Для этого мы используем параметр «Script» PowerShell. Это первый раз, когда я работаю с SCCM, поэтому, пожалуйста, со мной.Состояние соответствия SCCM всегда «Compliant» при запуске скрипта исправления

Описание проблемы:

Когда сообщает 'Discovery Script' «Non-Compliant» тем «Рекультивация сценарий» запускается. Независимо от вывода «сценария исправления» результат в отчете о клиенте в «Configuration Manager> Configurations» всегда «Compliant», даже если «скрипт исправления» не смог устранить проблему и, как результат, имел другой вывод затем определяется в «Правилах условий соблюдения».

Похоже, что с момента выбора «сценария исправления» вывод состояния соответствия SCCM всегда «совместим».

Пример:

- Ситуация:

Когда есть файлы или папки в папку 'C: \ Users \ Me \ Downloads \ Input_Test' тем 'Discovery сценарий' сообщает «Не совместимый ко всему »и удары« сценария исправления ». Сценарий исправления принимает меры и не может устранить проблему, поэтому он сообщает о чем-то еще, тогда «Compliant», например «Non-Compliant». Государство соблюдения SCCM должно сказать после выполнения «сценария исправления»: «Несоответствие» (что не так).

- PowerShell Discovery Сценарий:

$Paths = Get-ChildItem -Path 'C:\Users\me\Downloads\Input_Test' | Select -ExpandProperty FullName 
New-EventLog -LogName Application -Source SCCMCompliance 
if ($Paths) { 
    $Compliance = 'Non-Compliant' 
    Write-EventLog -LogName Application -Source SCCMCompliance -EntryType Warning -EventID 1 -Message “Discovery script: Non-Compliant” 
} 
else { 
    $Compliance = 'Compliant' 
    Write-EventLog -LogName Application -Source SCCMCompliance -EntryType Information -EventID 0 -Message “Discovery script: Compliant” 
} 
$Compliance 

- PowerShell Санация сценарий:

Write-Output 'Non-Compliant' 
Write-EventLog -LogName Application -Source SCCMCompliance -EntryType Warning -EventID 1 -Message “Remediation script: Non-Compliant $Paths” 

- SCCM Правила соблюдения условий: enter image description here enter image description here

- SCCM государственный Compliance в Configuration Manager: enter image description here

В средстве просмотра событий Windows, все шаги могут быть отслежены легко. Я пропустил что-то сверх очевидное здесь?

ответ

1

После долгих боли и ушибся и @ DarkLite1 обнаружил, что SCCM не проверяет состояние соблюдения после того, как он выполнил рекультивацию

С момента использовать «Remediation сценарий» только 2 возможных statusses соответствий являются: ' «Соответствие» или «Выход с кодом ошибки». Это делается в PowerShell с «Выход 1».

Для получения дополнительной информации, пожалуйста, смотрите. https://social.technet.microsoft.com/Forums/en-US/0f0f3e6f-7e9f-4376-a926-fc0b6aef5bf1/sccm-compliance-state-always-compliant-when-remediation-script-runs?forum=configmanagersecurity

+0

Нужно ли мне также менять условия соблюдения SCCM? – DarkLite1

+0

Да, измените его так, чтобы он читал false, что в основном означает, что false означает, что файлы не найдены и, следовательно, совместимы –

+0

Изменено, как предлагалось «Значение равно FALSE», но это все та же проблема.«Скрипты обнаружения» запускаются и видят, что это некорректно, тогда запускается «сценарий исправления», это можно увидеть в eventvwr. Но значение в «State Compliance» остается на «Compliant», и в отчете говорится «Восстановленная стоимость: FALSE». – DarkLite1