@matter/protocol 0.14.1-alpha.0-20250607-a93593303 → 0.15.0-alpha.0-20250612-ddd428561
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/cjs/certificate/AttestationCertificateManager.js +2 -2
- package/dist/cjs/certificate/AttestationCertificateManager.js.map +1 -1
- package/dist/cjs/certificate/CertificateAuthority.d.ts +2 -2
- package/dist/cjs/certificate/CertificateAuthority.d.ts.map +1 -1
- package/dist/cjs/certificate/CertificateAuthority.js +5 -5
- package/dist/cjs/certificate/CertificateAuthority.js.map +1 -1
- package/dist/cjs/certificate/CertificateManager.d.ts +1 -1
- package/dist/cjs/certificate/CertificateManager.d.ts.map +1 -1
- package/dist/cjs/certificate/CertificateManager.js +21 -10
- package/dist/cjs/certificate/CertificateManager.js.map +1 -1
- package/dist/cjs/certificate/CertificationDeclarationManager.d.ts +1 -1
- package/dist/cjs/certificate/DeviceCertification.d.ts +1 -1
- package/dist/cjs/certificate/DeviceCertification.d.ts.map +1 -1
- package/dist/cjs/certificate/DeviceCertification.js +5 -3
- package/dist/cjs/certificate/DeviceCertification.js.map +1 -1
- package/dist/cjs/codec/BtpCodec.d.ts +1 -1
- package/dist/cjs/codec/MessageCodec.d.ts +1 -1
- package/dist/cjs/fabric/Fabric.d.ts +8 -6
- package/dist/cjs/fabric/Fabric.d.ts.map +1 -1
- package/dist/cjs/fabric/Fabric.js +22 -15
- package/dist/cjs/fabric/Fabric.js.map +1 -1
- package/dist/cjs/fabric/FabricAuthority.d.ts +4 -0
- package/dist/cjs/fabric/FabricAuthority.d.ts.map +1 -1
- package/dist/cjs/fabric/FabricAuthority.js +6 -0
- package/dist/cjs/fabric/FabricAuthority.js.map +1 -1
- package/dist/cjs/fabric/FabricManager.d.ts.map +1 -1
- package/dist/cjs/fabric/FabricManager.js +9 -2
- package/dist/cjs/fabric/FabricManager.js.map +1 -1
- package/dist/cjs/fabric/TestFabric.d.ts +30 -0
- package/dist/cjs/fabric/TestFabric.d.ts.map +1 -0
- package/dist/cjs/fabric/TestFabric.js +70 -0
- package/dist/cjs/fabric/TestFabric.js.map +6 -0
- package/dist/cjs/fabric/index.d.ts +1 -0
- package/dist/cjs/fabric/index.d.ts.map +1 -1
- package/dist/cjs/fabric/index.js +1 -0
- package/dist/cjs/fabric/index.js.map +1 -1
- package/dist/cjs/groups/{FabricGroupsManager.d.ts → FabricGroups.d.ts} +2 -2
- package/dist/cjs/groups/FabricGroups.d.ts.map +1 -0
- package/dist/cjs/groups/{FabricGroupsManager.js → FabricGroups.js} +9 -9
- package/dist/cjs/groups/FabricGroups.js.map +6 -0
- package/dist/cjs/groups/KeySets.js +1 -1
- package/dist/cjs/groups/KeySets.js.map +1 -1
- package/dist/cjs/groups/index.d.ts +1 -1
- package/dist/cjs/groups/index.d.ts.map +1 -1
- package/dist/cjs/groups/index.js +1 -1
- package/dist/cjs/groups/index.js.map +1 -1
- package/dist/cjs/interaction/{AccessControlManager.d.ts → FabricAccessControl.d.ts} +12 -7
- package/dist/cjs/interaction/FabricAccessControl.d.ts.map +1 -0
- package/dist/cjs/interaction/{AccessControlManager.js → FabricAccessControl.js} +46 -21
- package/dist/cjs/interaction/FabricAccessControl.js.map +6 -0
- package/dist/cjs/interaction/index.d.ts +1 -1
- package/dist/cjs/interaction/index.d.ts.map +1 -1
- package/dist/cjs/interaction/index.js +1 -1
- package/dist/cjs/interaction/index.js.map +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.js +2 -4
- package/dist/cjs/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/cjs/protocol/DeviceCommissioner.js +1 -1
- package/dist/cjs/protocol/DeviceCommissioner.js.map +1 -1
- package/dist/cjs/protocol/MessageExchange.d.ts +6 -0
- package/dist/cjs/protocol/MessageExchange.d.ts.map +1 -1
- package/dist/cjs/protocol/MessageExchange.js +13 -0
- package/dist/cjs/protocol/MessageExchange.js.map +1 -1
- package/dist/cjs/securechannel/SecureChannelStatusMessageSchema.d.ts +1 -1
- package/dist/cjs/session/NodeSession.js +1 -1
- package/dist/cjs/session/Session.d.ts +1 -1
- package/dist/cjs/session/SessionManager.d.ts.map +1 -1
- package/dist/cjs/session/SessionManager.js +1 -0
- package/dist/cjs/session/SessionManager.js.map +1 -1
- package/dist/cjs/session/case/CaseClient.d.ts.map +1 -1
- package/dist/cjs/session/case/CaseClient.js +34 -30
- package/dist/cjs/session/case/CaseClient.js.map +1 -1
- package/dist/cjs/session/case/CaseMessages.d.ts +8 -8
- package/dist/cjs/session/case/CaseMessages.js +8 -8
- package/dist/cjs/session/case/CaseMessages.js.map +1 -1
- package/dist/cjs/session/case/CaseServer.d.ts.map +1 -1
- package/dist/cjs/session/case/CaseServer.js +26 -23
- package/dist/cjs/session/case/CaseServer.js.map +1 -1
- package/dist/cjs/session/pase/PaseClient.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseClient.js +4 -1
- package/dist/cjs/session/pase/PaseClient.js.map +1 -1
- package/dist/cjs/session/pase/PaseServer.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseServer.js +4 -1
- package/dist/cjs/session/pase/PaseServer.js.map +1 -1
- package/dist/esm/certificate/AttestationCertificateManager.js +2 -2
- package/dist/esm/certificate/AttestationCertificateManager.js.map +1 -1
- package/dist/esm/certificate/CertificateAuthority.d.ts +2 -2
- package/dist/esm/certificate/CertificateAuthority.d.ts.map +1 -1
- package/dist/esm/certificate/CertificateAuthority.js +5 -5
- package/dist/esm/certificate/CertificateAuthority.js.map +1 -1
- package/dist/esm/certificate/CertificateManager.d.ts +1 -1
- package/dist/esm/certificate/CertificateManager.d.ts.map +1 -1
- package/dist/esm/certificate/CertificateManager.js +22 -11
- package/dist/esm/certificate/CertificateManager.js.map +1 -1
- package/dist/esm/certificate/CertificationDeclarationManager.d.ts +1 -1
- package/dist/esm/certificate/DeviceCertification.d.ts +1 -1
- package/dist/esm/certificate/DeviceCertification.d.ts.map +1 -1
- package/dist/esm/certificate/DeviceCertification.js +5 -3
- package/dist/esm/certificate/DeviceCertification.js.map +1 -1
- package/dist/esm/codec/BtpCodec.d.ts +1 -1
- package/dist/esm/codec/MessageCodec.d.ts +1 -1
- package/dist/esm/fabric/Fabric.d.ts +8 -6
- package/dist/esm/fabric/Fabric.d.ts.map +1 -1
- package/dist/esm/fabric/Fabric.js +22 -14
- package/dist/esm/fabric/Fabric.js.map +1 -1
- package/dist/esm/fabric/FabricAuthority.d.ts +4 -0
- package/dist/esm/fabric/FabricAuthority.d.ts.map +1 -1
- package/dist/esm/fabric/FabricAuthority.js +6 -0
- package/dist/esm/fabric/FabricAuthority.js.map +1 -1
- package/dist/esm/fabric/FabricManager.d.ts.map +1 -1
- package/dist/esm/fabric/FabricManager.js +9 -2
- package/dist/esm/fabric/FabricManager.js.map +1 -1
- package/dist/esm/fabric/TestFabric.d.ts +30 -0
- package/dist/esm/fabric/TestFabric.d.ts.map +1 -0
- package/dist/esm/fabric/TestFabric.js +50 -0
- package/dist/esm/fabric/TestFabric.js.map +6 -0
- package/dist/esm/fabric/index.d.ts +1 -0
- package/dist/esm/fabric/index.d.ts.map +1 -1
- package/dist/esm/fabric/index.js +1 -0
- package/dist/esm/fabric/index.js.map +1 -1
- package/dist/esm/groups/{FabricGroupsManager.d.ts → FabricGroups.d.ts} +2 -2
- package/dist/esm/groups/FabricGroups.d.ts.map +1 -0
- package/dist/esm/groups/{FabricGroupsManager.js → FabricGroups.js} +6 -6
- package/dist/esm/groups/FabricGroups.js.map +6 -0
- package/dist/esm/groups/KeySets.js +1 -1
- package/dist/esm/groups/KeySets.js.map +1 -1
- package/dist/esm/groups/index.d.ts +1 -1
- package/dist/esm/groups/index.d.ts.map +1 -1
- package/dist/esm/groups/index.js +1 -1
- package/dist/esm/interaction/{AccessControlManager.d.ts → FabricAccessControl.d.ts} +12 -7
- package/dist/esm/interaction/FabricAccessControl.d.ts.map +1 -0
- package/dist/esm/interaction/{AccessControlManager.js → FabricAccessControl.js} +44 -19
- package/dist/esm/interaction/FabricAccessControl.js.map +6 -0
- package/dist/esm/interaction/index.d.ts +1 -1
- package/dist/esm/interaction/index.d.ts.map +1 -1
- package/dist/esm/interaction/index.js +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.js +2 -4
- package/dist/esm/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/esm/protocol/DeviceCommissioner.js +1 -1
- package/dist/esm/protocol/DeviceCommissioner.js.map +1 -1
- package/dist/esm/protocol/MessageExchange.d.ts +6 -0
- package/dist/esm/protocol/MessageExchange.d.ts.map +1 -1
- package/dist/esm/protocol/MessageExchange.js +13 -0
- package/dist/esm/protocol/MessageExchange.js.map +1 -1
- package/dist/esm/securechannel/SecureChannelStatusMessageSchema.d.ts +1 -1
- package/dist/esm/session/NodeSession.js +1 -1
- package/dist/esm/session/Session.d.ts +1 -1
- package/dist/esm/session/SessionManager.d.ts.map +1 -1
- package/dist/esm/session/SessionManager.js +1 -0
- package/dist/esm/session/SessionManager.js.map +1 -1
- package/dist/esm/session/case/CaseClient.d.ts.map +1 -1
- package/dist/esm/session/case/CaseClient.js +34 -30
- package/dist/esm/session/case/CaseClient.js.map +1 -1
- package/dist/esm/session/case/CaseMessages.d.ts +8 -8
- package/dist/esm/session/case/CaseMessages.js +8 -8
- package/dist/esm/session/case/CaseMessages.js.map +1 -1
- package/dist/esm/session/case/CaseServer.d.ts.map +1 -1
- package/dist/esm/session/case/CaseServer.js +26 -23
- package/dist/esm/session/case/CaseServer.js.map +1 -1
- package/dist/esm/session/pase/PaseClient.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseClient.js +4 -1
- package/dist/esm/session/pase/PaseClient.js.map +1 -1
- package/dist/esm/session/pase/PaseServer.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseServer.js +4 -1
- package/dist/esm/session/pase/PaseServer.js.map +1 -1
- package/package.json +6 -6
- package/src/certificate/AttestationCertificateManager.ts +2 -2
- package/src/certificate/CertificateAuthority.ts +7 -7
- package/src/certificate/CertificateManager.ts +22 -11
- package/src/certificate/DeviceCertification.ts +5 -3
- package/src/fabric/Fabric.ts +24 -15
- package/src/fabric/FabricAuthority.ts +7 -0
- package/src/fabric/FabricManager.ts +9 -2
- package/src/fabric/TestFabric.ts +73 -0
- package/src/fabric/index.ts +1 -0
- package/src/groups/{FabricGroupsManager.ts → FabricGroups.ts} +4 -4
- package/src/groups/KeySets.ts +1 -1
- package/src/groups/index.ts +1 -1
- package/src/interaction/{AccessControlManager.ts → FabricAccessControl.ts} +61 -25
- package/src/interaction/index.ts +1 -1
- package/src/peer/ControllerCommissioningFlow.ts +2 -4
- package/src/protocol/DeviceCommissioner.ts +1 -1
- package/src/protocol/MessageExchange.ts +14 -0
- package/src/session/NodeSession.ts +1 -1
- package/src/session/SessionManager.ts +1 -0
- package/src/session/case/CaseClient.ts +34 -30
- package/src/session/case/CaseMessages.ts +8 -8
- package/src/session/case/CaseServer.ts +27 -23
- package/src/session/pase/PaseClient.ts +4 -1
- package/src/session/pase/PaseServer.ts +4 -1
- package/dist/cjs/groups/FabricGroupsManager.d.ts.map +0 -1
- package/dist/cjs/groups/FabricGroupsManager.js.map +0 -6
- package/dist/cjs/interaction/AccessControlManager.d.ts.map +0 -1
- package/dist/cjs/interaction/AccessControlManager.js.map +0 -6
- package/dist/esm/groups/FabricGroupsManager.d.ts.map +0 -1
- package/dist/esm/groups/FabricGroupsManager.js.map +0 -6
- package/dist/esm/interaction/AccessControlManager.d.ts.map +0 -1
- package/dist/esm/interaction/AccessControlManager.js.map +0 -6
|
@@ -134,6 +134,9 @@ class FabricManager {
|
|
|
134
134
|
this.#fabrics.set(fabricIndex, fabric);
|
|
135
135
|
fabric.addRemoveCallback(async () => this.removeFabric(fabricIndex));
|
|
136
136
|
fabric.persistCallback = (isUpdate = true) => {
|
|
137
|
+
if (!this.#storage) {
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
137
140
|
const persistResult = this.persistFabrics();
|
|
138
141
|
return MaybePromise.then(persistResult, () => {
|
|
139
142
|
if (isUpdate) {
|
|
@@ -156,7 +159,9 @@ class FabricManager {
|
|
|
156
159
|
`Fabric with index ${fabricIndex} cannot be removed because it does not exist.`
|
|
157
160
|
);
|
|
158
161
|
this.#fabrics.delete(fabricIndex);
|
|
159
|
-
|
|
162
|
+
if (this.#storage) {
|
|
163
|
+
await this.persistFabrics();
|
|
164
|
+
}
|
|
160
165
|
await fabric.storage?.clearAll();
|
|
161
166
|
this.#events.deleted.emit(fabric);
|
|
162
167
|
}
|
|
@@ -209,7 +214,9 @@ class FabricManager {
|
|
|
209
214
|
);
|
|
210
215
|
}
|
|
211
216
|
this.#fabrics.set(fabricIndex, fabric);
|
|
212
|
-
|
|
217
|
+
if (this.#storage) {
|
|
218
|
+
await this.persistFabrics();
|
|
219
|
+
}
|
|
213
220
|
this.#events.updated.emit(fabric);
|
|
214
221
|
}
|
|
215
222
|
async revokeFabric(fabricIndex) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/fabric/FabricManager.ts"],
|
|
4
|
-
"mappings": "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
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["FabricAction"]
|
|
6
6
|
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Project CHIP Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { FabricAuthority } from "./FabricAuthority.js";
|
|
7
|
+
import { FabricManager } from "./FabricManager.js";
|
|
8
|
+
/**
|
|
9
|
+
* WARNING: ONLY FOR USE IN PROTECTED TESTING ENVIRONMENTS WHERE SECURITY IS NOT A CONCERN
|
|
10
|
+
*
|
|
11
|
+
* Generate a fabric useful for testing purposes.
|
|
12
|
+
*
|
|
13
|
+
* The properties of the fabric, including crypto matter, are stable with regards to {@link index}.
|
|
14
|
+
*/
|
|
15
|
+
export declare function TestFabric(options?: TestFabric.Options): Promise<import("./Fabric.js").Fabric>;
|
|
16
|
+
export declare namespace TestFabric {
|
|
17
|
+
/**
|
|
18
|
+
* WARNING: ONLY FOR USE IN PROTECTED TESTING ENVIRONMENTS WHERE SECURITY IS NOT A CONCERN
|
|
19
|
+
*
|
|
20
|
+
* Obtain a test authority.
|
|
21
|
+
*
|
|
22
|
+
* Crypto matter is stable with respect to {@link index}.
|
|
23
|
+
*/
|
|
24
|
+
function Authority({ index, fabrics }?: Options): Promise<FabricAuthority>;
|
|
25
|
+
interface Options {
|
|
26
|
+
index?: number;
|
|
27
|
+
fabrics?: FabricManager;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=TestFabric.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TestFabric.d.ts","sourceRoot":"","sources":["../../../src/fabric/TestFabric.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;;;;;GAMG;AACH,wBAAsB,UAAU,CAAC,OAAO,GAAE,UAAU,CAAC,OAAY,yCAIhE;AAED,yBAAiB,UAAU,CAAC;IACxB;;;;;;OAMG;IACH,SAAsB,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,GAAE,OAAY,4BAyB/D;IAED,UAAiB,OAAO;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,aAAa,CAAC;KAC3B;CACJ"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Project CHIP Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { CertificateAuthority } from "#certificate/CertificateAuthority.js";
|
|
7
|
+
import { ImplementationError, nonentropic } from "#general";
|
|
8
|
+
import { FabricIndex, VendorId } from "#types";
|
|
9
|
+
import { FabricAuthority } from "./FabricAuthority.js";
|
|
10
|
+
import { FabricManager } from "./FabricManager.js";
|
|
11
|
+
async function TestFabric(options = {}) {
|
|
12
|
+
const authority = await TestFabric.Authority(options);
|
|
13
|
+
return authority.createFabric();
|
|
14
|
+
}
|
|
15
|
+
((TestFabric2) => {
|
|
16
|
+
async function Authority({ index, fabrics } = {}) {
|
|
17
|
+
if (index === void 0) {
|
|
18
|
+
if (fabrics) {
|
|
19
|
+
index = fabrics.allocateFabricIndex();
|
|
20
|
+
} else {
|
|
21
|
+
index = 1;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return forFabric(index, async () => {
|
|
25
|
+
const authority = new FabricAuthority({
|
|
26
|
+
ca: await CertificateAuthority.create(),
|
|
27
|
+
config: {
|
|
28
|
+
adminFabricLabel: `mock-fabric-${index}`,
|
|
29
|
+
adminVendorId: VendorId(65521),
|
|
30
|
+
fabricIndex: FabricIndex(index)
|
|
31
|
+
},
|
|
32
|
+
fabrics: fabrics ?? new FabricManager()
|
|
33
|
+
});
|
|
34
|
+
const createFabric = authority.createFabric.bind(authority);
|
|
35
|
+
authority.createFabric = () => forFabric(index ?? 1, createFabric);
|
|
36
|
+
return authority;
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
TestFabric2.Authority = Authority;
|
|
40
|
+
})(TestFabric || (TestFabric = {}));
|
|
41
|
+
async function forFabric(index, actor) {
|
|
42
|
+
if (index < 1 || index > 254) {
|
|
43
|
+
throw new ImplementationError("Test fabric indexes must be in the range 1-254");
|
|
44
|
+
}
|
|
45
|
+
return nonentropic(index, actor);
|
|
46
|
+
}
|
|
47
|
+
export {
|
|
48
|
+
TestFabric
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=TestFabric.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/fabric/TestFabric.ts"],
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,4BAA4B;AACrC,SAAS,qBAAqB,mBAAmB;AACjD,SAAS,aAAa,gBAAgB;AACtC,SAAS,uBAAuB;AAChC,SAAS,qBAAqB;AAS9B,eAAsB,WAAW,UAA8B,CAAC,GAAG;AAC/D,QAAM,YAAY,MAAM,WAAW,UAAU,OAAO;AAEpD,SAAO,UAAU,aAAa;AAClC;AAAA,CAEO,CAAUA,gBAAV;AAQH,iBAAsB,UAAU,EAAE,OAAO,QAAQ,IAAa,CAAC,GAAG;AAC9D,QAAI,UAAU,QAAW;AACrB,UAAI,SAAS;AACT,gBAAQ,QAAQ,oBAAoB;AAAA,MACxC,OAAO;AACH,gBAAQ;AAAA,MACZ;AAAA,IACJ;AAEA,WAAO,UAAU,OAAO,YAAY;AAChC,YAAM,YAAY,IAAI,gBAAgB;AAAA,QAClC,IAAI,MAAM,qBAAqB,OAAO;AAAA,QACtC,QAAQ;AAAA,UACJ,kBAAkB,eAAe,KAAK;AAAA,UACtC,eAAe,SAAS,KAAM;AAAA,UAC9B,aAAa,YAAY,KAAK;AAAA,QAClC;AAAA,QACA,SAAS,WAAW,IAAI,cAAc;AAAA,MAC1C,CAAC;AAED,YAAM,eAAe,UAAU,aAAa,KAAK,SAAS;AAC1D,gBAAU,eAAe,MAAM,UAAU,SAAS,GAAG,YAAY;AAEjE,aAAO;AAAA,IACX,CAAC;AAAA,EACL;AAzBA,EAAAA,YAAsB;AAAA,GART;AAyCjB,eAAe,UAAa,OAAe,OAAqC;AAC5E,MAAI,QAAQ,KAAK,QAAQ,KAAK;AAC1B,UAAM,IAAI,oBAAoB,gDAAgD;AAAA,EAClF;AAEA,SAAO,YAAY,OAAO,KAAK;AACnC;",
|
|
5
|
+
"names": ["TestFabric"]
|
|
6
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fabric/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fabric/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC"}
|
package/dist/esm/fabric/index.js
CHANGED
|
@@ -12,7 +12,7 @@ export declare const GROUP_SECURITY_INFO: Uint8Array<ArrayBufferLike>;
|
|
|
12
12
|
/**
|
|
13
13
|
* Class that contains an operational view on the Group Keys for a fabric
|
|
14
14
|
*/
|
|
15
|
-
export declare class
|
|
15
|
+
export declare class FabricGroups {
|
|
16
16
|
#private;
|
|
17
17
|
constructor(fabric: Fabric, storage?: StorageContext);
|
|
18
18
|
set storage(storage: StorageContext);
|
|
@@ -43,4 +43,4 @@ export declare class FabricGroupsManager {
|
|
|
43
43
|
/** Removes a group key set by its id and cleans up the counters and data. */
|
|
44
44
|
removeGroupKeySet(groupKeySetId: number): Promise<boolean>;
|
|
45
45
|
}
|
|
46
|
-
//# sourceMappingURL=
|
|
46
|
+
//# sourceMappingURL=FabricGroups.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FabricGroups.d.ts","sourceRoot":"","sources":["../../../src/groups/FabricGroups.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAiD,cAAc,EAAE,MAAM,UAAU,CAAC;AACnG,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAGjC,eAAO,MAAM,mBAAmB,6BAAoC,CAAC;AAErE;;GAEG;AACH,qBAAa,YAAY;;gBAQT,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc;IA6BpD,IAAI,OAAO,CAAC,OAAO,EAAE,cAAc,EAElC;IAED,0DAA0D;IAC1D,IAAI,OAAO,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAExC;IAED,IAAI,SAAS,IAAI,cAAc,CAE9B;IAED,kFAAkF;IAClF,IAAI,QAAQ;;;SAEX;IAED,IAAI,aAAa,IAAI,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAE7C;IAED,IAAI,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,EAE1C;IAED,IAAI,SAAS,oDAEZ;IAED,kBAAkB,CAAC,OAAO,EAAE,OAAO;;;;;;IAInC,eAAe,CAAC,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM;IAI7C,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM;IAgB7C;;;OAGG;IACG,kBAAkB,CAAC,WAAW,EAAE,WAAW;IA8BjD,6EAA6E;IACvE,iBAAiB,CAAC,aAAa,EAAE,MAAM;CAoBhD"}
|
|
@@ -8,7 +8,7 @@ import { KeySets } from "#groups/KeySets.js";
|
|
|
8
8
|
import { MessagingState } from "#groups/MessagingState.js";
|
|
9
9
|
import { Groups } from "./Groups.js";
|
|
10
10
|
const GROUP_SECURITY_INFO = Bytes.fromString("GroupKey v1.0");
|
|
11
|
-
class
|
|
11
|
+
class FabricGroups {
|
|
12
12
|
#fabric;
|
|
13
13
|
#groups;
|
|
14
14
|
#messagingState;
|
|
@@ -96,9 +96,9 @@ class FabricGroupsManager {
|
|
|
96
96
|
}
|
|
97
97
|
await this.#cleanUpCounters(groupKeySetId);
|
|
98
98
|
const operationalId = this.#fabric.operationalId;
|
|
99
|
-
const operationalEpochKey0 = await Crypto.
|
|
100
|
-
const operationalEpochKey1 = epochKey1 !== null ? await Crypto.
|
|
101
|
-
const operationalEpochKey2 = epochKey2 !== null ? await Crypto.
|
|
99
|
+
const operationalEpochKey0 = await Crypto.createHkdfKey(epochKey0, operationalId, GROUP_SECURITY_INFO);
|
|
100
|
+
const operationalEpochKey1 = epochKey1 !== null ? await Crypto.createHkdfKey(epochKey1, operationalId, GROUP_SECURITY_INFO) : null;
|
|
101
|
+
const operationalEpochKey2 = epochKey2 !== null ? await Crypto.createHkdfKey(epochKey2, operationalId, GROUP_SECURITY_INFO) : null;
|
|
102
102
|
this.#keySets.add({
|
|
103
103
|
...groupKeySet,
|
|
104
104
|
operationalEpochKey0,
|
|
@@ -129,7 +129,7 @@ class FabricGroupsManager {
|
|
|
129
129
|
}
|
|
130
130
|
}
|
|
131
131
|
export {
|
|
132
|
-
|
|
132
|
+
FabricGroups,
|
|
133
133
|
GROUP_SECURITY_INFO
|
|
134
134
|
};
|
|
135
|
-
//# sourceMappingURL=
|
|
135
|
+
//# sourceMappingURL=FabricGroups.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/groups/FabricGroups.ts"],
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAmB,OAAO,QAAQ,eAAe,uBAAuC;AACxF,SAAsB,eAAkC;AACxD,SAAS,sBAAsB;AAE/B,SAAS,cAAc;AAEhB,MAAM,sBAAsB,MAAM,WAAW,eAAe;AAK5D,MAAM,aAAa;AAAA,EACtB;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA,WAAW,IAAI,QAAQ;AAAA,EAEvB,YAAY,QAAgB,SAA0B;AAClD,SAAK,UAAU;AACf,SAAK,UAAU,IAAI,OAAO,QAAQ,KAAK,QAAQ;AAC/C,SAAK,kBAAkB,IAAI,eAAe,OAAO;AAIjD,SAAK,SAAS,IAAI;AAAA,MACd,eAAe;AAAA,MACf,WAAW,OAAO;AAAA,MAClB,sBAAsB,OAAO;AAAA,MAC7B,iBAAiB;AAAA;AAAA,MACjB,iBAAiB;AAAA,MACjB,WAAW;AAAA,MACX,sBAAsB;AAAA,MACtB,iBAAiB;AAAA,MACjB,iBAAiB;AAAA,MACjB,WAAW;AAAA,MACX,sBAAsB;AAAA,MACtB,iBAAiB;AAAA,MACjB,iBAAiB;AAAA,MACjB,wBAAwB;AAAA;AAAA,MACxB,yBAAyB;AAAA;AAAA,IAC7B,CAAC;AACD,QAAI,YAAY,QAAW;AACvB,WAAK,UAAU;AAAA,IACnB;AAAA,EACJ;AAAA,EAEA,IAAI,QAAQ,SAAyB;AACjC,SAAK,gBAAgB,UAAU;AAAA,EACnC;AAAA;AAAA,EAGA,IAAI,UAAsC;AACtC,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,YAA4B;AAC5B,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA,EAGA,IAAI,WAAW;AACX,WAAO,KAAK,SAAS;AAAA,EACzB;AAAA,EAEA,IAAI,gBAA2C;AAC3C,WAAO,KAAK,QAAQ;AAAA,EACxB;AAAA,EAEA,IAAI,cAAc,KAA2B;AACzC,SAAK,QAAQ,QAAQ;AAAA,EACzB;AAAA,EAEA,IAAI,YAAY;AACZ,WAAO,KAAK,QAAQ;AAAA,EACxB;AAAA,EAEA,mBAAmB,SAAkB;AACjC,WAAO,KAAK,QAAQ,gBAAgB,OAAO;AAAA,EAC/C;AAAA,EAEA,gBAAgB,IAAa,UAAkB;AAC3C,WAAO,KAAK,QAAQ,gBAAgB,IAAI,QAAQ;AAAA,EACpD;AAAA,EAEA,oBAAoB,SAA0B;AAC1C,WAAO,KAAK,QAAQ,iBAAiB,OAAO;AAAA,EAChD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAkBA,MAAM,mBAAmB,aAA0B;AAC/C,UAAM,EAAE,eAAe,WAAW,WAAW,UAAU,IAAI;AAE3D,QAAI,cAAc,MAAM;AACpB,YAAM,IAAI,gBAAgB,uBAAuB;AAAA,IACrD;AAGA,UAAM,KAAK,iBAAiB,aAAa;AAGzC,UAAM,gBAAgB,KAAK,QAAQ;AACnC,UAAM,uBAAuB,MAAM,OAAO,cAAc,WAAW,eAAe,mBAAmB;AACrG,UAAM,uBACF,cAAc,OAAO,MAAM,OAAO,cAAc,WAAW,eAAe,mBAAmB,IAAI;AACrG,UAAM,uBACF,cAAc,OAAO,MAAM,OAAO,cAAc,WAAW,eAAe,mBAAmB,IAAI;AACrG,SAAK,SAAS,IAAI;AAAA,MACd,GAAG;AAAA,MACH;AAAA,MACA,iBAAiB,MAAM,KAAK,SAAS,iBAAiB,oBAAoB;AAAA,MAC1E;AAAA,MACA,iBACI,yBAAyB,OAAO,MAAM,KAAK,SAAS,iBAAiB,oBAAoB,IAAI;AAAA,MACjG;AAAA,MACA,iBACI,yBAAyB,OAAO,MAAM,KAAK,SAAS,iBAAiB,oBAAoB,IAAI;AAAA,IACrG,CAAC;AAAA,EACL;AAAA;AAAA,EAGA,MAAM,kBAAkB,eAAuB;AAC3C,QAAI,kBAAkB,GAAG;AACrB,YAAM,IAAI,cAAc,oCAAoC;AAAA,IAChE;AACA,UAAM,KAAK,iBAAiB,eAAe,IAAI;AAC/C,WAAO,KAAK,SAAS,OAAO,iBAAiB,aAAa;AAAA,EAC9D;AAAA;AAAA,EAGA,MAAM,iBAAiB,eAAuB,YAAY,OAAO;AAC7D,QAAI,KAAK,SAAS,MAAM,aAAa,MAAM,QAAW;AAClD;AAAA,IACJ;AAGA,UAAM,kBAAkB,KAAK,SAAS,aAAa,aAAa;AAChE,eAAW,EAAE,IAAI,KAAK,iBAAiB;AACnC,YAAM,KAAK,gBAAgB,cAAc,KAAK,SAAS;AAAA,IAC3D;AAAA,EACJ;AACJ;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -121,7 +121,7 @@ class KeySets extends BasicSet {
|
|
|
121
121
|
}
|
|
122
122
|
/** Calculates a group session id based on the operational group key. */
|
|
123
123
|
async sessionIdFromKey(operationalGroupKey) {
|
|
124
|
-
const groupKeyHash = await Crypto.
|
|
124
|
+
const groupKeyHash = await Crypto.createHkdfKey(operationalGroupKey, new Uint8Array(), GROUP_KEY_INFO, 2);
|
|
125
125
|
return new DataReader(groupKeyHash).readUInt16();
|
|
126
126
|
}
|
|
127
127
|
/**
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/groups/KeySets.ts"],
|
|
4
|
-
"mappings": "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
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/groups/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/groups/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC"}
|
package/dist/esm/groups/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { AccessControl } from "#clusters/access-control";
|
|
2
|
+
import { Fabric } from "#fabric/Fabric.js";
|
|
2
3
|
import { AccessLevel } from "#model";
|
|
3
4
|
import { ClusterId, DeviceTypeId, EndpointNumber, FabricIndex, StatusResponseError, SubjectId } from "#types";
|
|
4
5
|
import { AccessControl as AccessControlContext } from "../action/server/AccessControl.js";
|
|
@@ -25,19 +26,23 @@ export declare class AccessDeniedError extends StatusResponseError {
|
|
|
25
26
|
constructor(message?: string);
|
|
26
27
|
}
|
|
27
28
|
/**
|
|
28
|
-
* Implements Access Control Logic as per Matter Specification @see {@link MatterSpecification.v12.Core} § 6.6.5.2.
|
|
29
|
+
* Implements Access Control Logic For one fabric as per Matter Specification @see {@link MatterSpecification.v12.Core} § 6.6.5.2.
|
|
29
30
|
*/
|
|
30
|
-
export declare class
|
|
31
|
+
export declare class FabricAccessControl {
|
|
31
32
|
#private;
|
|
32
|
-
constructor(
|
|
33
|
+
constructor(fabric?: Fabric);
|
|
34
|
+
set fabricIndex(fabricIndex: FabricIndex);
|
|
33
35
|
/**
|
|
34
36
|
* Public method used to update the Access Control List on changes.
|
|
35
37
|
*/
|
|
36
|
-
|
|
38
|
+
set aclList(aclList: AccessControl.AccessControlEntry[]);
|
|
39
|
+
set extensionEntryAccessCheck(func: (aclList: AclList, aclEntry: AclEntry, subjectDesc: IncomingSubjectDescriptor, endpoint: AclEndpointContext, clusterId: ClusterId) => boolean);
|
|
37
40
|
/**
|
|
38
|
-
*
|
|
41
|
+
* Implements the access control check for the given context, location and endpoint and is called by the
|
|
42
|
+
* InteractionServer. The method returns the list of granted Access privileges for the given context, location and
|
|
43
|
+
* endpoint.
|
|
39
44
|
*/
|
|
40
|
-
|
|
45
|
+
accessLevelsFor(context: AccessControlContext.Session, location: AccessControlContext.Location, endpoint?: AclEndpointContext): AccessLevel[];
|
|
41
46
|
}
|
|
42
47
|
export {};
|
|
43
|
-
//# sourceMappingURL=
|
|
48
|
+
//# sourceMappingURL=FabricAccessControl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FabricAccessControl.d.ts","sourceRoot":"","sources":["../../../src/interaction/FabricAccessControl.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAEH,SAAS,EACT,YAAY,EACZ,cAAc,EACd,WAAW,EAGX,mBAAmB,EACnB,SAAS,EACZ,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,aAAa,IAAI,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAI1F,MAAM,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,WAAW,CAAC,GAAG;IACzE,SAAS,EAAE,WAAW,CAAC;CAC1B,CAAC;AACF,MAAM,MAAM,OAAO,GAAG,QAAQ,EAAE,CAAC;AAEjC,MAAM,MAAM,iBAAiB,GAAG,aAAa,CAAC,sBAAsB,CAAC;AACrE,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,EAAE,CAAC;AAEnD,MAAM,MAAM,kBAAkB,GAAG;IAC7B,EAAE,EAAE,cAAc,CAAC;IACnB,WAAW,EAAE,YAAY,EAAE,CAAC;CAC/B,CAAC;AAUF,aAAK,YAAY;IACb,IAAI,IAAI;CACX;AAED,MAAM,MAAM,yBAAyB,GAAG;IACpC,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,aAAa,CAAC,0BAA0B,GAAG,YAAY,CAAC;IAClE,QAAQ,EAAE,SAAS,EAAE,CAAC;IACtB,WAAW,EAAE,WAAW,CAAC;CAC5B,CAAC;AAEF,qBAAa,iBAAkB,SAAQ,mBAAmB;gBAC1C,OAAO,CAAC,EAAE,MAAM;CAG/B;AAED;;GAEG;AACH,qBAAa,mBAAmB;;gBAWhB,MAAM,CAAC,EAAE,MAAM;IAU3B,IAAI,WAAW,CAAC,WAAW,EAAE,WAAW,EAKvC;IAED;;OAEG;IACH,IAAI,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC,kBAAkB,EAAE,EAMtD;IAED,IAAI,yBAAyB,CACzB,IAAI,EAAE,CACF,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,yBAAyB,EACtC,QAAQ,EAAE,kBAAkB,EAC5B,SAAS,EAAE,SAAS,KACnB,OAAO,EAGf;IAED;;;;OAIG;IACH,eAAe,CACX,OAAO,EAAE,oBAAoB,CAAC,OAAO,EACrC,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EACvC,QAAQ,CAAC,EAAE,kBAAkB,GAC9B,WAAW,EAAE;CAwOnB"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { Subject } from "#action/server/Subject.js";
|
|
7
7
|
import { AccessControl } from "#clusters/access-control";
|
|
8
|
-
import { MatterFlowError } from "#general";
|
|
8
|
+
import { InternalError, Logger, MatterFlowError } from "#general";
|
|
9
9
|
import { AccessLevel } from "#model";
|
|
10
10
|
import {
|
|
11
11
|
CaseAuthenticatedTag,
|
|
@@ -14,6 +14,7 @@ import {
|
|
|
14
14
|
StatusCode,
|
|
15
15
|
StatusResponseError
|
|
16
16
|
} from "#types";
|
|
17
|
+
const logger = Logger.get("FabricAccessControlManager");
|
|
17
18
|
const ImplicitDefaultPaseAclEntry = {
|
|
18
19
|
fabricIndex: FabricIndex.NO_FABRIC,
|
|
19
20
|
// not fabric-specific
|
|
@@ -32,26 +33,52 @@ class AccessDeniedError extends StatusResponseError {
|
|
|
32
33
|
super(message ?? "Unauthorized", StatusCode.UnsupportedAccess);
|
|
33
34
|
}
|
|
34
35
|
}
|
|
35
|
-
class
|
|
36
|
-
#
|
|
36
|
+
class FabricAccessControl {
|
|
37
|
+
#fabricIndex;
|
|
38
|
+
#aclList = [];
|
|
37
39
|
#extensionEntryAccessCheck = () => true;
|
|
38
|
-
constructor(
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
this.#
|
|
40
|
+
constructor(fabric) {
|
|
41
|
+
if (fabric === void 0) {
|
|
42
|
+
this.#fabricIndex = FabricIndex.NO_FABRIC;
|
|
43
|
+
this.#aclList.push(ImplicitDefaultPaseAclEntry);
|
|
44
|
+
} else {
|
|
45
|
+
this.#fabricIndex = fabric.fabricIndex;
|
|
42
46
|
}
|
|
43
47
|
}
|
|
48
|
+
set fabricIndex(fabricIndex) {
|
|
49
|
+
if (this.#fabricIndex === void 0 || this.#fabricIndex === FabricIndex.NO_FABRIC) {
|
|
50
|
+
this.#fabricIndex = fabricIndex;
|
|
51
|
+
}
|
|
52
|
+
throw new InternalError("Can not overwrite FabricIndex");
|
|
53
|
+
}
|
|
44
54
|
/**
|
|
45
55
|
* Public method used to update the Access Control List on changes.
|
|
46
56
|
*/
|
|
47
|
-
|
|
57
|
+
set aclList(aclList) {
|
|
58
|
+
if (aclList.some(({ fabricIndex }) => fabricIndex !== this.#fabricIndex)) {
|
|
59
|
+
throw new InternalError("ACL entries must match the fabric index of the manager");
|
|
60
|
+
}
|
|
48
61
|
this.#aclList = [...aclList];
|
|
62
|
+
logger.info("ACL List updated for FabricIndex ", this.#fabricIndex, this.#aclList);
|
|
63
|
+
}
|
|
64
|
+
set extensionEntryAccessCheck(func) {
|
|
65
|
+
this.#extensionEntryAccessCheck = func;
|
|
49
66
|
}
|
|
50
67
|
/**
|
|
51
|
-
*
|
|
68
|
+
* Implements the access control check for the given context, location and endpoint and is called by the
|
|
69
|
+
* InteractionServer. The method returns the list of granted Access privileges for the given context, location and
|
|
70
|
+
* endpoint.
|
|
52
71
|
*/
|
|
53
|
-
|
|
54
|
-
|
|
72
|
+
accessLevelsFor(context, location, endpoint) {
|
|
73
|
+
if (location.cluster === void 0) {
|
|
74
|
+
logger.warn("Access control check without cluster, returning View access level");
|
|
75
|
+
return [AccessLevel.View];
|
|
76
|
+
}
|
|
77
|
+
if (endpoint === void 0) {
|
|
78
|
+
logger.warn("Access control check without endpoint, returning View access level");
|
|
79
|
+
return [AccessLevel.View];
|
|
80
|
+
}
|
|
81
|
+
return this.#getGrantedPrivileges(context, endpoint, location.cluster);
|
|
55
82
|
}
|
|
56
83
|
/**
|
|
57
84
|
* Subjects must match exactly, or both are CAT with matching CAT ID and acceptable CAT version
|
|
@@ -96,16 +123,14 @@ class AccessControlManager {
|
|
|
96
123
|
/**
|
|
97
124
|
* Determines the granted privileges for the given session, endpoint, and cluster ID and returns them.
|
|
98
125
|
*/
|
|
99
|
-
getGrantedPrivileges(context, endpoint, clusterId) {
|
|
126
|
+
#getGrantedPrivileges(context, endpoint, clusterId) {
|
|
100
127
|
const endpointId = endpoint.id;
|
|
101
|
-
const fabric = context.fabric;
|
|
102
128
|
const subjectDesc = this.#getIsdFromMessage(context);
|
|
103
|
-
const acl = fabric ? this.#getAccessControlEntriesForFabric(fabric) : [ImplicitDefaultPaseAclEntry];
|
|
104
129
|
const grantedPrivileges = /* @__PURE__ */ new Set();
|
|
105
130
|
if (subjectDesc.authMode === AccessControl.AccessControlEntryAuthMode.Pase && subjectDesc.isCommissioning) {
|
|
106
131
|
this.#addGrantedPrivilege(grantedPrivileges, AccessLevel.Administer);
|
|
107
132
|
}
|
|
108
|
-
for (const aclEntry of
|
|
133
|
+
for (const aclEntry of this.#aclList) {
|
|
109
134
|
if (grantedPrivileges.has(AccessLevel.Administer)) {
|
|
110
135
|
break;
|
|
111
136
|
}
|
|
@@ -163,7 +188,7 @@ class AccessControlManager {
|
|
|
163
188
|
continue;
|
|
164
189
|
}
|
|
165
190
|
}
|
|
166
|
-
if (!this.#extensionEntryAccessCheck(
|
|
191
|
+
if (!this.#extensionEntryAccessCheck(this.#aclList, aclEntry, subjectDesc, endpoint, clusterId)) {
|
|
167
192
|
continue;
|
|
168
193
|
}
|
|
169
194
|
this.#addGrantedPrivilege(grantedPrivileges, aclEntry.privilege);
|
|
@@ -219,7 +244,7 @@ class AccessControlManager {
|
|
|
219
244
|
}
|
|
220
245
|
}
|
|
221
246
|
export {
|
|
222
|
-
|
|
223
|
-
|
|
247
|
+
AccessDeniedError,
|
|
248
|
+
FabricAccessControl
|
|
224
249
|
};
|
|
225
|
-
//# sourceMappingURL=
|
|
250
|
+
//# sourceMappingURL=FabricAccessControl.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/interaction/FabricAccessControl.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["AuthModeNone"]
|
|
6
|
+
}
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
export * from "./AccessControlManager.js";
|
|
7
6
|
export * from "./AttributeDataDecoder.js";
|
|
8
7
|
export * from "./AttributeDataEncoder.js";
|
|
9
8
|
export * from "./EventDataDecoder.js";
|
|
9
|
+
export * from "./FabricAccessControl.js";
|
|
10
10
|
export * from "./InteractionClient.js";
|
|
11
11
|
export * from "./InteractionMessenger.js";
|
|
12
12
|
export * from "./Subscription.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/interaction/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/interaction/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC"}
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
export * from "./AccessControlManager.js";
|
|
7
6
|
export * from "./AttributeDataDecoder.js";
|
|
8
7
|
export * from "./AttributeDataEncoder.js";
|
|
9
8
|
export * from "./EventDataDecoder.js";
|
|
9
|
+
export * from "./FabricAccessControl.js";
|
|
10
10
|
export * from "./InteractionClient.js";
|
|
11
11
|
export * from "./InteractionMessenger.js";
|
|
12
12
|
export * from "./Subscription.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ControllerCommissioningFlow.d.ts","sourceRoot":"","sources":["../../../src/peer/ControllerCommissioningFlow.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ControllerCommissioningFlow.d.ts","sourceRoot":"","sources":["../../../src/peer/ControllerCommissioningFlow.ts"],"names":[],"mappings":"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"}
|
|
@@ -941,10 +941,8 @@ class ControllerCommissioningFlow {
|
|
|
941
941
|
// Assume concurrent connections are supported if not know (which should not be the case when we came here)
|
|
942
942
|
isConcurrentFlow
|
|
943
943
|
);
|
|
944
|
-
} catch (
|
|
945
|
-
|
|
946
|
-
commError.cause = error;
|
|
947
|
-
throw commError;
|
|
944
|
+
} catch (cause) {
|
|
945
|
+
throw new OperativeConnectionFailedError("Operative reconnection with device failed", { cause });
|
|
948
946
|
}
|
|
949
947
|
reArmFailsafeInterval.stop();
|
|
950
948
|
if (transitionResult === void 0) {
|