@sphereon/ssi-sdk.siopv2-oid4vp-rp-auth 0.33.0 → 0.33.1-feature.vcdm2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/RPInstance.js +95 -117
- package/dist/RPInstance.js.map +1 -1
- package/dist/agent/SIOPv2RP.js +207 -231
- package/dist/agent/SIOPv2RP.js.map +1 -1
- package/dist/functions.js +166 -190
- package/dist/functions.js.map +1 -1
- package/dist/index.js +3 -21
- package/dist/index.js.map +1 -1
- package/dist/types/ISIOPv2RP.js +2 -5
- package/dist/types/ISIOPv2RP.js.map +1 -1
- package/package.json +11 -11
package/dist/RPInstance.js
CHANGED
|
@@ -1,35 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.RPInstance = void 0;
|
|
13
|
-
const functions_1 = require("./functions");
|
|
14
|
-
const uuid_1 = require("uuid");
|
|
15
|
-
const ssi_sdk_ext_identifier_resolution_1 = require("@sphereon/ssi-sdk-ext.identifier-resolution");
|
|
16
|
-
class RPInstance {
|
|
1
|
+
import { createRPBuilder, getRequestVersion, getSigningAlgo } from './functions';
|
|
2
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
3
|
+
import { ensureManagedIdentifierResult, isManagedIdentifierDidResult, isManagedIdentifierX5cResult, } from '@sphereon/ssi-sdk-ext.identifier-resolution';
|
|
4
|
+
export class RPInstance {
|
|
5
|
+
_rp;
|
|
6
|
+
_pexOptions;
|
|
7
|
+
_rpOptions;
|
|
17
8
|
constructor({ rpOpts, pexOpts }) {
|
|
18
9
|
this._rpOptions = rpOpts;
|
|
19
10
|
this._pexOptions = pexOpts;
|
|
20
11
|
}
|
|
21
|
-
get(context) {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
return this._rp;
|
|
32
|
-
});
|
|
12
|
+
async get(context) {
|
|
13
|
+
if (!this._rp) {
|
|
14
|
+
const builder = await createRPBuilder({
|
|
15
|
+
rpOpts: this._rpOptions,
|
|
16
|
+
pexOpts: this._pexOptions,
|
|
17
|
+
context,
|
|
18
|
+
});
|
|
19
|
+
this._rp = builder.build();
|
|
20
|
+
}
|
|
21
|
+
return this._rp;
|
|
33
22
|
}
|
|
34
23
|
get rpOptions() {
|
|
35
24
|
return this._rpOptions;
|
|
@@ -41,99 +30,88 @@ class RPInstance {
|
|
|
41
30
|
return this.definitionId !== undefined;
|
|
42
31
|
}
|
|
43
32
|
get definitionId() {
|
|
44
|
-
|
|
45
|
-
return (_a = this.pexOptions) === null || _a === void 0 ? void 0 : _a.definitionId;
|
|
33
|
+
return this.pexOptions?.definitionId;
|
|
46
34
|
}
|
|
47
|
-
getPresentationDefinition(context) {
|
|
48
|
-
return
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
})
|
|
55
|
-
: undefined;
|
|
56
|
-
});
|
|
35
|
+
async getPresentationDefinition(context) {
|
|
36
|
+
return this.definitionId
|
|
37
|
+
? await context.agent.pexStoreGetDefinition({
|
|
38
|
+
definitionId: this.definitionId,
|
|
39
|
+
tenantId: this.pexOptions?.tenantId,
|
|
40
|
+
})
|
|
41
|
+
: undefined;
|
|
57
42
|
}
|
|
58
|
-
createAuthorizationRequestURI(createArgs, context) {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
if (!resolution.issuer) {
|
|
72
|
-
return Promise.reject('missing issuer in idOpts');
|
|
73
|
-
}
|
|
74
|
-
jwtIssuer = {
|
|
75
|
-
issuer: resolution.issuer,
|
|
76
|
-
x5c: resolution.x5c,
|
|
77
|
-
method: 'x5c',
|
|
78
|
-
alg: (0, functions_1.getSigningAlgo)(resolution.key.type),
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
else {
|
|
82
|
-
return Promise.reject(Error(`JWT issuer method ${resolution.method} not yet supported`));
|
|
43
|
+
async createAuthorizationRequestURI(createArgs, context) {
|
|
44
|
+
const { correlationId, claims, requestByReferenceURI, responseURI, responseURIType } = createArgs;
|
|
45
|
+
const nonce = createArgs.nonce ?? uuidv4();
|
|
46
|
+
const state = createArgs.state ?? correlationId;
|
|
47
|
+
let jwtIssuer;
|
|
48
|
+
const idOpts = this.rpOptions.identifierOpts.idOpts;
|
|
49
|
+
const resolution = await ensureManagedIdentifierResult(idOpts, context);
|
|
50
|
+
if (isManagedIdentifierDidResult(resolution)) {
|
|
51
|
+
jwtIssuer = { didUrl: resolution.kid, method: 'did', alg: getSigningAlgo(resolution.key.type) };
|
|
52
|
+
}
|
|
53
|
+
else if (isManagedIdentifierX5cResult(resolution)) {
|
|
54
|
+
if (!resolution.issuer) {
|
|
55
|
+
return Promise.reject('missing issuer in idOpts');
|
|
83
56
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
57
|
+
jwtIssuer = {
|
|
58
|
+
issuer: resolution.issuer,
|
|
59
|
+
x5c: resolution.x5c,
|
|
60
|
+
method: 'x5c',
|
|
61
|
+
alg: getSigningAlgo(resolution.key.type),
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
return Promise.reject(Error(`JWT issuer method ${resolution.method} not yet supported`));
|
|
66
|
+
}
|
|
67
|
+
return await this.get(context).then((rp) => rp.createAuthorizationRequestURI({
|
|
68
|
+
version: getRequestVersion(this.rpOptions),
|
|
69
|
+
correlationId,
|
|
70
|
+
nonce,
|
|
71
|
+
state,
|
|
72
|
+
claims,
|
|
73
|
+
requestByReferenceURI,
|
|
74
|
+
responseURI,
|
|
75
|
+
responseURIType,
|
|
76
|
+
jwtIssuer,
|
|
77
|
+
}));
|
|
96
78
|
}
|
|
97
|
-
createAuthorizationRequest(createArgs, context) {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
jwtIssuer,
|
|
134
|
-
}));
|
|
135
|
-
});
|
|
79
|
+
async createAuthorizationRequest(createArgs, context) {
|
|
80
|
+
const { correlationId, claims, requestByReferenceURI, responseURI, responseURIType } = createArgs;
|
|
81
|
+
const nonce = createArgs.nonce ?? uuidv4();
|
|
82
|
+
const state = createArgs.state ?? correlationId;
|
|
83
|
+
const idOpts = this.rpOptions.identifierOpts.idOpts;
|
|
84
|
+
const resolution = await ensureManagedIdentifierResult(idOpts, context);
|
|
85
|
+
let jwtIssuer;
|
|
86
|
+
if (isManagedIdentifierX5cResult(resolution) && resolution.issuer) {
|
|
87
|
+
jwtIssuer = {
|
|
88
|
+
method: resolution.method,
|
|
89
|
+
alg: getSigningAlgo(resolution.key.type),
|
|
90
|
+
x5c: resolution.x5c,
|
|
91
|
+
issuer: resolution.issuer,
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
else if (isManagedIdentifierDidResult(resolution)) {
|
|
95
|
+
jwtIssuer = {
|
|
96
|
+
method: resolution.method,
|
|
97
|
+
alg: getSigningAlgo(resolution.key.type),
|
|
98
|
+
didUrl: resolution.did,
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
return Promise.reject(Error('Only did & x5c supported at present'));
|
|
103
|
+
}
|
|
104
|
+
return await this.get(context).then((rp) => rp.createAuthorizationRequest({
|
|
105
|
+
version: getRequestVersion(this.rpOptions),
|
|
106
|
+
correlationId,
|
|
107
|
+
nonce,
|
|
108
|
+
state,
|
|
109
|
+
claims,
|
|
110
|
+
requestByReferenceURI,
|
|
111
|
+
responseURIType,
|
|
112
|
+
responseURI,
|
|
113
|
+
jwtIssuer,
|
|
114
|
+
}));
|
|
136
115
|
}
|
|
137
116
|
}
|
|
138
|
-
exports.RPInstance = RPInstance;
|
|
139
117
|
//# sourceMappingURL=RPInstance.js.map
|
package/dist/RPInstance.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RPInstance.js","sourceRoot":"","sources":["../src/RPInstance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RPInstance.js","sourceRoot":"","sources":["../src/RPInstance.ts"],"names":[],"mappings":"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"}
|