-
Notifications
You must be signed in to change notification settings - Fork 124
/
acp.json
73 lines (73 loc) · 2.93 KB
/
acp.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
{
"@context": "https://linkedsoftwaredependencies.org/bundles/npm/@solid/community-server/^5.0.0/components/context.jsonld",
"import": [
"css:config/ldp/authorization/readers/acp.json",
"css:config/ldp/authorization/readers/ownership.json"
],
"@graph": [
{
"comment": "Requests permissions on subject resources for auxiliary resources.",
"@id": "urn:solid-server:default:PermissionReader",
"@type": "AuxiliaryReader",
"auxiliaryStrategy": { "@id": "urn:solid-server:default:AuxiliaryStrategy" },
"reader": {
"@type": "UnionPermissionReader",
"readers": [
{
"comment": "This PermissionReader will be used to prevent external access to containers used for internal storage.",
"@id": "urn:solid-server:default:PathBasedReader",
"@type": "PathBasedReader",
"baseUrl": { "@id": "urn:solid-server:default:variable:baseUrl" }
},
{
"@id": "urn:solid-server:default:OwnerPermissionReader",
"@type": "OwnerPermissionReader",
"authStrategy": { "@id": "urn:solid-server:default:AcrStrategy" }
},
{
"comment": "Uses Web Access Control for authorization.",
"@id": "urn:solid-server:default:WrappedAcpReader"
}
]
}
},
{
"comment": "The templates for ACP authorization documents are in the acp subfolder.",
"@id": "urn:solid-server:default:TemplatedResourcesGenerator",
"@type": "SubfolderResourcesGenerator",
"subfolders": [ "acp" ]
},
{
"comment": "Middleware exposes the required ACP headers.",
"@id": "urn:solid-server:default:ParallelMiddleware",
"@type": "ParallelHandler",
"handlers": [{
"@type": "AcpHeaderHandler",
"targetExtractor": { "@id": "urn:solid-server:default:TargetExtractor" },
"strategy": { "@id": "urn:solid-server:default:AcrIdentifierStrategy" },
"modes": [
"http://www.w3.org/ns/auth/acl#Read",
"http://www.w3.org/ns/auth/acl#Append",
"http://www.w3.org/ns/auth/acl#Write",
"http://www.w3.org/ns/auth/acl#Control"
],
"attributes": [
"http://www.w3.org/ns/solid/acp#target",
"http://www.w3.org/ns/solid/acp#agent",
"http://www.w3.org/ns/solid/acp#client",
"http://www.w3.org/ns/solid/acp#issuer"
]
}]
},
{
"comment": "In case of ACP authorization the ACR resources determine authorization.",
"@id": "urn:solid-server:default:AuthResourceHttpHandler",
"@type": "RouterHandler",
"args_baseUrl": { "@id": "urn:solid-server:default:variable:baseUrl" },
"args_targetExtractor": { "@id": "urn:solid-server:default:TargetExtractor" },
"args_allowedMethods": [ "*" ],
"args_allowedPathNames": [ "^/.*\\.acr$" ],
"args_handler": { "@id": "urn:solid-server:default:LdpHandler" }
}
]
}