@@ -422,7 +422,38 @@ of *all* agents (the general public). For example:
422
422
```
423
423
424
424
Note that this is a special case of ` acl:agentClass ` usage, since it doesn't
425
- point to a Group Listing document that's meant to be de-referenced.
425
+ point to a Class Listing document that's meant to be de-referenced.
426
+
427
+ ### Authenticated Agents (Anyone logged on)
428
+
429
+ Authenticated access is a bit like public access
430
+ but it is not anonymous. Access is only given to people
431
+ who have logged on and provided a specific ID.
432
+ This allows the server to track the people who have used the resource.
433
+
434
+ To specify that you're giving a particular mode of access to anyone * logged on*
435
+ (for example, that your collaborative page is open to anyone but you want to know who they are),
436
+ you can use
437
+ ` acl:agentClass acl:AuthenticatedAgent ` to denote that you're giving access to the class
438
+ of * all* authenticated agents. For example:
439
+
440
+ ``` ttl
441
+ @prefix acl: <http://www.w3.org/ns/auth/acl#>.
442
+ @prefix foaf: <http://xmlns.com/foaf/0.1/> .
443
+
444
+ <#authorization2>
445
+ a acl:Authorization;
446
+ acl:agentClass acl:AuthenticatedAgent; # everyone
447
+ acl:mode acl:Read; # has Read-only access
448
+ acl:accessTo <https://alice.databox.me/profile/card>. # to the public profile
449
+ ```
450
+
451
+ Note that this is a special case of ` acl:agentClass ` usage, since it doesn't
452
+ point to a Class Listing document that's meant to be de-referenced.
453
+
454
+ An application of this feature is to throw a resource open to all logged on users
455
+ for a specific amount of time, accumulate the list of those who case as a group,
456
+ and then later restrict access to that group, to prevent spam.
426
457
427
458
## Referring to Resources
428
459
0 commit comments