Pre-configuring Mac for Read&Write use in a site environment

From OSX Mojave onwards, if you are an Admin you can create a Configuration Profile containing entries for Read&Write Accessibility and Automation and push out to target Mac’s using the MDM.

Apple's documentation on configuration profiles is available here:

 

https://developer.apple.com/enterprise/documentation/Configuration-Profile-Reference.pdf

 

Page 59 of this document has information that is relevant to Read&Write in regards to Accessibility and AppleEvents.

 

To create a configuration profile to work with Read&Write, this will require a mobileconfig file that is controlled via a MDM server.

 

The mobile config file will require 2 keys in the Services dictionary (Example below):

 

* Accessibility

* AppleEvents

 

This requires 4 dictionaries one for each of the following

* System Events

* Finder

* iTunes

* Microsoft Word

 

The generated mobileconfig file will need deployed to the target machines via an MDM.

 

Please see below an example of the config file.

 

<key>Services</key>

           <dict>

               <key>Accessibility</key>

               <array>

                   <dict>

                       <key>Allowed</key>

                       <true/>

                       <key>CodeRequirement</key>

                       <string>****Obtained via the command ”codesign –display -r - for the Read&Write.app installed****</string>

                       <key>Comment</key>

                       <string>Allow Read&amp;Write access to the accessibility APIs</string>

                       <key>Identifier</key>

                       <string>com.texthelp.Read-Write</string>

                       <key>IdentifierType</key>

                       <string>bundleID</string>

                   </dict>

               </array>

               <key>AppleEvents</key>

               <array>

                   <dict>

                       <key>AEReceiverCodeRequirement</key>

                       <string>identifier "com.apple.systemevents" and anchor apple</string>

                       <key>AEReceiverIdentifier</key>

                       <string>com.apple.systemevents</string>

                       <key>AEReceiverIdentifierType</key>

                       <string>bundleID</string>

                       <key>Allowed</key>

                       <true/>

                       <key>CodeRequirement</key>

                       <string>****Obtained via the command ”codesign –display -r - for the Read&Write.app installed****</string>

                       <key>Comment</key>

                       <string>Allow Read&amp;Write to send AppleEvents control to System Events</string>

                       <key>Identifier</key>

                       <string>com.texthelp.Read-Write</string>

                       <key>IdentifierType</key>

                       <string>bundleID</string>

                   </dict>

                   <dict>

                       <key>AEReceiverCodeRequirement</key>

                       <string>identifier "com.apple.finder" and anchor apple</string>

                       <key>AEReceiverIdentifier</key>

                       <string>com.apple.finder</string>

                       <key>AEReceiverIdentifierType</key>

                       <string>bundleID</string>

                       <key>Allowed</key>

                       <true/>

                       <key>CodeRequirement</key>

                       <string>****Obtained via the command ”codesign –display -r - for the Read&Write.app installed****</string>

                       <key>Comment</key>

                       <string>Allow Read&amp;Write to send AppleEvents control to Finder</string>

                       <key>Identifier</key>

                       <string>com.texthelp.Read-Write</string>

                       <key>IdentifierType</key>

                       <string>bundleID</string>

                   </dict>

                   <dict>

                       <key>AEReceiverCodeRequirement</key>

                       <string>identifier "com.apple.iTunes" and anchor apple</string>

                       <key>AEReceiverIdentifier</key>

                       <string>com.apple.iTunes</string>

                       <key>AEReceiverIdentifierType</key>

                       <string>bundleID</string>

                       <key>Allowed</key>

                       <true/>

                       <key>CodeRequirement</key>

                       <string>****Obtained via the command ”codesign –display -r - for the Read&Write.app installed****</string>

                       <key>Comment</key>

                       <string>Allow Read&amp;Write to send AppleEvents control to iTunes</string>

                       <key>Identifier</key>

                       <string>com.texthelp.Read-Write</string>

                       <key>IdentifierType</key>

                       <string>bundleID</string>

                   </dict>

                   <dict>

                       <key>AEReceiverCodeRequirement</key>

                       <string>****Obtained via the command ”codesign –display -r - for the MicrosoftWord.app installed****</string>

                       <key>AEReceiverIdentifier</key>

                       <string>com.microsoft.Word</string>

                       <key>AEReceiverIdentifierType</key>

                       <string>bundleID</string>

                       <key>Allowed</key>

                       <true/>

                       <key>CodeRequirement</key>

                       <string>****Obtained via the command ”codesign –display -r - for the Read&Write.app installed****</string>

                       <key>Comment</key>

                       <string>Allow Read&amp;Write to send AppleEvents control to Microsoft Word</string>

                       <key>Identifier</key>

                       <string>com.texthelp.Read-Write</string>

                       <key>IdentifierType</key>

                       <string>bundleID</string>

                   </dict>

               </array>

           </dict>

       </dict>