配置周邊設備存取控管模組以定義其在政策中的行為。
在設計模組行為並使用 API 實作時,請使用 關於周邊設備存取控管 中提供的背景資訊和指導。
政策物件包含兩個用於配置周邊設備存取控管模組的物件:
-
DeviceControlPolicyExtension
:控制模組狀態(開啟或關閉),識別已應用的周邊設備存取控管規則,並識別要與模組一起使用的有狀態配置。 -
PolicySettings
:政策設定包括幾個與周邊設備存取控管相關的設定,這些設定控制模組的運行行為,例如USB 大容量儲存裝置
和行動裝置 (MTP/PTP)
的操作- 允許
USB 自動執行功能
如設定策略和預設策略設定中所述,配置周邊設備存取控管相關的策略設定。
以下 JSON 代表
DeviceControlPolicyExtension
物件的資料結構:{ "state": "off", "moduleStatus": {...} }
moduleStatus
屬性是唯讀的。它提供周邊設備存取控管模組的運行狀態。(請參閱 電腦防護狀態報告)。一般步驟
若要設定周邊設備存取控管,請使用以下一般步驟:
步驟
- 創建一個
DeviceControlPolicyExtension
物件並設置屬性。 - 創建一個
PolicySettings
物件來配置模組的運行時設置。 - 建立一個
Policy
物件,並新增DeviceControlPolicyExtension
和PolicySettings
物件。 - 使用
PoliciesApi
物件在 Server & Workload Security保護 中新增或更新政策。秘訣
如果您只需要設定單一周邊設備存取控管相關的策略設定,請參閱設定單一策略或預設策略設定。
接下來需執行的動作
建立一個
DeviceControlPolicyExtension
物件並設定狀態和規則 ID:device_control_policy_extension = api.DeviceControlPolicyExtension() device_control_policy_extension.state = "on"
接下來,建立一個
PolicySettings
物件來配置周邊設備存取控管相關設定。(有關策略設定的詳細資訊,請參閱配置策略和預設策略設定。)例如,您可以封鎖USB大容量存儲裝置的存取:policy_settings = api.PolicySettings() setting_value = api.SettingValue() setting_value.value = "Block" policy_settings.device_control_setting_device_control_usb_storage_device_action = setting_value
此時,周邊設備存取控管政策擴展和政策設定已配置完成。接下來,將它們添加到
Policy
對象中,並使用PoliciesApi
對象在Server & Workload Security保護中修改政策。policy = api.Policy() policy.device_control = device_control_policy_extension policy.policy_settings = policy_settings policies_api = api.PoliciesApi(api.ApiClient(configuration)) returned_policy = policies_api.modify_policy(policy_id, policy, api_version)
modifyPolicy
的 policy_id
(或 policyID
)參數標識了在 Server & Workload Security保護 中要修改的實際策略。此策略根據用作 policy
參數的策略對象進行修改。未設置的 policy
參數的任何屬性在實際策略中保持不變。範例
以下範例會建立一個
Policy
物件,修改其DeviceControlPolicyExtension
,並配置一個政策設定。然後在Server & Workload Security保護中更新該政策。policies_api = api.PoliciesApi(api.ApiClient(configuration))
policy = api.Policy()
device_control_policy_extension = api.DeviceControlPolicyExtension()
# Turn on Device Control
device_control_policy_extension.state = "on"
# Add the Device Control state to the policy
policy.device_control = device_control_policy_extension
# Create a policy_settings
policy_settings = api.PolicySettings()
# Block USB mass storage access
usb_mass_storage_setting_value = api.SettingValue()
usb_mass_storage_setting_value.value = "Block" # Allow values: Full Access, Read Only, Block
policy_settings.device_control_setting_device_control_usb_storage_device_action = usb_mass_storage_setting_value
# Block USB autorun
usb_autorun_setting_value = api.SettingValue()
usb_autorun_setting_value.value = "Block" # Allow values: Allow, Block
policy_settings.device_control_setting_device_control_auto_run_usb_action = usb_autorun_setting_value
# Block "Mobile (MTP/PTP)" access
mobile_setting_value = api.SettingValue()
mobile_setting_value.value = "Block" # Allow values: Full Access, Read Only, Block
policy_settings.device_control_setting_device_control_mobile_device_action = mobile_setting_value
# Add USB mass storage access to the policy
policy.policy_settings = policy_settings
# Modify the policy on Server & Workload Security保護
policies_api.modify_policy(policy_id, policy, api_version)
秘訣另請參閱 API 參考中的 修改政策 操作。
|
如需有關驗證 API 呼叫的資訊,請參閱 使用 Server & Workload Security保護 驗證。
建立 USB 裝置例外
一般來說,若要建立周邊設備存取控管例外規則,您需要執行以下步驟:
步驟
- 創建一個
USBDevice
物件。 - 使用
USBStorageDevicesApi
將 USB 裝置新增到 Server & Workload Security保護。 - 將 USB 裝置設置為「完全訪問」,並使用
PolicyDeviceControlExceptionRulesApi
設置至政策。
接下來需執行的動作
# Create a new USB device device = api.USBDevice() device.name = 'device name' device.vendor = 'device vendor' device.model = 'device model' device.serial_number = 'device serial number' usb_storage_device_api = api.USBStorageDevicesApi(api.ApiClient(configuration)) created_device = usb_storage_device_api.create_usb_device(device, api_version) # Configure exception list exception_rules = api.ExceptionRules([]) exception_rule1 = api.ExceptionRule() exception_rule1.device_id = created_device.id exception_rule1.action = "full-access" exception_rules.exception_rules.append(exception_rule1) # Set the exception list to policy policy_id = 1 policy_exception_rule_api = api.PolicyDeviceControlExceptionRulesApi(api.ApiClient(configuration)) policy_exception_rule_api.set_exception_rules_on_policy(policy_id, exception_rules, api_version)
秘訣另請參閱 如何獲取供應商、型號和序列號
|
秘訣如果您只需要將現有的 USB 裝置指派到政策,請使用
USBStorageDevicesApi.list_usb_devices 來獲取 device_id 並直接使用 set_exception_rules_on_policy 。 |