]> git.saurik.com Git - apple/security.git/blob - SecurityServer/Authorization/authorization.plist
Security-163.tar.gz
[apple/security.git] / SecurityServer / Authorization / authorization.plist
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">
3 <plist version="1.0">
4 <dict>
5 <key>comment</key>
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.
7
8 allow rule: this is always allowed
9 &lt;key&gt;com.apple.TestApp.benign&lt;/key&gt;
10 &lt;string&gt;allow&lt;/string&gt;
11
12 deny rule: this is always denied
13 &lt;key&gt;com.apple.TestApp.dangerous&lt;/key&gt;
14 &lt;string&gt;deny&lt;/string&gt;
15
16 user rule: successful authentication as a user in the specified group(5) allows the associated right.
17
18 The shared property specifies whether a credential generated on success is shared with other apps (same "session"). This property defaults to false if not specified.
19
20 The timeout property specifies the maximum age of a (cached/shared) credential accepted for this rule.
21
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.
23
24 See remaining rules for examples.
25 </string>
26 <key>rights</key>
27 <dict>
28 <key></key>
29 <dict>
30 <key>class</key>
31 <string>rule</string>
32 <key>comment</key>
33 <string>All other rights will be matched by this rule.
34 Credentials remain valid 5 minutes after they've been obtained.
35 An acquired credential is shared amongst all clients.
36 </string>
37 <key>rule</key>
38 <string>default</string>
39 </dict>
40 <key>config.add.</key>
41 <dict>
42 <key>class</key>
43 <string>allow</string>
44 <key>comment</key>
45 <string>wildcard right for adding rights. Anyone is allowed to add any (non-wildcard) rights</string>
46 </dict>
47 <key>config.config.</key>
48 <dict>
49 <key>class</key>
50 <string>deny</string>
51 <key>comment</key>
52 <string>wildcard right for any change to meta-rights for db modification. Not allowed programmatically (just edit this file)</string>
53 </dict>
54 <key>config.modify.</key>
55 <dict>
56 <key>class</key>
57 <string>rule</string>
58 <key>comment</key>
59 <string>wildcard right for modifying rights. Admins are allowed to modify any (non-wildcard) rights</string>
60 <key>rule</key>
61 <string>authenticate-admin</string>
62 </dict>
63 <key>config.remove.</key>
64 <dict>
65 <key>class</key>
66 <string>rule</string>
67 <key>comment</key>
68 <string>wildcard right for deleting rights. Admins are allowed to delete any (non-wildcard) rights</string>
69 <key>rule</key>
70 <string>authenticate-admin</string>
71 </dict>
72 <key>config.remove.system.</key>
73 <dict>
74 <key>class</key>
75 <string>deny</string>
76 <key>comment</key>
77 <string>wildcard right for deleting system rights.</string>
78 </dict>
79 <key>sys.openfile.</key>
80 <dict>
81 <key>class</key>
82 <string>user</string>
83 <key>comment</key>
84 <string>See authopen(1) for information on the use of this right.</string>
85 <key>group</key>
86 <string>admin</string>
87 <key>mechanisms</key>
88 <array>
89 <string>builtin:authenticate</string>
90 </array>
91 <key>shared</key>
92 <false/>
93 <key>timeout</key>
94 <integer>300</integer>
95 </dict>
96 <key>system.device.dvd.setregion.initial</key>
97 <dict>
98 <key>class</key>
99 <string>user</string>
100 <key>comment</key>
101 <string>Used by the dvd player to set the regioncode the first time. Note that changed the region code after it has been set requires a different right (system.device.dvd.setregion.change)
102 Credentials remain valid indefinitely after they've been obtained.
103 An acquired credential is shared amongst all clients.</string>
104 <key>group</key>
105 <string>admin</string>
106 <key>mechanisms</key>
107 <array>
108 <string>builtin:authenticate</string>
109 </array>
110 <key>shared</key>
111 <true/>
112 </dict>
113 <key>system.login.console</key>
114 <dict>
115 <key>class</key>
116 <string>evaluate-mechanisms</string>
117 <key>comment</key>
118 <string>Login mechanism based rule. Not for general use, yet.
119 builtin:krb5authenticate can be used to hinge local authentication on a successful kerberos authentication and kdc verification.
120 builtin:krb5authnoverify skips the kdc verification. Both fall back on local authentication.</string>
121 <key>mechanisms</key>
122 <array>
123 <string>loginwindow_builtin:login</string>
124 <string>authinternal</string>
125 <string>loginwindow_builtin:success</string>
126 <string>builtin:getuserinfo</string>
127 <string>builtin:sso</string>
128 </array>
129 </dict>
130 <key>system.login.done</key>
131 <dict>
132 <key>class</key>
133 <string>evaluate-mechanisms</string>
134 <key>comment</key>
135 <string>builtin:krb5login can be used to do kerberos authentication as a side-effect of logging in. Local username/password will be used.</string>
136 <key>mechanisms</key>
137 <array>
138 <string>switch_to_user</string>
139 </array>
140 </dict>
141 <key>system.login.pam</key>
142 <dict>
143 <key>class</key>
144 <string>evaluate-mechanisms</string>
145 <key>mechanisms</key>
146 <array>
147 <string>push_hints_to_context</string>
148 <string>authinternal</string>
149 </array>
150 </dict>
151 <key>system.login.screensaver</key>
152 <dict>
153 <key>class</key>
154 <string>rule</string>
155 <key>comment</key>
156 <string>the owner as well as any admin can unlock the screensaver;modify the group key to change this.</string>
157 <key>rule</key>
158 <string>authenticate-session-owner-or-admin</string>
159 </dict>
160 <key>system.login.tty</key>
161 <dict>
162 <key>class</key>
163 <string>evaluate-mechanisms</string>
164 <key>mechanisms</key>
165 <array>
166 <string>push_hints_to_context</string>
167 <string>authinternal</string>
168 </array>
169 </dict>
170 <key>system.keychain.create.loginkc</key>
171 <dict>
172 <key>allow-root</key>
173 <false/>
174 <key>class</key>
175 <string>evaluate-mechanisms</string>
176 <key>comment</key>
177 <string>Used by Security framework when you add an item to a unconfigured default keychain</string>
178 <key>mechanisms</key>
179 <array>
180 <string>loginKC:queryCreate</string>
181 <string>loginKC:showPasswordUI</string>
182 <string>authinternal</string>
183 <string>loginKC:successOrFailure</string>
184 </array>
185 <key>session-owner</key>
186 <true/>
187 <key>shared</key>
188 <false/>
189 </dict>
190 <key>system.keychain.modify</key>
191 <dict>
192 <key>class</key>
193 <string>user</string>
194 <key>comment</key>
195 <string>Used by Keychain Access when editing a system keychain.</string>
196 <key>group</key>
197 <string>admin</string>
198 <key>mechanisms</key>
199 <array>
200 <string>builtin:authenticate</string>
201 </array>
202 <key>shared</key>
203 <false/>
204 <key>timeout</key>
205 <integer>300</integer>
206 </dict>
207 <key>system.preferences</key>
208 <dict>
209 <key>allow-root</key>
210 <true/>
211 <key>class</key>
212 <string>user</string>
213 <key>comment</key>
214 <string>This right is checked by the Admin framework when making changes to the system preferences.
215 Credentials remain valid forever.
216 An acquired credential is shared amongst all clients.
217 If the proccess that created the AuthorizationRef has uid = 0 this right will automatically be granted.</string>
218 <key>group</key>
219 <string>admin</string>
220 <key>mechanisms</key>
221 <array>
222 <string>builtin:authenticate</string>
223 </array>
224 <key>shared</key>
225 <true/>
226 </dict>
227 <key>system.printingmanager</key>
228 <dict>
229 <key>class</key>
230 <string>rule</string>
231 <key>comment</key>
232 <string>The following right is checked for printing to locked printers.</string>
233 <key>rule</key>
234 <string>authenticate-admin</string>
235 </dict>
236 <key>system.privilege.admin</key>
237 <dict>
238 <key>allow-root</key>
239 <true/>
240 <key>class</key>
241 <string>user</string>
242 <key>comment</key>
243 <string>Used by AuthorizationExecuteWithPrivileges(...)
244 AuthorizationExecuteWithPrivileges is used by programs requesting
245 to run a tool as root (ie. some installers).
246 Credentials remain valid 5 minutes after they've been obtained.
247 An acquired credential isn't shared with other clients.
248 Clients running as root will be granted this right automatically.
249 </string>
250 <key>group</key>
251 <string>admin</string>
252 <key>mechanisms</key>
253 <array>
254 <string>builtin:authenticate</string>
255 </array>
256 <key>shared</key>
257 <false/>
258 <key>timeout</key>
259 <integer>300</integer>
260 </dict>
261 <key>system.restart</key>
262 <dict>
263 <key>class</key>
264 <string>evaluate-mechanisms</string>
265 <key>comment</key>
266 <string>Multisession restart mechanisms</string>
267 <key>mechanisms</key>
268 <array>
269 <string>RestartAuthorization:restart</string>
270 <string>RestartAuthorization:authenticate</string>
271 <string>RestartAuthorization:success</string>
272 </array>
273 </dict>
274 <key>system.shutdown</key>
275 <dict>
276 <key>class</key>
277 <string>evaluate-mechanisms</string>
278 <key>comment</key>
279 <string>Multisession shutdown mechanisms</string>
280 <key>mechanisms</key>
281 <array>
282 <string>RestartAuthorization:shutdown</string>
283 <string>RestartAuthorization:authenticate</string>
284 <string>RestartAuthorization:success</string>
285 </array>
286 </dict>
287 <key>system.burn</key>
288 <dict>
289 <key>class</key>
290 <string>allow</string>
291 <key>comment</key>
292 <string>authorization to burn media</string>
293 </dict>
294 <key>com.apple.server.admin.streaming</key>
295 <dict>
296 <key>class</key>
297 <string>user</string>
298 <key>comment</key>
299 <string>Used for admin requests with the QuickTime Streaming Server.</string>
300 <key>group</key>
301 <string>admin</string>
302 <key>shared</key>
303 <false/>
304 <key>allow-root</key>
305 <true/>
306 <key>timeout</key>
307 <integer>0</integer>
308 </dict>
309 <key>system.install.admin.user</key>
310 <dict>
311 <key>class</key>
312 <string>user</string>
313 <key>comment</key>
314 <string>Used by installer tool: user installling in admin domain (/Applications)</string>
315 <key>group</key>
316 <string>admin</string>
317 <key>mechanisms</key>
318 <array>
319 <string>builtin:authenticate</string>
320 </array>
321 <key>shared</key>
322 <false/>
323 <key>timeout</key>
324 <integer>300</integer>
325 </dict>
326 <key>system.install.root.user</key>
327 <dict>
328 <key>class</key>
329 <string>user</string>
330 <key>comment</key>
331 <string>Used by installer tool: user installling in root domain (/System)</string>
332 <key>group</key>
333 <string>admin</string>
334 <key>mechanisms</key>
335 <array>
336 <string>builtin:authenticate</string>
337 </array>
338 <key>shared</key>
339 <false/>
340 <key>timeout</key>
341 <integer>300</integer>
342 </dict>
343 <key>system.install.root.admin</key>
344 <dict>
345 <key>class</key>
346 <string>user</string>
347 <key>comment</key>
348 <string>Used by installer tool: admin installling in root domain (/System)</string>
349 <key>group</key>
350 <string>admin</string>
351 <key>mechanisms</key>
352 <array>
353 <string>builtin:authenticate</string>
354 </array>
355 <key>shared</key>
356 <false/>
357 <key>timeout</key>
358 <integer>300</integer>
359 </dict>
360 <key>com.apple.appserver.privilege.admin</key>
361 <dict>
362 <key>class</key>
363 <string>rule</string>
364 <key>comment</key>
365 <string>Used to determine administrative access to the Application Server management tool.</string>
366 <key>rule</key>
367 <string>appserver-admin</string>
368 </dict>
369 <key>com.apple.appserver.privilege.user</key>
370 <dict>
371 <key>class</key>
372 <string>rule</string>
373 <key>comment</key>
374 <string>Used to determine user access to the Application Server management tool.</string>
375 <key>k-of-n</key>
376 <integer>1</integer>
377 <key>rule</key>
378 <array>
379 <string>appserver-admin</string>
380 <string>appserver-user</string>
381 </array>
382 </dict>
383 </dict>
384 <key>rules</key>
385 <dict>
386 <key>allow</key>
387 <dict>
388 <key>class</key>
389 <string>allow</string>
390 <key>comment</key>
391 <string>allow anyone</string>
392 </dict>
393 <key>authenticate-admin</key>
394 <dict>
395 <key>class</key>
396 <string>user</string>
397 <key>comment</key>
398 <string>require the user asking for authorization to authenticate as an admin</string>
399 <key>group</key>
400 <string>admin</string>
401 <key>mechanisms</key>
402 <array>
403 <string>builtin:authenticate</string>
404 </array>
405 <key>shared</key>
406 <true/>
407 <key>timeout</key>
408 <integer>0</integer>
409 </dict>
410 <key>authenticate-session-owner</key>
411 <dict>
412 <key>class</key>
413 <string>user</string>
414 <key>comment</key>
415 <string>authenticate session owner</string>
416 <key>mechanisms</key>
417 <array>
418 <string>builtin:authenticate</string>
419 </array>
420 <key>session-owner</key>
421 <true/>
422 </dict>
423 <key>authenticate-session-owner-or-admin</key>
424 <dict>
425 <key>allow-root</key>
426 <false/>
427 <key>class</key>
428 <string>user</string>
429 <key>comment</key>
430 <string>the owner as well as any admin can authorize</string>
431 <key>group</key>
432 <string>admin</string>
433 <key>mechanisms</key>
434 <array>
435 <string>builtin:authenticate</string>
436 </array>
437 <key>session-owner</key>
438 <true/>
439 <key>shared</key>
440 <false/>
441 </dict>
442 <key>is-admin</key>
443 <dict>
444 <key>class</key>
445 <string>user</string>
446 <key>comment</key>
447 <string>verify the user asking for authorization is an admin</string>
448 <key>group</key>
449 <string>admin</string>
450 <key>shared</key>
451 <string>true</string>
452 </dict>
453 <key>is-root</key>
454 <dict>
455 <key>allow-root</key>
456 <true/>
457 <key>class</key>
458 <string>user</string>
459 <key>comment</key>
460 <string>verify the process that created this authref is root</string>
461 <key>group</key>
462 <string>nogroup</string>
463 </dict>
464 <key>appserver-user</key>
465 <dict>
466 <key>class</key>
467 <string>user</string>
468 <key>group</key>
469 <string>appserverusr</string>
470 </dict>
471 <key>appserver-admin</key>
472 <dict>
473 <key>class</key>
474 <string>user</string>
475 <key>group</key>
476 <string>appserveradm</string>
477 </dict>
478 <key>default</key>
479 <dict>
480 <key>class</key>
481 <string>user</string>
482 <key>comment</key>
483 <string>All other rights will be matched by this rule. Credentials remain valid 5 minutes after they've been obtained.
484 An acquired credential is shared amongst all clients.
485 </string>
486 <key>group</key>
487 <string>admin</string>
488 <key>mechanisms</key>
489 <array>
490 <string>builtin:authenticate</string>
491 </array>
492 <key>shared</key>
493 <true/>
494 <key>timeout</key>
495 <integer>300</integer>
496 </dict>
497 </dict>
498 </dict>
499 </plist>