1 <?xml version=
"1.0" encoding=
"UTF-8"?>
2 <!DOCTYPE plist PUBLIC
"-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
6 <string>The name of the requested right is matched against the keys. An exact match has priority, otherwise the longest match from the start is used. Note that the right will only match wildcard rules (ending in a ".") during this reduction.
8 allow rule: this is always allowed
9 <key
>com.apple.TestApp.benign
</key
>
10 <string
>allow
</string
>
12 deny rule: this is always denied
13 <key
>com.apple.TestApp.dangerous
</key
>
14 <string
>deny
</string
>
16 user rule: successful authentication as a user in the specified group(
5) allows the associated right.
18 The shared property specifies whether a credential generated on success is shared with other apps (i.e., those in the same "session"). This property defaults to false if not specified.
20 The timeout property specifies the maximum age of a (cached/shared) credential accepted for this rule.
22 The allow-root property specifies whether a right should be allowed automatically if the requesting process is running with uid ==
0. This defaults to false if not specified.
24 See remaining rules for examples.
33 <string>Matches otherwise unmatched rights (i.e., is a default).
</string>
35 <string>default
</string>
37 <key>config.add.
</key>
40 <string>allow
</string>
42 <string>Wildcard right for adding rights. Anyone is allowed to add any (non-wildcard) rights.
</string>
44 <key>config.config.
</key>
49 <string>Wildcard right for any change to meta-rights for db modification. Not allowed programmatically (just edit this file).
</string>
51 <key>config.modify.
</key>
56 <string>Wildcard right for modifying rights. Admins are allowed to modify any (non-wildcard) rights. Root does not require authentication.
</string>
61 <string>is-root
</string>
62 <string>authenticate-admin
</string>
65 <key>config.remove.
</key>
70 <string>Wildcard right for deleting rights. Admins are allowed to delete any (non-wildcard) rights. Root does not require authentication.
</string>
75 <string>is-root
</string>
76 <string>authenticate-admin
</string>
79 <key>config.remove.system.
</key>
84 <string>Wildcard right for deleting system rights.
</string>
89 <string>default
</string>
94 <string>default
</string>
96 <key>sys.openfile.
</key>
101 <string>See authopen(
1) for information on the use of this right.
</string>
103 <string>admin
</string>
107 <integer>300</integer>
109 <key>system.device.dvd.setregion.initial
</key>
112 <string>user
</string>
114 <string>Used by the DVD player to set the region code the first time. Note that changing the region code after it has been set requires a different right (system.device.dvd.setregion.change).
</string>
116 <string>admin
</string>
120 <key>system.login.console
</key>
123 <string>evaluate-mechanisms
</string>
125 <string>Login mechanism based rule. Not for general use, yet.
</string>
126 <key>mechanisms
</key>
128 <string>builtin:smartcard-sniffer,privileged
</string>
129 <string>loginwindow:login
</string>
130 <string>builtin:reset-password,privileged
</string>
131 <string>builtin:auto-login,privileged
</string>
132 <string>builtin:authenticate,privileged
</string>
133 <string>loginwindow:success
</string>
134 <string>HomeDirMechanism:login,privileged
</string>
135 <string>HomeDirMechanism:status
</string>
136 <string>MCXMechanism:login
</string>
137 <string>loginwindow:done
</string>
140 <key>system.login.done
</key>
143 <string>evaluate-mechanisms
</string>
144 <key>mechanisms
</key>
148 <key>system.login.screensaver
</key>
151 <string>rule
</string>
153 <string>The owner or any administrator can unlock the screensaver.
</string>
155 <string>authenticate-session-owner-or-admin
</string>
157 <key>system.login.tty
</key>
160 <string>evaluate-mechanisms
</string>
163 <key>mechanisms
</key>
165 <string>push_hints_to_context
</string>
166 <string>authinternal
</string>
169 <key>system.keychain.create.loginkc
</key>
171 <key>allow-root
</key>
174 <string>evaluate-mechanisms
</string>
176 <string>Used by the Security framework when you add an item to an unconfigured default keychain.
</string>
177 <key>mechanisms
</key>
179 <string>loginKC:queryCreate
</string>
180 <string>loginKC:showPasswordUI
</string>
181 <string>authinternal
</string>
183 <key>session-owner
</key>
188 <key>system.keychain.modify
</key>
191 <string>user
</string>
193 <string>Used by Keychain Access when editing a system keychain.
</string>
195 <string>admin
</string>
199 <integer>30</integer>
201 <key>system.preferences
</key>
203 <key>allow-root
</key>
206 <string>user
</string>
208 <string>Checked by the Admin framework when making changes to certain System Preferences.
</string>
210 <string>admin
</string>
214 <key>system.preferences.accounts
</key>
216 <key>allow-root
</key>
219 <string>user
</string>
221 <string>Checked by the Admin framework when making changes to the Accounts preference pane.
</string>
223 <string>admin
</string>
227 <key>system.preferences.parental-controls
</key>
230 <string>user
</string>
232 <string>Checked when making changes to the Parental Controls preference pane.
</string>
234 <string>admin
</string>
238 <key>system.preferences.accessibility
</key>
240 <key>allow-root
</key>
243 <string>user
</string>
245 <string>Checked by the Admin framework when enabling or disabling the Accessibility APIs.
</string>
247 <string>admin
</string>
253 <key>system.preferences.security
</key>
255 <key>allow-root
</key>
258 <string>user
</string>
260 <string>Checked by the Admin framework when making changes to the Security preference pane.
</string>
262 <string>admin
</string>
266 <key>system.printingmanager
</key>
269 <string>rule
</string>
271 <string>For printing to locked printers.
</string>
273 <string>authenticate-admin
</string>
275 <key>system.print.admin
</key>
277 <key>allow-root
</key>
280 <string>user
</string>
282 <string>lpadmin
</string>
286 <key>system.print.operator
</key>
288 <key>allow-root
</key>
291 <string>user
</string>
293 <string>_lpoperator
</string>
297 <key>system.identity.write.
</key>
300 <string>rule
</string>
302 <string>For creating, changing or deleting local user accounts and groups.
</string>
307 <string>is-admin
</string>
308 <string>authenticate-admin
</string>
311 <key>system.identity.write.credential
</key>
314 <string>rule
</string>
316 <string>Checked when changing authentication credentials (password or certificate) for a local user account.
</string>
318 <string>default
</string>
320 <key>system.identity.write.self
</key>
323 <string>user
</string>
325 <string>Checked when changing authentication credentials (password or certificate) for the current user's account.
</string>
326 <key>authenticate-user
</key>
328 <key>session-owner
</key>
331 <key>system.global-login-items.
</key>
334 <string>rule
</string>
339 <string>is-admin
</string>
340 <string>default
</string>
343 <key>system.sharepoints.
</key>
345 <key>allow-root
</key>
348 <string>user
</string>
350 <string>Checked when making changes to the Sharepoints.
</string>
352 <string>admin
</string>
356 <key>com.apple.activitymonitor.kill
</key>
359 <string>user
</string>
361 <string>Used by Activity Monitor to authorize killing processes not owned by the user.
</string>
363 <string>admin
</string>
369 <key>com.apple.Safari.parental-controls
</key>
371 <key>allow-root
</key>
374 <string>user
</string>
376 <string>Checked when changing parental controls for Safari.
</string>
378 <string>admin
</string>
384 <key>com.apple.docset.install
</key>
387 <string>user
</string>
389 <string>Used by Xcode to restrict access to a daemon it uses to install and update documentation sets.
</string>
391 <string>admin
</string>
395 <key>com.apple.DiskManagement.
</key>
398 <string>rule
</string>
400 <string>Used by diskmanagementd to allow access to its privileged functions
</string>
405 <string>is-root
</string>
406 <string>is-admin
</string>
407 <string>default
</string>
412 <key>system.privilege.admin
</key>
414 <key>allow-root
</key>
417 <string>user
</string>
419 <string>Used by AuthorizationExecuteWithPrivileges(...).
420 AuthorizationExecuteWithPrivileges() is used by programs requesting
421 to run a tool as root (e.g., some installers).
</string>
423 <string>admin
</string>
427 <integer>300</integer>
429 <key>system.privilege.taskport
</key>
431 <key>allow-root
</key>
434 <string>user
</string>
436 <string>Used by task_for_pid(...).
437 Task_for_pid is called by programs requesting full control over another program
438 for things like debugging or performance analysis. This authorization only applies
439 if the requesting and target programs are run by the same user; it will never
440 authorize access to the program of another user. WARNING: administrators are advised not to modify this right.
</string>
442 <string>_developer
</string>
446 <integer>36000</integer>
448 <key>system.privilege.taskport.safe
</key>
451 <string>allow
</string>
453 <string>For use by Apple.
</string>
455 <key>system.privilege.taskport.debug
</key>
457 <key>allow-root
</key>
460 <string>user
</string>
462 <string>For use by Apple. WARNING: administrators are advised
463 not to modify this right.
</string>
465 <string>_developer
</string>
469 <integer>36000</integer>
471 <key>system.restart
</key>
474 <string>evaluate-mechanisms
</string>
476 <string>Checked if the foreground console user tries to restart the system while other users are logged in via fast-user switching.
</string>
477 <key>mechanisms
</key>
479 <string>builtin:smartcard-sniffer,privileged
</string>
480 <string>RestartAuthorization:restart
</string>
481 <string>builtin:authenticate,privileged
</string>
482 <string>RestartAuthorization:success
</string>
485 <key>system.shutdown
</key>
488 <string>evaluate-mechanisms
</string>
490 <string>Checked if the foreground console user tries to shut down the system while other users are logged in via fast-user switching.
</string>
491 <key>mechanisms
</key>
493 <string>builtin:smartcard-sniffer,privileged
</string>
494 <string>RestartAuthorization:shutdown
</string>
495 <string>builtin:authenticate,privileged
</string>
496 <string>RestartAuthorization:success
</string>
499 <key>system.burn
</key>
502 <string>allow
</string>
504 <string>For burning media.
</string>
506 <key>system.services.directory.configure
</key>
509 <string>user
</string>
511 <string>admin
</string>
512 <key>allow-root
</key>
517 <integer>300</integer>
519 <string>For making Directory Services changes.
</string>
521 <key>com.apple.server.admin.streaming
</key>
524 <string>user
</string>
526 <string>For making administrative requests to the QuickTime Streaming Server.
</string>
528 <string>admin
</string>
531 <key>allow-root
</key>
536 <key>com.apple.trust-settings.admin
</key>
539 <string>For modifying Trust Settings in the Local Admin domain.
</string>
540 <key>allow-root
</key>
543 <string>user
</string>
545 <string>admin
</string>
547 <key>com.apple.trust-settings.user
</key>
550 <string>authenticate-session-owner
</string>
552 <string>For modifying per-user Trust Settings.
</string>
554 <key>system.install.admin.user
</key>
557 <string>user
</string>
559 <string>Checked when user is installing in admin domain (/Applications).
</string>
561 <string>admin
</string>
565 <integer>300</integer>
567 <key>system.install.root.user
</key>
570 <string>user
</string>
572 <string>Checked when user is installing in root domain (/System).
</string>
574 <string>admin
</string>
578 <integer>300</integer>
580 <key>system.install.root.admin
</key>
583 <string>user
</string>
585 <string>Checked when admin is installing in root domain (/System).
</string>
587 <string>admin
</string>
591 <integer>300</integer>
593 <key>com.apple.appserver.privilege.admin
</key>
596 <string>rule
</string>
598 <string>For administrative access to the Application Server management tool.
</string>
600 <string>appserver-admin
</string>
602 <key>com.apple.appserver.privilege.user
</key>
605 <string>rule
</string>
607 <string>For user access to the Application Server management tool.
</string>
612 <string>appserver-admin
</string>
613 <string>appserver-user
</string>
616 <key>com.apple.dashboard.advisory.allow
</key>
619 <string>user
</string>
621 <string>admin
</string>
625 <integer>300</integer>
627 <key>com.apple.desktopservices
</key>
630 <string>user
</string>
632 <string>For privileged file operations from within the Finder.
</string>
634 <string>admin
</string>
640 <key>com.apple.builtin.generic-new-passphrase
</key>
643 <string>evaluate-mechanisms
</string>
644 <key>mechanisms
</key>
646 <string>builtin:generic-new-passphrase
</string>
649 <key>com.apple.builtin.generic-unlock
</key>
652 <string>evaluate-mechanisms
</string>
653 <key>mechanisms
</key>
655 <string>builtin:generic-unlock
</string>
658 <key>com.apple.builtin.confirm-access
</key>
661 <string>evaluate-mechanisms
</string>
664 <key>mechanisms
</key>
666 <string>builtin:confirm-access
</string>
669 <key>com.apple.builtin.confirm-access-password
</key>
672 <string>evaluate-mechanisms
</string>
673 <key>mechanisms
</key>
675 <string>builtin:confirm-access-password
</string>
678 <key>com.apple.ZFSManager.
</key>
681 <string>rule
</string>
683 <string>Used by zfsmanager to allow access to destructive zfs functions
</string>
688 <string>is-root
</string>
689 <string>is-admin
</string>
690 <string>default
</string>
695 <key>com.apple.ServiceManagement.blesshelper
</key>
698 <string>Used by the ServiceManagement framework to add a privileged helper tool to the system launchd.
</string>
700 <string>rule
</string>
705 <string>is-root
</string>
706 <string>authenticate-admin-
30</string>
709 <key>com.apple.ServiceManagement.daemons.modify
</key>
712 <string>Used by the ServiceManagement framework to make changes to the system launchd's set of daemons.
</string>
714 <string>rule
</string>
719 <string>is-root
</string>
720 <string>authenticate-admin-
30</string>
723 <key>com.apple.pcastagentconfigd.
</key>
726 <string>Wildcard for rights checked by Podcast Producer when making changes to your camera binding.
</string>
728 <string>user
</string>
730 <string>admin
</string>
731 <key>allow-root
</key>
742 <string>allow
</string>
744 <string>Allow anyone.
</string>
746 <key>authenticate-admin
</key>
749 <string>user
</string>
751 <string>Authenticate as an administrator.
</string>
753 <string>admin
</string>
759 <key>authenticate-admin-
30</key>
762 <string>user
</string>
764 <string>Like the default rule, but
765 credentials remain valid for only
30 seconds after they've
766 been obtained. An acquired credential is shared by all clients.
769 <string>admin
</string>
773 <integer>30</integer>
775 <key>authenticate-developer
</key>
778 <string>user
</string>
780 <string>Authenticate as a developer.
</string>
782 <string>_developer
</string>
786 <integer>36000</integer>
788 <key>authenticate-session-owner
</key>
791 <string>user
</string>
793 <string>Authenticate as the session owner.
</string>
794 <key>session-owner
</key>
797 <key>authenticate-session-user
</key>
800 <string>user
</string>
802 <string>Same as authenticate-session-owner.
</string>
803 <key>session-owner
</key>
806 <key>authenticate-session-owner-or-admin
</key>
808 <key>allow-root
</key>
811 <string>user
</string>
813 <string>Authenticate either as the owner or as an administrator.
</string>
815 <string>admin
</string>
816 <key>session-owner
</key>
824 <string>user
</string>
826 <string>Verify that the user asking for authorization is an administrator.
</string>
828 <string>admin
</string>
829 <key>authenticate-user
</key>
832 <string>true
</string>
834 <key>is-developer
</key>
837 <string>user
</string>
839 <string>Verify that the user asking for authorization is a developer.
</string>
841 <string>_developer
</string>
842 <key>authenticate-user
</key>
847 <key>allow-root
</key>
850 <string>user
</string>
851 <key>authenticate-user
</key>
854 <string>Verify that the process that created this AuthorizationRef is running as root.
</string>
856 <key>appserver-user
</key>
859 <string>user
</string>
861 <string>appserverusr
</string>
863 <key>appserver-admin
</key>
866 <string>user
</string>
868 <string>appserveradm
</string>
873 <string>user
</string>
875 <string>Default rule.
876 Credentials remain valid for
5 minutes after they've been obtained.
877 An acquired credential is shared by all clients.
880 <string>admin
</string>
884 <integer>300</integer>
886 <key>authenticate
</key>
889 <string>evaluate-mechanisms
</string>
890 <key>mechanisms
</key>
892 <string>builtin:smartcard-sniffer,privileged
</string>
893 <string>builtin:authenticate
</string>
894 <string>builtin:authenticate,privileged
</string>