diff --git a/src/authentication.ts b/src/authentication.ts index 01207fa1..c9004794 100644 --- a/src/authentication.ts +++ b/src/authentication.ts @@ -97,8 +97,8 @@ export async function expressAuthentication(request: Request, securityName: stri } if (role === AgentRole.RestTenantAgent) { // Logic if the token is of tenant agent - if (scopes && scopes?.includes(SCOPES.MULTITENANT_BASE_AGENT)) { - logger.debug('Tenants cannot manage tenants') + if (scopes && !scopes?.includes(SCOPES.TENANT_AGENT)) { + logger.debug('Tenants cannot access this route') return Promise.reject(new StatusException(ErrorMessages.Unauthorized, 401)) } else { // Auth: tenant agent diff --git a/src/controllers/agent/AgentController.ts b/src/controllers/agent/AgentController.ts index fc23310d..cb203190 100644 --- a/src/controllers/agent/AgentController.ts +++ b/src/controllers/agent/AgentController.ts @@ -118,7 +118,7 @@ export class AgentController extends Controller { @Request() request: Req, @Query('storeCredential') storeCredential: boolean, @Query('dataTypeToSign') dataTypeToSign: 'rawData' | 'jsonLd', - @Body() data: CustomW3cJsonLdSignCredentialOptions | SignDataOptions, + @Body() data: CustomW3cJsonLdSignCredentialOptions | SignDataOptions | unknown, ) { try { // JSON-LD VC Signing @@ -160,7 +160,7 @@ export class AgentController extends Controller { } if (!keyToUse) { - throw new Error('Unable to construct signing key.') + throw new Error('Unable to construct signing key. ') } const signature = await request.agent.context.wallet.sign({ @@ -178,7 +178,7 @@ export class AgentController extends Controller { @Post('/credential/verify') public async verifyCredential( @Request() request: Req, - @Body() credentialToVerify: SafeW3cJsonLdVerifyCredentialOptions, + @Body() credentialToVerify: SafeW3cJsonLdVerifyCredentialOptions | any, ) { try { const { credential, ...credentialOptions } = credentialToVerify diff --git a/src/routes/routes.ts b/src/routes/routes.ts index 62c08949..2a30e20a 100644 --- a/src/routes/routes.ts +++ b/src/routes/routes.ts @@ -1464,7 +1464,7 @@ export function RegisterRoutes(app: Router) { const argsPolygon_createKeyPair: Record = { }; app.post('/polygon/create-keys', - authenticateMiddleware([{"jwt":["tenant","dedicated"]}]), + authenticateMiddleware([{"jwt":["tenant","dedicated","Basewallet"]}]), ...(fetchMiddlewares(Polygon)), ...(fetchMiddlewares(Polygon.prototype.createKeyPair)), @@ -1538,7 +1538,7 @@ export function RegisterRoutes(app: Router) { estimateTransactionRequest: {"in":"body","name":"estimateTransactionRequest","required":true,"ref":"DidOperationOptions"}, }; app.post('/polygon/estimate-transaction', - authenticateMiddleware([{"jwt":["tenant","dedicated"]}]), + authenticateMiddleware([{"jwt":["tenant","dedicated","Basewallet"]}]), ...(fetchMiddlewares(Polygon)), ...(fetchMiddlewares(Polygon.prototype.estimateTransaction)), diff --git a/src/routes/swagger.json b/src/routes/swagger.json index 44bce21e..b1ae2ef3 100644 --- a/src/routes/swagger.json +++ b/src/routes/swagger.json @@ -3335,7 +3335,8 @@ { "jwt": [ "tenant", - "dedicated" + "dedicated", + "Basewallet" ] } ], @@ -3417,7 +3418,8 @@ { "jwt": [ "tenant", - "dedicated" + "dedicated", + "Basewallet" ] } ],