Создание или изменение файла Sms_def.mof

Назначение: Microsoft BitLocker Administration and Monitoring 2.0

Чтобы клиентские компьютеры могли передавать сведения о соответствии BitLocker посредством отчетов MBAM в Configuration Manager, необходимо создать или внести изменения в файл Sms_def.mof.

Если используется System Center 2012 Configuration Manager;, этот файл необходимо создать.

В Configuration Manager 2007 этот файл уже существует, поэтому в него нужно только внести изменения. Не перезаписывайте существующий файл.

Выполните инструкции для используемой версии Configuration Manager, описанные в следующих разделах.

Создание файла Sms_def.mof для System Center 2012 Configuration Manager;

  1. На сервере Configuration Manager перейдите в то место, где необходимо создать файл Sms_def.mof, например на рабочий стол.

  2. Создайте текстовый файл с именем Sms_def.mof и скопируйте следующий код, чтобы заполнить файл следующими классами Sms_def.mof MBAM.

    //===================================================
    
    // Microsoft BitLocker Administration and Monitoring 
    
    //===================================================
    
    
    #pragma namespace ("\\\\.\\root\\cimv2\\SMS")
    
    #pragma deleteclass("Win32_BitLockerEncryptionDetails", NOFAIL)
    
    [ SMS_Report (TRUE),
    
      SMS_Group_Name ("BitLocker Encryption Details"),
    
      SMS_Class_ID ("MICROSOFT|BITLOCKER_DETAILS|1.0")]
    
    class Win32_BitLockerEncryptionDetails : SMS_Class_Template
    
    {
    
        [ SMS_Report (TRUE), key ]
    
        String     DeviceId;
    
        [ SMS_Report (TRUE) ]
    
        String     BitlockerPersistentVolumeId;
    
        [ SMS_Report (TRUE) ]
    
        String     MbamPersistentVolumeId;
    
        [ SMS_Report (TRUE) ]
    
        //UNKNOWN = 0, OS_Volume = 1, FIXED_VOLUME = 2, REMOVABLE_VOLUME = 3
    
        SInt32     MbamVolumeType;
    
        [ SMS_Report (TRUE) ]
    
        String     DriveLetter;
    
        [ SMS_Report (TRUE) ]
    
        //VOLUME_NOT_COMPLIANT = 0, VOLUME_COMPLIANT = 1, NOT_APPLICABLE = 2
    
        SInt32     Compliant;
    
        [ SMS_Report (TRUE) ]
    
        SInt32     ReasonsForNonCompliance[];
    
        [ SMS_Report (TRUE) ]
    
        SInt32     KeyProtectorTypes[];
    
        [ SMS_Report (TRUE) ]
    
        SInt32     EncryptionMethod;
    
        [ SMS_Report (TRUE) ]
    
        SInt32     ConversionStatus;
    
        [ SMS_Report (TRUE) ]
    
        SInt32     ProtectionStatus;
    
        [ SMS_Report (TRUE) ]
    
        Boolean     IsAutoUnlockEnabled;
    
    };
    
    #pragma namespace ("\\\\.\\root\\cimv2\\SMS")
    
    
    #pragma deleteclass("Win32Reg_MBAMPolicy", NOFAIL)
    
    [ SMS_Report(TRUE),
    
      SMS_Group_Name("BitLocker Policy"),
    
      SMS_Class_ID("MICROSOFT|MBAM_POLICY|1.0")]
    
    
    Class Win32Reg_MBAMPolicy: SMS_Class_Template
    
    {
    
        [SMS_Report(TRUE),key]
    
        string KeyName;
    
    
        //General encryption requirements
    
        [SMS_Report(TRUE)]
    
        UInt32    OsDriveEncryption;
    
        [ SMS_Report (TRUE) ]
    
        UInt32    FixedDataDriveEncryption;
    
        [ SMS_Report (TRUE) ]
    
        UInt32    EncryptionMethod;
    
    
        //Required protectors properties
    
        [ SMS_Report (TRUE) ]
    
        UInt32    OsDriveProtector;
    
        [ SMS_Report (TRUE) ]
    
        UInt32    FixedDataDriveAutoUnlock;
    
        [ SMS_Report (TRUE) ]
    
        UInt32    FixedDataDrivePassphrase;
    
    
        //MBAM agent fields
    
        //Policy not enforced (0), enforced (1), pending user exemption request (2) or exempted user (3)
    
        [SMS_Report(TRUE)]
    
        Uint32    MBAMPolicyEnforced;
    
        [SMS_Report(TRUE)]
    
        string    LastConsoleUser;
    
        //Date of the exemption request of the last logged on user,
    
        //or the first date the exemption was granted to him on this machine.
    
        [SMS_Report(TRUE)]
    
        datetime  UserExemptionDate;
    
        //Errors encountered by MBAM agent.
    
        [ SMS_Report (TRUE) ]
    
        UInt32    MBAMMachineError;
    
        [ SMS_Report (TRUE) ]
    
        string    EncodedComputerName;
    
    };
    
    
    //Read Win32_OperatingSystem.SKU WMI property in a new class - because SKU is not available before Vista.
    
    #pragma namespace ("\\\\.\\root\\cimv2\\SMS")
    
    #pragma deleteclass("CCM_OperatingSystemExtended", NOFAIL)
    
    [ SMS_Report     (TRUE),
    
      SMS_Group_Name ("Operating System Ex"),
    
      SMS_Class_ID   ("MICROSOFT|OPERATING_SYSTEM_EXT|1.0") ]
    
    class CCM_OperatingSystemExtended : SMS_Class_Template
    
    {
    
        [SMS_Report (TRUE), key ]
    
            string     Name;
    
        [SMS_Report (TRUE) ]
    
            uint32     SKU;
    
    };
    
    
    //Read Win32_ComputerSystem.PCSystemType WMI property in a new class - because PCSystemType is not available before Vista.
    
    #pragma namespace ("\\\\.\\root\\cimv2\\SMS")
    
    #pragma deleteclass("CCM_ComputerSystemExtended", NOFAIL)
    
    [ SMS_Report     (TRUE),
    
      SMS_Group_Name ("Computer System Ex"),
    
      SMS_Class_ID   ("MICROSOFT|COMPUTER_SYSTEM_EXT|1.0") ]
    
    class CCM_ComputerSystemExtended : SMS_Class_Template
    
    {
    
        [SMS_Report (TRUE), key ]
    
        string     Name;
    
        [SMS_Report (TRUE) ]
    
        uint16     PCSystemType;
    
    };
    
    //=======================================================
    
    // Microsoft BitLocker Administration and Monitoring end
    
    //=======================================================
    
  3. Импортируйте файл Sms_def.mof следующим образом.

    1. Откройте Консоль System Center 2012 Configuration Manager; и откройте вкладку Администрирование.

    2. На вкладке Администрирование выберите пункт Параметры клиентов.

    3. Щелкните правой кнопкой мыши элемент Параметры клиента по умолчанию и выберите пункт Свойства.

    4. В окне Параметры по умолчанию выберите пункт Инвентаризация оборудования.

    5. Нажмите кнопку Задать классы, а затем нажмите кнопку Импортировать.

    6. В открывшемся браузере выберите свой файл с расширением .mof и нажмите кнопку Открыть. Откроется окно Сводка по импорту.

    7. В окне Сводка по импорту убедитесь, что установлен флажок "Импортировать классы и параметры класса инвентаризации оборудования", и нажмите кнопку Импортировать.

    8. В обоих окнах, Классы инвентаризации оборудования и Параметры по умолчанию, нажмите кнопку ОК.

  4. Включите класс Win32_Tpm следующим образом.

    1. Откройте Консоль System Center 2012 Configuration Manager; и откройте вкладку Администрирование.

    2. На вкладке Администрирование выберите пункт Параметры клиентов.

    3. Щелкните правой кнопкой мыши элемент Параметры клиента по умолчанию и выберите пункт Свойства.

    4. В окне Параметры по умолчанию выберите пункт Инвентаризация оборудования.

    5. Нажмите кнопку Задать классы.

    6. Прокрутите содержимое главного окна и выберите класс TPM (Win32_Tpm).

    7. Убедитесь, что в классе TPM выбрано свойство SpecVersion.

    8. В обоих окнах, Классы инвентаризации оборудования и Параметры по умолчанию, нажмите кнопку ОК.

