diff --git a/public/swagger.json b/public/swagger.json index 39850b9..c723d0f 100644 --- a/public/swagger.json +++ b/public/swagger.json @@ -84,7 +84,7 @@ ], "security": [ { - "AccessToken": [] + "bearer": [] } ] } @@ -113,7 +113,7 @@ ], "security": [ { - "AccessToken": [] + "bearer": [] } ] } @@ -151,7 +151,7 @@ ], "security": [ { - "AccessToken": [] + "bearer": [] } ] } @@ -189,7 +189,7 @@ ], "security": [ { - "AccessToken": [] + "bearer": [] } ] } @@ -205,10 +205,10 @@ "servers": [], "components": { "securitySchemes": { - "AccessToken": { - "type": "apiKey", - "in": "header", - "name": "x-access-token" + "bearer": { + "scheme": "bearer", + "bearerFormat": "JWT", + "type": "http" } }, "schemas": { diff --git a/src/api/controllers/packs.controller.ts b/src/api/controllers/packs.controller.ts index 34ee4c8..7131daf 100644 --- a/src/api/controllers/packs.controller.ts +++ b/src/api/controllers/packs.controller.ts @@ -3,7 +3,7 @@ import { JwtAuthGuard } from '../guards/jwt-auth.guard'; import { User } from '../decorators/user.decorator'; import { UserEntity, UserModel } from 'src/infra/postgres/entities/user.entity'; import { PacksUseCase } from 'src/core/use-cases/packs.use-case'; -import { ApiCreatedResponse, ApiNotFoundResponse, ApiOkResponse, ApiSecurity, ApiTags } from '@nestjs/swagger'; +import { ApiBearerAuth, ApiCreatedResponse, ApiNotFoundResponse, ApiOkResponse, ApiSecurity, ApiTags } from '@nestjs/swagger'; import { UUIDv4 } from 'src/common/types'; import { Mapper } from '@automapper/core'; import { PackEntity } from 'src/infra/postgres/entities/pack.entity'; @@ -28,7 +28,7 @@ export class PacksController { ) {} @ApiOkResponse({ type: [PackOutputDTO] }) - @ApiSecurity('AccessToken') + @ApiBearerAuth() @Get() @UseGuards(JwtAuthGuard) public async getPacks(): Promise> { @@ -39,7 +39,7 @@ export class PacksController { @ApiOkResponse({ type: PackWithPokemonsOutputDTO }) @ApiNotFoundResponse() - @ApiSecurity('AccessToken') + @ApiBearerAuth() @Get(':id') @UseGuards(JwtAuthGuard) public async getPack( @@ -54,7 +54,7 @@ export class PacksController { // TODO: openPack should return OpenedPackEntity ({ openedAt: Date, user: UserEntity, pack: PackEntity, pokemon: PokemonEntity }) @ApiCreatedResponse({ type: OpenPackOutputDTO }) @ApiNotFoundResponse() - @ApiSecurity('AccessToken') + @ApiBearerAuth() @Post(':id/open') @UseGuards(JwtAuthGuard) public async openPack( diff --git a/src/api/controllers/users.controller.ts b/src/api/controllers/users.controller.ts index f7c2f73..893c991 100644 --- a/src/api/controllers/users.controller.ts +++ b/src/api/controllers/users.controller.ts @@ -3,7 +3,7 @@ import { UsersUseCase } from 'src/core/use-cases/users.use-case'; import { JwtAuthGuard } from '../guards/jwt-auth.guard'; import { UserEntity, UserModel } from 'src/infra/postgres/entities/user.entity'; import { User } from '../decorators/user.decorator'; -import { ApiOkResponse, ApiSecurity, ApiTags } from '@nestjs/swagger'; +import { ApiBearerAuth, ApiOkResponse, ApiTags } from '@nestjs/swagger'; import { Mapper } from '@automapper/core'; import { InjectMapper } from '@automapper/nestjs'; import { UserWithPokemonsOutputDTO } from '../dtos/users/user-with-pokemons.output.dto'; @@ -19,7 +19,7 @@ export class UsersController { ) {} @ApiOkResponse({ type: UserWithPokemonsOutputDTO }) - @ApiSecurity('AccessToken') + @ApiBearerAuth() @Get('me') @UseGuards(JwtAuthGuard) public async getMe(@User() user: UserModel) { diff --git a/src/api/strategies/jwt-auth.strategy.ts b/src/api/strategies/jwt-auth.strategy.ts index 91153f3..da2f529 100644 --- a/src/api/strategies/jwt-auth.strategy.ts +++ b/src/api/strategies/jwt-auth.strategy.ts @@ -14,9 +14,7 @@ export class JwtAuthStrategy extends PassportStrategy(Strategy) { configService: ConfigService, ) { super({ - jwtFromRequest: ExtractJwt.fromExtractors([ - ExtractJwt.fromHeader('x-access-token'), - ]), + jwtFromRequest: ExtractJwt.fromAuthHeaderAsBearerToken(), ignoreExpiration: false, secretOrKey: configService.getOrThrow('JWT_SECRET'), }); diff --git a/src/main.ts b/src/main.ts index ea2c5d0..c52fcf0 100644 --- a/src/main.ts +++ b/src/main.ts @@ -13,11 +13,7 @@ const PUBLIC_PATH = './public'; function initializeSwaggerDocumentation(app: INestApplication) { const swaggerDocs = new DocumentBuilder() .setTitle('Poketrade API') - .addSecurity('AccessToken', { - type: 'apiKey', - in: 'header', - name: 'x-access-token', - }) + .addBearerAuth() .build(); const document = SwaggerModule.createDocument(app, swaggerDocs);