# SPDX-FileCopyrightText: 2023 - 2024 Benjamin Grande M. S. # # SPDX-License-Identifier: AGPL-3.0-or-later ## Do not modify this file, create a new policy with with a lower number in the ## file name instead. For example `30-user.policy`. {% if salt['pillar.get']('qvm:sys-usb:mouse-action', 'ask') == 'ask' -%} {% set mouse_action = 'ask default_target=dom0' -%} {% elif salt['pillar.get']('qvm:sys-usb:mouse-action', 'ask') == 'allow' -%} {%- set mouse_action = 'allow' -%} {% else -%} {%- set mouse_action = 'deny' -%} {% endif -%} {% if salt['pillar.get']('qvm:sys-usb:keyboard-action', 'deny') == 'ask' -%} {%- set keyboard_action = 'ask default_target=dom0' -%} {% elif salt['pillar.get']('qvm:sys-usb:keyboard-action', 'deny') == 'allow' -%} {%- set keyboard_action = 'allow' -%} {% else -%} {%- set keyboard_action = 'deny' -%} {% endif -%} {% if salt['pillar.get']('qvm:sys-usb:tablet-action', 'deny') == 'ask' -%} {%- set tablet_action = 'ask default_target=dom0' -%} {% elif salt['pillar.get']('qvm:sys-usb:tablet-action', 'deny') == 'allow' -%} {%- set tablet_action = 'allow' -%} {% else -%} {%- set tablet_action = 'deny' -%} {% endif -%} qubes.InputMouse * @tag:usbvm @adminvm {{ mouse_action }} qubes.InputMouse * @tag:usbvm @adminvm deny qubes.InputKeyboard * @tag:usbvm @adminvm {{ keyboard_action }} qubes.InputKeyboard * @tag:usbvm @adminvm deny qubes.InputTablet * @tag:usbvm @adminvm {{ tablet_action }} qubes.InputTablet * @tag:usbvm @adminvm deny ctap.ClientPin * @anyvm @tag:usbvm ask user=root default_target=disp-{{ sls_path }} ctap.ClientPin * @anyvm @default ask user=root default_target=disp-{{ sls_path }} ctap.ClientPin * @anyvm @anyvm deny ctap.GetInfo * @anyvm @tag:usbvm ask user=root default_target=disp-{{ sls_path }} ctap.GetInfo * @anyvm @default ask user=root default_target=disp-{{ sls_path }} ctap.GetInfo * @anyvm @anyvm deny u2f.Authenticate * @anyvm @tag:usbvm ask user=root default_target=disp-{{ sls_path }} u2f.Authenticate * @anyvm @default ask user=root default_target=disp-{{ sls_path }} u2f.Authenticate * @anyvm @anyvm deny u2f.Register * @anyvm @tag:usbvm ask user=root default_target=disp-{{ sls_path }} u2f.Register * @anyvm @default ask user=root default_target=disp-{{ sls_path }} u2f.Register * @anyvm @anyvm deny policy.RegisterArgument +u2f.Authenticate @tag:usbvm @anyvm allow target=dom0 policy.RegisterArgument +u2f.Authenticate @anyvm @anyvm deny # vim:ft=qrexecpolicy