Изменение файла sms_def.mof для Configuration Manager 2007

  1. На сервере Configuration Manager перейдите в каталог файла sms_def.mof:

    <каталог_установки_CM>\Inboxes\clifiles.src\hinv\

    По умолчанию для установки используется каталог %systemdrive%\Program Files (x86)\Microsoft Configuration Manager.

  2. Скопируйте следующий код и добавьте его в файл Sms_def.mof, чтобы добавить в файл следующие необходимые классы MBAM.

    //===================================================
    
    // Microsoft BitLocker Administration and Monitoring 
    
    //===================================================
    
    
    #pragma namespace ("\\\\.\\root\\cimv2\\SMS")
    
    #pragma deleteclass("Win32_BitLockerEncryptionDetails", NOFAIL)
    
    [ SMS_Report (TRUE),
    
      SMS_Group_Name ("BitLocker Encryption Details"),
    
      SMS_Class_ID ("MICROSOFT|BITLOCKER_DETAILS|1.0")]
    
    class Win32_BitLockerEncryptionDetails : SMS_Class_Template
    
    {
    
        [ SMS_Report (TRUE), key ]
    
        String     DeviceId;
    
        [ SMS_Report (TRUE) ]
    
        String     BitlockerPersistentVolumeId;
    
        [ SMS_Report (TRUE) ]
    
        String     MbamPersistentVolumeId;
    
        [ SMS_Report (TRUE) ]
    
        //UNKNOWN = 0, OS_Volume = 1, FIXED_VOLUME = 2, REMOVABLE_VOLUME = 3
    
        SInt32     MbamVolumeType;
    
        [ SMS_Report (TRUE) ]
    
        String     DriveLetter;
    
        [ SMS_Report (TRUE) ]
    
        //VOLUME_NOT_COMPLIANT = 0, VOLUME_COMPLIANT = 1, NOT_APPLICABLE = 2
    
        SInt32     Compliant;
    
        [ SMS_Report (TRUE) ]
    
        SInt32     ReasonsForNonCompliance[];
    
        [ SMS_Report (TRUE) ]
    
        SInt32     KeyProtectorTypes[];
    
        [ SMS_Report (TRUE) ]
    
        SInt32     EncryptionMethod;
    
        [ SMS_Report (TRUE) ]
    
        SInt32     ConversionStatus;
    
        [ SMS_Report (TRUE) ]
    
        SInt32     ProtectionStatus;
    
        [ SMS_Report (TRUE) ]
    
        Boolean     IsAutoUnlockEnabled;
    
    };
    
    
    #pragma namespace ("\\\\.\\root\\cimv2\\SMS")
    
    #pragma deleteclass("Win32Reg_MBAMPolicy", NOFAIL)
    
    [ SMS_Report(TRUE),
    
      SMS_Group_Name("BitLocker Policy"),
    
      SMS_Class_ID("MICROSOFT|MBAM_POLICY|1.0"),
    
      SMS_Context_1("__ProviderArchitecture=32|uint32"),
    
      SMS_Context_2("__RequiredArchitecture=true|boolean")]
    
    Class Win32Reg_MBAMPolicy: SMS_Class_Template
    
    {
    
        [SMS_Report(TRUE),key]
    
        string KeyName;
    
    
        //General encryption requirements
    
        [SMS_Report(TRUE)]
    
        UInt32    OsDriveEncryption;
    
        [ SMS_Report (TRUE) ]
    
        UInt32    FixedDataDriveEncryption;
    
        [ SMS_Report (TRUE) ]
    
        UInt32    EncryptionMethod;
    
    
        //Required protectors properties
    
        [ SMS_Report (TRUE) ]
    
        UInt32    OsDriveProtector;
    
        [ SMS_Report (TRUE) ]
    
        UInt32    FixedDataDriveAutoUnlock;
    
        [ SMS_Report (TRUE) ]
    
        UInt32    FixedDataDrivePassphrase;
    
    
        //MBAM Agent fields
    
        //Policy not enforced (0), enforced (1), pending user exemption request (2) or exempted user (3)
    
        [SMS_Report(TRUE)]
    
        Uint32    MBAMPolicyEnforced;
    
        [SMS_Report(TRUE)]
    
        string    LastConsoleUser;
    
        //Date of the exemption request of the last logged on user,
    
        //or the first date the exemption was granted to him on this machine.
    
        [SMS_Report(TRUE)]
    
        datetime  UserExemptionDate;
    
        //Errors encountered by MBAM agent.
    
        [ SMS_Report (TRUE) ]
    
        UInt32    MBAMMachineError;
    
        // Encoded Computer Name
    
        [ SMS_Report (TRUE) ]
    
        string    EncodedComputerName;
    
    };
    
    
    #pragma namespace ("\\\\.\\root\\cimv2\\SMS")
    
    #pragma deleteclass("Win32Reg_MBAMPolicy_64", NOFAIL)
    
    [ SMS_Report(TRUE),
    
      SMS_Group_Name("BitLocker Policy"),
    
      SMS_Class_ID("MICROSOFT|MBAM_POLICY|1.0"),
    
      SMS_Context_1("__ProviderArchitecture=64|uint32"),
    
      SMS_Context_2("__RequiredArchitecture=true|boolean")]
    
    Class Win32Reg_MBAMPolicy_64: SMS_Class_Template
    
    {
    
        [SMS_Report(TRUE),key]
    
        string KeyName;
    
    
        //General encryption requirements
    
        [SMS_Report(TRUE)]
    
        UInt32    OsDriveEncryption;
    
        [ SMS_Report (TRUE) ]
    
        UInt32    FixedDataDriveEncryption;
    
        [ SMS_Report (TRUE) ]
    
        UInt32    EncryptionMethod;
    
    
        //Required protectors properties
    
        [ SMS_Report (TRUE) ]
    
        UInt32    OsDriveProtector;
    
        [ SMS_Report (TRUE) ]
    
        UInt32    FixedDataDriveAutoUnlock;
    
        [ SMS_Report (TRUE) ]
    
        UInt32    FixedDataDrivePassphrase;
    
    
        //MBAM Agent fields
    
        //Policy not enforced (0), enforced (1), pending user exemption request (2) or exempted user (3)
    
        [SMS_Report(TRUE)]
    
        Uint32    MBAMPolicyEnforced;
    
        [SMS_Report(TRUE)]
    
        string    LastConsoleUser;
    
        //Date of the exemption request of the last logged on user,
    
        //or the first date the exemption was granted to him on this machine.
    
        [SMS_Report(TRUE)]
    
        datetime  UserExemptionDate;
    
        //Errors encountered by MBAM agent.
    
        [ SMS_Report (TRUE) ]
    
        UInt32    MBAMMachineError;
    
        // Encoded Computer Name
    
        [ SMS_Report (TRUE) ]
    
        string    EncodedComputerName;
    
    };
    
    
    //Read Win32_OperatingSystem.SKU WMI property in a new class - because SKU is not available before Vista.
    
    #pragma namespace ("\\\\.\\root\\cimv2\\SMS")
    
    #pragma deleteclass("CCM_OperatingSystemExtended", NOFAIL)
    
    [ SMS_Report     (TRUE),
    
      SMS_Group_Name ("Operating System Ex"),
    
      SMS_Class_ID   ("MICROSOFT|OPERATING_SYSTEM_EXT|1.0") ]
    
    class CCM_OperatingSystemExtended : SMS_Class_Template
    
    {
    
        [SMS_Report (TRUE), key ]
    
            string     Name;
    
        [SMS_Report (TRUE) ]
    
            uint32     SKU;
    
    };
    
    
    //Read Win32_ComputerSystem.PCSystemType WMI property in a new class - because PCSystemType is not available before Vista.
    
    #pragma namespace ("\\\\.\\root\\cimv2\\SMS")
    
    #pragma deleteclass("CCM_ComputerSystemExtended", NOFAIL)
    
    [ SMS_Report     (TRUE),
    
      SMS_Group_Name ("Computer System Ex"),
    
      SMS_Class_ID   ("MICROSOFT|COMPUTER_SYSTEM_EXT|1.0") ]
    
    class CCM_ComputerSystemExtended : SMS_Class_Template
    
    {
    
        [SMS_Report (TRUE), key ]
    
        string     Name;
    
        [SMS_Report (TRUE) ]
    
        uint16     PCSystemType;
    
    };
    
    
    //=======================================================
    
    // Microsoft BitLocker Administration and Monitoring end
    
    //=======================================================
    
  3. Измените класс Win32_Tpm следующим образом.

    • Установите для SMS_REPORT значение TRUE в атрибутах класса.

    • Установите для SMS_REPORT значение TRUE в атрибуте свойства SpecVersion.

См. также

Основные понятия

Развертывание MBAM с Configuration Manager

Другие ресурсы

Порядок создания или изменения MOF-файлов

-----
Дополнительные сведения о MDOP см. в библиотеке TechNet, сведения об устранении неполадок — на вики-сайте TechNet или следите за нами на таких ресурсах, как Facebook или Twitter.
-----