このページのトピック
デバイスコントロールの設定
ポリシーの動作を定義するようにデバイスコントロールモジュールを設定します。
モジュールの動作を設計し、APIを使用して実装する場合は、Device Controlについてに記載されている背景情報とガイダンスを使用してください。
ポリシーオブジェクトには、デバイスコントロールモジュールの設定に使用する2つのオブジェクトが含まれています。
DeviceControlPolicyExtension
:モジュールの状態(オンまたはオフ)を制御し、適用されたデバイスコントロールルールを識別し、モジュールで使用するステートフル設定を識別します。PolicySettings
: ポリシー設定には、モジュールの実行時の動作を制御する次のようなデバイスコントロール関連の設定が含まれます。USB Mass Storage
の処理Mobile (MTP/PTP)
- 許可
USB AutoRun Function
ポリシーと初期設定のポリシー設定 の説明に従って、デバイスコントロール関連のポリシーを設定します。
次のJSONは、 DeviceControlPolicyExtension
オブジェクトのデータ構造を表します。
{
"state": "off",
"moduleStatus": {...}
}
moduleStatus
プロパティは読み取り専用です。デバイスコントロールモジュールのランタイムステータスを提供します。 コンピュータのステータスに関するレポート を参照してください。
一般手順
デバイスコントロールを設定するには、次の一般的な手順に従います。
DeviceControlPolicyExtension
オブジェクトを作成し、プロパティを設定します。PolicySettings
オブジェクトを作成して、モジュールのランタイム設定を行います。Policy
オブジェクトを作成し、DeviceControlPolicyExtension
オブジェクトとPolicySettings
オブジェクトを追加します。-
PoliciesApi
オブジェクトを使用して、 Workload Securityのポリシーを追加またはアップデートします。単一のデバイスコントロール関連のポリシー設定のみを設定する必要がある場合は、単一のポリシーまたは初期設定のポリシー設定を設定するを参照してください。
DeviceControlPolicyExtension
オブジェクトを作成し、状態IDとルール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
オブジェクトを使用して 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
) パラメータは、変更するWorkload Security内の実際のポリシーを識別します。このポリシーは、 policy
パラメータとして使用されるポリシーオブジェクトに従って変更されます。設定されていない policy
パラメータのプロパティは、実際のポリシーでは変更されません。
例
次の例では、 Policy
オブジェクトを作成し、その DeviceControlPolicyExtension
を変更し、ポリシー設定を行います。その後、ポリシーが 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 Workload Security
policies_api.modify_policy(policy_id, policy, api_version)
「APIレファレンス/参照情報」の ポリシーの変更 操作も参照してください。
API呼び出しの認証の詳細については、 Workload Securityによる認証を参照してください。
USBデバイスの除外を作成する
一般に、デバイスコントロール除外ルールを作成するには、次の手順を実行します。
USBDevice
オブジェクトを作成します。- USB デバイスをWorkload Securityと
USBStorageDevicesApi
. - USBデバイスを
full-access
に設定し、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)
また、ListDeviceInfo レポートから欠落している値を持つアイテムを承認済みデバイスリストに追加するも参照してください。
既存のUSBデバイスをポリシーに割り当てるだけの場合は、 USBStorageDevicesApi.list_usb_devices
を使用して device_id
と set_exception_rules_on_policy
を直接取得します。