Python Script for Defender Onboarding- Help Please

New Contributor III

Since Apple depreciated Python 2 from all systems starting with 12.3 I cannot get any machine to onboard with our script. I installed python 3 and modified the script to point to that location. I get failed via Jamf and invalid syntax when dropping the script file in terminal after starting python. Below os the top part of the script.


#!/usr/local/bin/env python3

import sys, getopt, os, errno, json, plistlib, subprocess, tempfile

config_xml = '''<?xml version=\"1.0\" encoding=\"utf-8\"?>
<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"\">
<plist version=\"1\">


Before the top line was #!/usr/bin/env python


Any Help is greatly appreciated 


New Contributor III

I may not need the help. Just got a new onboarding file from my InfoSec dept and they changed from a .py to a .sh good old regular shell script

Contributor II

You should also be able to pull the onboarding code for an MDM profile out of your Defender console. Using the profile instead of a script will ensure that users can't edit/change settings.

New Contributor III

We have a new onboarding file. They changed it to a shell script finally.