@thirdweb-dev/service-utils 0.0.0-dev-5a2d8b2-20230714182930 → 0.0.0-dev-5d07f9d-20230714193021
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/cf-worker/dist/thirdweb-dev-service-utils-cf-worker.cjs.dev.js +1 -1
- package/cf-worker/dist/thirdweb-dev-service-utils-cf-worker.cjs.prod.js +1 -1
- package/cf-worker/dist/thirdweb-dev-service-utils-cf-worker.esm.js +1 -1
- package/dist/declarations/src/core/authorize/index.d.ts +1 -1
- package/dist/declarations/src/core/authorize/index.d.ts.map +1 -1
- package/dist/declarations/src/core/types.d.ts +1 -1
- package/dist/declarations/src/core/types.d.ts.map +1 -1
- package/dist/{index-5476722b.esm.js → index-1125bae0.esm.js} +6 -5
- package/dist/{index-175beb0e.cjs.prod.js → index-bc2b86a5.cjs.prod.js} +6 -5
- package/dist/{index-c32e136a.cjs.dev.js → index-ded83ecc.cjs.dev.js} +6 -5
- package/node/dist/thirdweb-dev-service-utils-node.cjs.dev.js +1 -1
- package/node/dist/thirdweb-dev-service-utils-node.cjs.prod.js +1 -1
- package/node/dist/thirdweb-dev-service-utils-node.esm.js +1 -1
- package/package.json +1 -1
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
|
-
var index = require('../../dist/index-
|
5
|
+
var index = require('../../dist/index-ded83ecc.cjs.dev.js');
|
6
6
|
var services = require('../../dist/services-a3f36057.cjs.dev.js');
|
7
7
|
|
8
8
|
const DEFAULT_CACHE_TTL_SECONDS = 60;
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
|
-
var index = require('../../dist/index-
|
5
|
+
var index = require('../../dist/index-bc2b86a5.cjs.prod.js');
|
6
6
|
var services = require('../../dist/services-9e185105.cjs.prod.js');
|
7
7
|
|
8
8
|
const DEFAULT_CACHE_TTL_SECONDS = 60;
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { a as authorize } from '../../dist/index-
|
1
|
+
import { a as authorize } from '../../dist/index-1125bae0.esm.js';
|
2
2
|
export { b as SERVICES, S as SERVICE_DEFINITIONS, a as SERVICE_NAMES, g as getServiceByName } from '../../dist/services-86283509.esm.js';
|
3
3
|
|
4
4
|
const DEFAULT_CACHE_TTL_SECONDS = 60;
|
@@ -6,7 +6,7 @@ export type AuthorizationInput = {
|
|
6
6
|
origin: string | null;
|
7
7
|
bundleId: string | null;
|
8
8
|
secretKeyHash: string | null;
|
9
|
-
targetAddress?: string
|
9
|
+
targetAddress?: string;
|
10
10
|
};
|
11
11
|
type CacheOptions = {
|
12
12
|
get: (clientId: string) => Promise<string | null>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"../../../../../src/core/authorize","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,iBAAiB,EAElB,kBAAe;AAGhB,OAAO,EAAE,mBAAmB,EAAE,mBAAgB;AAE9C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"../../../../../src/core/authorize","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,iBAAiB,EAElB,kBAAe;AAGhB,OAAO,EAAE,mBAAmB,EAAE,mBAAgB;AAE9C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,KAAK,YAAY,GAAG;IAClB,GAAG,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAClD,GAAG,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACtE,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AASF,wBAAsB,SAAS,CAC7B,QAAQ,EAAE,kBAAkB,EAC5B,aAAa,EAAE,iBAAiB,EAChC,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,mBAAmB,CAAC,CAoH9B"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"../../../../src/core","sources":["types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG;IAE1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,aAAa,CAAC,EAAE,MAAM,
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"../../../../src/core","sources":["types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG;IAE1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC"}
|
@@ -7,7 +7,7 @@ async function fetchKeyMetadataFromApi(clientId, config) {
|
|
7
7
|
const url = new URL(`${apiUrl}/v1/keys/use`);
|
8
8
|
url.searchParams.set("clientId", clientId);
|
9
9
|
url.searchParams.set("scope", serviceScope);
|
10
|
-
const response = await fetch(url.
|
10
|
+
const response = await fetch(url.href, {
|
11
11
|
method: "GET",
|
12
12
|
headers: {
|
13
13
|
"x-service-api-key": serviceApiKey,
|
@@ -112,6 +112,8 @@ function authorizeService(apiKeyMetadata, serviceConfig, authorizationPayload) {
|
|
112
112
|
const {
|
113
113
|
services
|
114
114
|
} = apiKeyMetadata;
|
115
|
+
// const { serviceTargetAddresses, serviceAction } = validations;
|
116
|
+
|
115
117
|
// validate services
|
116
118
|
const service = services.find(srv => srv.name === serviceConfig.serviceScope);
|
117
119
|
if (!service) {
|
@@ -139,12 +141,11 @@ function authorizeService(apiKeyMetadata, serviceConfig, authorizationPayload) {
|
|
139
141
|
// validate service target addresses
|
140
142
|
// the service has to pass in the target address for this to be validated
|
141
143
|
if (authorizationPayload?.targetAddress) {
|
142
|
-
const
|
143
|
-
|
144
|
-
if (!allAllowed && checkedAddresses.some(ta => !service.targetAddresses.includes(ta))) {
|
144
|
+
const isTargetAddressAllowed = service.targetAddresses.includes(authorizationPayload.targetAddress);
|
145
|
+
if (!isTargetAddressAllowed) {
|
145
146
|
return {
|
146
147
|
authorized: false,
|
147
|
-
errorMessage: `The service "${serviceConfig.serviceScope}" target address is not authorized for this key.`,
|
148
|
+
errorMessage: `The service "${serviceConfig.serviceScope}" target address "${authorizationPayload.targetAddress}" is not authorized for this key.`,
|
148
149
|
errorCode: "SERVICE_TARGET_ADDRESS_UNAUTHORIZED",
|
149
150
|
status: 403
|
150
151
|
};
|
@@ -9,7 +9,7 @@ async function fetchKeyMetadataFromApi(clientId, config) {
|
|
9
9
|
const url = new URL(`${apiUrl}/v1/keys/use`);
|
10
10
|
url.searchParams.set("clientId", clientId);
|
11
11
|
url.searchParams.set("scope", serviceScope);
|
12
|
-
const response = await fetch(url.
|
12
|
+
const response = await fetch(url.href, {
|
13
13
|
method: "GET",
|
14
14
|
headers: {
|
15
15
|
"x-service-api-key": serviceApiKey,
|
@@ -114,6 +114,8 @@ function authorizeService(apiKeyMetadata, serviceConfig, authorizationPayload) {
|
|
114
114
|
const {
|
115
115
|
services
|
116
116
|
} = apiKeyMetadata;
|
117
|
+
// const { serviceTargetAddresses, serviceAction } = validations;
|
118
|
+
|
117
119
|
// validate services
|
118
120
|
const service = services.find(srv => srv.name === serviceConfig.serviceScope);
|
119
121
|
if (!service) {
|
@@ -141,12 +143,11 @@ function authorizeService(apiKeyMetadata, serviceConfig, authorizationPayload) {
|
|
141
143
|
// validate service target addresses
|
142
144
|
// the service has to pass in the target address for this to be validated
|
143
145
|
if (authorizationPayload?.targetAddress) {
|
144
|
-
const
|
145
|
-
|
146
|
-
if (!allAllowed && checkedAddresses.some(ta => !service.targetAddresses.includes(ta))) {
|
146
|
+
const isTargetAddressAllowed = service.targetAddresses.includes(authorizationPayload.targetAddress);
|
147
|
+
if (!isTargetAddressAllowed) {
|
147
148
|
return {
|
148
149
|
authorized: false,
|
149
|
-
errorMessage: `The service "${serviceConfig.serviceScope}" target address is not authorized for this key.`,
|
150
|
+
errorMessage: `The service "${serviceConfig.serviceScope}" target address "${authorizationPayload.targetAddress}" is not authorized for this key.`,
|
150
151
|
errorCode: "SERVICE_TARGET_ADDRESS_UNAUTHORIZED",
|
151
152
|
status: 403
|
152
153
|
};
|
@@ -9,7 +9,7 @@ async function fetchKeyMetadataFromApi(clientId, config) {
|
|
9
9
|
const url = new URL(`${apiUrl}/v1/keys/use`);
|
10
10
|
url.searchParams.set("clientId", clientId);
|
11
11
|
url.searchParams.set("scope", serviceScope);
|
12
|
-
const response = await fetch(url.
|
12
|
+
const response = await fetch(url.href, {
|
13
13
|
method: "GET",
|
14
14
|
headers: {
|
15
15
|
"x-service-api-key": serviceApiKey,
|
@@ -114,6 +114,8 @@ function authorizeService(apiKeyMetadata, serviceConfig, authorizationPayload) {
|
|
114
114
|
const {
|
115
115
|
services
|
116
116
|
} = apiKeyMetadata;
|
117
|
+
// const { serviceTargetAddresses, serviceAction } = validations;
|
118
|
+
|
117
119
|
// validate services
|
118
120
|
const service = services.find(srv => srv.name === serviceConfig.serviceScope);
|
119
121
|
if (!service) {
|
@@ -141,12 +143,11 @@ function authorizeService(apiKeyMetadata, serviceConfig, authorizationPayload) {
|
|
141
143
|
// validate service target addresses
|
142
144
|
// the service has to pass in the target address for this to be validated
|
143
145
|
if (authorizationPayload?.targetAddress) {
|
144
|
-
const
|
145
|
-
|
146
|
-
if (!allAllowed && checkedAddresses.some(ta => !service.targetAddresses.includes(ta))) {
|
146
|
+
const isTargetAddressAllowed = service.targetAddresses.includes(authorizationPayload.targetAddress);
|
147
|
+
if (!isTargetAddressAllowed) {
|
147
148
|
return {
|
148
149
|
authorized: false,
|
149
|
-
errorMessage: `The service "${serviceConfig.serviceScope}" target address is not authorized for this key.`,
|
150
|
+
errorMessage: `The service "${serviceConfig.serviceScope}" target address "${authorizationPayload.targetAddress}" is not authorized for this key.`,
|
150
151
|
errorCode: "SERVICE_TARGET_ADDRESS_UNAUTHORIZED",
|
151
152
|
status: 403
|
152
153
|
};
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
var node_crypto = require('node:crypto');
|
6
|
-
var index = require('../../dist/index-
|
6
|
+
var index = require('../../dist/index-ded83ecc.cjs.dev.js');
|
7
7
|
var services = require('../../dist/services-a3f36057.cjs.dev.js');
|
8
8
|
|
9
9
|
async function authorizeNode(authInput, serviceConfig) {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
var node_crypto = require('node:crypto');
|
6
|
-
var index = require('../../dist/index-
|
6
|
+
var index = require('../../dist/index-bc2b86a5.cjs.prod.js');
|
7
7
|
var services = require('../../dist/services-9e185105.cjs.prod.js');
|
8
8
|
|
9
9
|
async function authorizeNode(authInput, serviceConfig) {
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { createHash } from 'node:crypto';
|
2
|
-
import { a as authorize } from '../../dist/index-
|
2
|
+
import { a as authorize } from '../../dist/index-1125bae0.esm.js';
|
3
3
|
export { b as SERVICES, S as SERVICE_DEFINITIONS, a as SERVICE_NAMES, g as getServiceByName } from '../../dist/services-86283509.esm.js';
|
4
4
|
|
5
5
|
async function authorizeNode(authInput, serviceConfig) {
|
package/package.json
CHANGED