Skip to content

Commit c1efcab

Browse files
committed
refactor: Move Override components to separate configs
1 parent 9f3fb8a commit c1efcab

8 files changed

Lines changed: 156 additions & 106 deletions

File tree

packages/css/config/default.json

Lines changed: 0 additions & 104 deletions
Original file line numberDiff line numberDiff line change
@@ -41,110 +41,6 @@
4141
"@graph": [
4242
{
4343
"comment": "A single-pod server that trusts a pre-configured UMA AS."
44-
},
45-
{
46-
"comment": "Replace the account seeder with the UMA version so the AS is taken into account.",
47-
"@id": "urn:solid-server:override:SeededAccountInitializer",
48-
"@type": "Override",
49-
"overrideInstance": {
50-
"@id": "urn:solid-server:default:SeededAccountInitializer"
51-
},
52-
"overrideParameters": {
53-
"comment": "Initializer that instantiates all the seeded accounts and pods.",
54-
"@type": "UmaSeededAccountInitializer",
55-
"accountStore": { "@id": "urn:solid-server:default:AccountStore" },
56-
"passwordStore": { "@id": "urn:solid-server:default:PasswordStore" },
57-
"podCreator": { "@id": "urn:solid-server:default:PodCreator" },
58-
"configFilePath": { "@id": "urn:solid-server:default:variable:seedConfig" }
59-
}
60-
},
61-
{
62-
"comment": "Add JWKS handler to list of base handlers so the server exposes its public key.",
63-
"@id": "urn:solid-server:override:BaseHttpHandler",
64-
"@type": "Override",
65-
"overrideInstance": { "@id": "urn:solid-server:default:BaseHttpHandler" },
66-
"overrideSteps": [{
67-
"@type": "OverrideListInsertAt",
68-
"overrideParameter": { "@id": "WaterfallHandler:_handlers" },
69-
"overrideTarget": 0,
70-
"overrideValue": {
71-
"@id": "urn:solid-server:default:JwksHandler",
72-
"@type": "JwksHandler",
73-
"path": "/.well-known/jwks.json",
74-
"generator": {
75-
"@id": "urn:solid-server:default:JwkGenerator"
76-
}
77-
}
78-
}]
79-
},
80-
{
81-
"comment": "Replace the account store with the UMA version that stores AS settings.",
82-
"@id": "urn:solid-server:override:AccountStore",
83-
"@type": "Override",
84-
"overrideInstance": {
85-
"@id": "urn:solid-server:default:AccountStore"
86-
},
87-
"overrideParameters": {
88-
"@type": "UmaAccountStore",
89-
"storage": {
90-
"@id": "urn:solid-server:default:AccountStorage"
91-
}
92-
}
93-
},
94-
{
95-
"comment": "Replace the DPoP authentication with UMA authentication.",
96-
"@id": "urn:solid-server:override:AccessTokenExtractor",
97-
"@type": "Override",
98-
"overrideInstance": {
99-
"@id": "urn:solid-server:default:AccessTokenExtractor"
100-
},
101-
"overrideParameters": {
102-
"comment": "Extracts information from UMA access tokens.",
103-
"@type": "UmaTokenExtractor",
104-
"client": { "@id": "urn:solid-server:default:UmaClient" },
105-
"targetExtractor": { "@id": "urn:solid-server:default:TargetExtractor" },
106-
"ownerUtil": { "@id": "urn:solid-server:default:OwnerUtil" },
107-
"introspect": false
108-
}
109-
},
110-
{
111-
"comment": "Replace the authorization handler with UMA support.",
112-
"@id": "urn:solid-server:override:LdpHandler",
113-
"@type": "Override",
114-
"overrideInstance": {
115-
"@id": "urn:solid-server:default:LdpHandler"
116-
},
117-
"overrideParameters": {
118-
"@type": "ParsingHttpHandler",
119-
"operationHandler": {
120-
"@type": "AuthorizingHttpHandler",
121-
"credentialsExtractor": { "@id": "urn:solid-server:default:CredentialsExtractor" },
122-
"modesExtractor": { "@id": "urn:solid-server:default:ModesExtractor" },
123-
"permissionReader": { "@id": "urn:solid-server:default:PermissionReader" },
124-
"authorizer": {
125-
"comment": "Requests UMA ticket when authorization fails.",
126-
"@id": "urn:solid-server:default:UmaAuthorizer",
127-
"@type": "UmaAuthorizer",
128-
"authorizer": { "@id": "urn:solid-server:default:Authorizer" },
129-
"umaClient": { "@id": "urn:solid-server:default:UmaClient" },
130-
"ownerUtil": { "@id": "urn:solid-server:default:OwnerUtil" }
131-
},
132-
"operationHandler": { "@id": "urn:solid-server:default:OperationHandler" }
133-
}
134-
}
135-
},
136-
{
137-
"comment": "Replace WWW-Authenticate metadata writer with the UMA version.",
138-
"@id": "urn:solid-server:override:MetadataWriter_WwwAuth",
139-
"@type": "Override",
140-
"overrideInstance": {
141-
"@id": "urn:solid-server:default:MetadataWriter_WwwAuth"
142-
},
143-
"overrideParameters": {
144-
"comment": "Returns the UMA ticket in case of an unauthorized request.",
145-
"@id": "urn:solid-server:default:MetadataWriter_UmaTicket",
146-
"@type": "UmaTicketMetadataWriter"
147-
}
14844
}
14945
]
15046
}

