...
The commands in this guide assume that your Fedora 4 is running at http://localhost:8080/fcrepo.
Steps
Create these three two files:
Panel | ||
---|---|---|
| ||
| ||
Panel | ||
| ||
|
Panel | ||
---|---|---|
| ||
|
...
Upload these files into the repository:
Code Block | ||
---|---|---|
| ||
$ curl -X PUT http://localhost:8080/fcrepo/rest/aclfoo -u admin1:password3 \ -H "Content-Type: text/turtle" --data-binary @acl@foo.ttl $ curl -X PUT http://localhost:8080/fcrepo/rest/foo -u admin1:password3 \ -H "Content-Type: text/turtle" --data-binary @foo.ttl \ -H 'Link: <http://localhost:8080/fcrepo/rest/acl>; rel="acl"' $ curl -X PUT http://localhost:8080/fcrepo/rest/acl/authz -/fcr:acl -u admin1:password3 \ -H "Content-Type: text/turtle" --data-binary @authz@acl.ttl |
...
Now user1
is able to read the resource at http://localhost:8080/rest/foo
, but user2
cannot. To test this, try the following two commands:
Code Block | ||
---|---|---|
| ||
$ curl -i http://localhost:8080/fcrepo/rest/foo -u user1:password1 $ curl -i http://localhost:8080/fcrepo/rest/foo -u user2:password2 |
...
Panel | ||
---|---|---|
| ||
|
Then run this to attempt to update foo
:
...
Panel | ||
---|---|---|
| ||
|
Run this command to update the ACL authorization:
...
Now this should return a 204 No Content response. To verify that the update happened, you can also go to http://localhost:8080/fcrepo/rest/foo in your web browser, and confirm that it has both dc:title and dc:description properties.
...
title | Access Control Link Header |
---|
When you perform a successful GET request on a resource that has an ACL associated with it (or with an ancestor), you will receive an additional header of the format.
Code Block |
---|
Link: <http://localhost:8080/fcrepo/rest/acl>; rel="acl" |
...
.
Note | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
When creating an ACL to protect the repository root, you must include a trailing slash in the Authorizations's
|
...