Есть ли способ заставить пользователей принять AUP при первом входе в компьютер OSX? Мы хотим, чтобы они ничего не делали, пока они не примут, а если они не сделают этого, они будут отключены.
Самое быстрое, что я могу придумать, - это запустить AppleScript с AUP при входе в систему и иметь два варианта. Accept закроет окно, удалит его из элементов входа и больше не появится. Отклонение приведет к выходу пользователя из системы.
Вероятно, не лучший вариант (особенно если пользователь может принудительно выйти из сценария или переключиться на другое окно, хотя последнее может быть обработано путем установки сценария, если возможно, чтобы захватить фокус и не разрешать что-либо еще), но это быстро и легко реализовать.
Я бы, вероятно, решил настроить их как учетную запись «Управляемая с помощью родительского контроля», а затем заставить их выполнить соглашение AUP и запустить suid-программу (или иным образом пометить учетную запись для какого-либо другого корневого процесса) это вернет их пользователя к обычному пользователю.
У Apple есть информация о том, как добавить «LoginHooks» в Настройка входа и выхода, но не рекомендует.
То, что мы делаем здесь, - это сообщение о том, что использование системы требует от них соблюдения местных политик и дает нам разрешение на их мониторинг (так что никаких ожиданий конфиденциальности, поэтому законы о прослушивании не применяются), и мы устанавливаем его как LoginwindowText
в /Library/Preferences/com.apple.loginwindow.plist
.