packages/css/config/uma/default.json

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,18 @@
33
"https://linkedsoftwaredependencies.org/bundles/npm/@solidlab/uma-css/^0.0.0/components/context.jsonld"
44
],
55
"import": [
6+
"uma-css:config/uma/overrides/account-seeding.json",
7+
"uma-css:config/uma/overrides/account-store.json",
8+
"uma-css:config/uma/overrides/authorization-handler.json",
9+
"uma-css:config/uma/overrides/jwks.json",
10+
"uma-css:config/uma/overrides/token-extractor.json",
11+
"uma-css:config/uma/overrides/www-auth.json",
12+
613
"uma-css:config/uma/parts/cli.json",
714
"uma-css:config/uma/parts/client.json",
815
"uma-css:config/uma/parts/fetcher.json",
916
"uma-css:config/uma/parts/owner-util.json",
1017
"uma-css:config/uma/parts/resource-registrar.json",
1118
"uma-css:config/uma/parts/server-configurator.json"
12-
],
13-
"@graph": []
19+
]
1420
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
{
2+
"@context": [
3+
"https://linkedsoftwaredependencies.org/bundles/npm/@solidlab/uma-css/^0.0.0/components/context.jsonld"
4+
],
5+
"@graph": [
6+
{
7+
"comment": "Replace the account seeder with the UMA version so the AS is taken into account.",
8+
"@id": "urn:solid-server:override:SeededAccountInitializer",
9+
"@type": "Override",
10+
"overrideInstance": {
11+
"@id": "urn:solid-server:default:SeededAccountInitializer"
12+
},
13+
"overrideParameters": {
14+
"comment": "Initializer that instantiates all the seeded accounts and pods.",
15+
"@type": "UmaSeededAccountInitializer",
16+
"accountStore": { "@id": "urn:solid-server:default:AccountStore" },
17+
"passwordStore": { "@id": "urn:solid-server:default:PasswordStore" },
18+
"podCreator": { "@id": "urn:solid-server:default:PodCreator" },
19+
"configFilePath": { "@id": "urn:solid-server:default:variable:seedConfig" }
20+
}
21+
}
22+
]
23+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
{
2+
"@context": [
3+
"https://linkedsoftwaredependencies.org/bundles/npm/@solidlab/uma-css/^0.0.0/components/context.jsonld"
4+
],
5+
"@graph": [
6+
{
7+
"comment": "Replace the account store with the UMA version that stores AS settings.",
8+
"@id": "urn:solid-server:override:AccountStore",
9+
"@type": "Override",
10+
"overrideInstance": {
11+
"@id": "urn:solid-server:default:AccountStore"
12+
},
13+
"overrideParameters": {
14+
"@type": "UmaAccountStore",
15+
"storage": {
16+
"@id": "urn:solid-server:default:AccountStorage"
17+
}
18+
}
19+
}
20+
]
21+
}
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
{
2+
"@context": [
3+
"https://linkedsoftwaredependencies.org/bundles/npm/@solid/community-server/^7.0.0/components/context.jsonld",
4+
"https://linkedsoftwaredependencies.org/bundles/npm/@solidlab/uma-css/^0.0.0/components/context.jsonld"
5+
],
6+
"@graph": [
7+
{
8+
"comment": "Replace the authorization handler with UMA support.",
9+
"@id": "urn:solid-server:override:LdpHandler",
10+
"@type": "Override",
11+
"overrideInstance": {
12+
"@id": "urn:solid-server:default:LdpHandler"
13+
},
14+
"overrideParameters": {
15+
"@type": "ParsingHttpHandler",
16+
"operationHandler": {
17+
"@type": "AuthorizingHttpHandler",
18+
"credentialsExtractor": { "@id": "urn:solid-server:default:CredentialsExtractor" },
19+
"modesExtractor": { "@id": "urn:solid-server:default:ModesExtractor" },
20+
"permissionReader": { "@id": "urn:solid-server:default:PermissionReader" },
21+
"authorizer": {
22+
"comment": "Requests UMA ticket when authorization fails.",
23+
"@id": "urn:solid-server:default:UmaAuthorizer",
24+
"@type": "UmaAuthorizer",
25+
"authorizer": { "@id": "urn:solid-server:default:Authorizer" },
26+
"umaClient": { "@id": "urn:solid-server:default:UmaClient" },
27+
"ownerUtil": { "@id": "urn:solid-server:default:OwnerUtil" }
28+
},
29+
"operationHandler": { "@id": "urn:solid-server:default:OperationHandler" }
30+
}
31+
}
32+
}
33+
]
34+
}
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
{
2+
"@context": [
3+
"https://linkedsoftwaredependencies.org/bundles/npm/@solid/community-server/^7.0.0/components/context.jsonld",
4+
"https://linkedsoftwaredependencies.org/bundles/npm/@solidlab/uma-css/^0.0.0/components/context.jsonld"
5+
],
6+
"@graph": [
7+
{
8+
"comment": "Add JWKS handler to list of base handlers so the server exposes its public key.",
9+
"@id": "urn:solid-server:override:BaseHttpHandler",
10+
"@type": "Override",
11+
"overrideInstance": { "@id": "urn:solid-server:default:BaseHttpHandler" },
12+
"overrideSteps": [{
13+
"@type": "OverrideListInsertAt",
14+
"overrideParameter": { "@id": "WaterfallHandler:_handlers" },
15+
"overrideTarget": 0,
16+
"overrideValue": {
17+
"@id": "urn:solid-server:default:JwksHandler",
18+
"@type": "JwksHandler",
19+
"path": "/.well-known/jwks.json",
20+
"generator": {
21+
"@id": "urn:solid-server:default:JwkGenerator"
22+
}
23+
}
24+
}]
25+
}
26+
]
27+
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
{
2+
"@context": [
3+
"https://linkedsoftwaredependencies.org/bundles/npm/@solidlab/uma-css/^0.0.0/components/context.jsonld"
4+
],
5+
"@graph": [
6+
{
7+
"comment": "Replace the DPoP authentication with UMA authentication.",
8+
"@id": "urn:solid-server:override:AccessTokenExtractor",
9+
"@type": "Override",
10+
"overrideInstance": {
11+
"@id": "urn:solid-server:default:AccessTokenExtractor"
12+
},
13+
"overrideParameters": {
14+
"comment": "Extracts information from UMA access tokens.",
15+
"@type": "UmaTokenExtractor",
16+
"client": { "@id": "urn:solid-server:default:UmaClient" },
17+
"targetExtractor": { "@id": "urn:solid-server:default:TargetExtractor" },
18+
"ownerUtil": { "@id": "urn:solid-server:default:OwnerUtil" },
19+
"introspect": false
20+
}
21+
}
22+
]
23+
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
{
2+
"@context": [
3+
"https://linkedsoftwaredependencies.org/bundles/npm/@solidlab/uma-css/^0.0.0/components/context.jsonld"
4+
],
5+
"@graph": [
6+
{
7+
"comment": "Replace WWW-Authenticate metadata writer with the UMA version.",
8+
"@id": "urn:solid-server:override:MetadataWriter_WwwAuth",
9+
"@type": "Override",
10+
"overrideInstance": {
11+
"@id": "urn:solid-server:default:MetadataWriter_WwwAuth"
12+
},
13+
"overrideParameters": {
14+
"comment": "Returns the UMA ticket in case of an unauthorized request.",
15+
"@id": "urn:solid-server:default:MetadataWriter_UmaTicket",
16+
"@type": "UmaTicketMetadataWriter"
17+
}
18+
}
19+
]
20+
}

0 commit comments

Comments
 (0)