Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

These curl command will create a small set of test resources that can be used to test various authorization scenarios. The resources and ACLs can be also modified to test other features of the WebAC implementation not covered by this set.

Create collection1, subcollection1, item1, item2, item3

Code Block
linenumberstrue
curl -i -X PUT "http://localhost:8080/fcrepo/rest/collection1"
curl -i -X PUT "http://localhost:8080/fcrepo/rest/collection1/subcollection1"
curl -i -X PUT "http://localhost:8080/fcrepo/rest/collection1/item1"
curl -i -X PUT "http://localhost:8080/fcrepo/rest/collection1/subcollection1/item2"
curl -i -X PUT "http://localhost:8080/fcrepo/rest/collection1/subcollection1/item3"

Create ACL1, add auth 1 & 2

Code Block
firstline6
linenumberstrue
curl -i -X PUT "http://localhost:8080/fcrepo/rest/acl1"
curl -i -X PUT "http://localhost:8080/fcrepo/rest/acl1/auth1"
curl -i -X PUT "http://localhost:8080/fcrepo/rest/acl1/auth2"
curl -i -X PATCH -H "Content-Type: application/sparql-update" -d "PREFIX acl: <http://www.w3.org/ns/auth/acl#> INSERT { <> a acl:Authorization; acl:accessTo </fcrepo/rest/collection1>; acl:mode acl:Read, acl:Write; acl:agent 'adminuser' . } WHERE {}" http://localhost:8080/fcrepo/rest/acl1/auth1
curl -i -X PATCH -H "Content-Type: application/sparql-update" -d "PREFIX acl: <http://www.w3.org/ns/auth/acl#> INSERT { <> a acl:Authorization; acl:accessTo </fcrepo/rest/collection1>; acl:mode acl:Read; acl:agent 'testuser' . } WHERE {}" http://localhost:8080/fcrepo/rest/acl1/auth2

Create ACL2, add auth 3 & 4

Code Block
firstline11
linenumberstrue
curl -i -X PUT "http://localhost:8080/fcrepo/rest/acl2"
curl -i -X PUT "http://localhost:8080/fcrepo/rest/acl2/auth3"
curl -i -X PUT "http://localhost:8080/fcrepo/rest/acl2/auth4"
curl -i -X PATCH -H "Content-Type: application/sparql-update" -d "PREFIX acl: <http://www.w3.org/ns/auth/acl#> INSERT { <> a acl:Authorization; acl:accessTo </fcrepo/rest/collection1/item1>; acl:mode acl:Read, acl:Write; acl:agent 'adminuser' . } WHERE {}" http://localhost:8080/fcrepo/rest/acl2/auth3
curl -i -X PATCH -H "Content-Type: application/sparql-update" -d "PREFIX acl: <http://www.w3.org/ns/auth/acl#> INSERT { <> a acl:Authorization; acl:accessTo </fcrepo/rest/collection1/item1>; acl:mode acl:Read; acl:agent 'adminuser' . } WHERE {}" http://localhost:8080/fcrepo/rest/acl2/auth4

Create ACL3, create auth 5

Code Block
firstline16
linenumberstrue
curl -i -X PUT "http://localhost:8080/fcrepo/rest/acl3"
curl -i -X PUT "http://localhost:8080/fcrepo/rest/acl3/auth5"
curl -i -X PATCH -H "Content-Type: application/sparql-update" -d "PREFIX acl: <http://www.w3.org/ns/auth/acl#> INSERT { <> a acl:Authorization; acl:accessTo </fcrepo/rest/collection1/subcollection1/item3>; acl:mode acl:Read; acl:agent 'adminuser' . } WHERE {}" http://localhost:8080/fcrepo/rest/acl3/auth5

Point collection1 to ACL1, item1 to ACL2, and item3 to ACL3

Code Block
firstline19
linenumberstrue
curl -i -X PATCH -H "Content-Type: application/sparql-update" -d "PREFIX acl: <http://www.w3.org/ns/auth/acl#> INSERT { </fcrepo/rest/collection1> acl:accessControl </fcrepo/rest/acl1> . } WHERE {}" http://localhost:8080/fcrepo/rest/acl1
curl -i -X PATCH -H "Content-Type: application/sparql-update" -d "PREFIX acl: <http://www.w3.org/ns/auth/acl#> INSERT { </fcrepo/rest/collection1/item1> acl:accessControl </fcrepo/rest/acl2> . } WHERE {}" http://localhost:8080/fcrepo/rest/acl2
curl -i -X PATCH -H "Content-Type: application/sparql-update" -d "PREFIX acl: <http://www.w3.org/ns/auth/acl#> INSERT { </fcrepo/rest/collection1/subcollection1/item3> acl:accessControl </fcrepo/rest/acl3> . } WHERE {}" http://localhost:8080/fcrepo/rest/acl3

...