diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2023-04-29 17:03:14 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2023-04-29 17:03:14 +0900 |
| commit | 0ad7869249c8594277afc0aa707c05ac2ed633cf (patch) | |
| tree | 8a889e6c4a764df00ac0ce4c0d8e11c62856387a /packages/backend/src/server/api/SignupApiService.ts | |
| parent | Merge branch 'develop' of https://github.com/misskey-dev/misskey into develop (diff) | |
| download | sharkey-0ad7869249c8594277afc0aa707c05ac2ed633cf.tar.gz sharkey-0ad7869249c8594277afc0aa707c05ac2ed633cf.tar.bz2 sharkey-0ad7869249c8594277afc0aa707c05ac2ed633cf.zip | |
feat: preserved usernames
Resolve #10704
Diffstat (limited to 'packages/backend/src/server/api/SignupApiService.ts')
| -rw-r--r-- | packages/backend/src/server/api/SignupApiService.ts | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/packages/backend/src/server/api/SignupApiService.ts b/packages/backend/src/server/api/SignupApiService.ts index fbabf47aff..f44e71771c 100644 --- a/packages/backend/src/server/api/SignupApiService.ts +++ b/packages/backend/src/server/api/SignupApiService.ts @@ -1,6 +1,7 @@ import { Inject, Injectable } from '@nestjs/common'; import rndstr from 'rndstr'; import bcrypt from 'bcryptjs'; +import { IsNull } from 'typeorm'; import { DI } from '@/di-symbols.js'; import type { RegistrationTicketsRepository, UsedUsernamesRepository, UserPendingsRepository, UserProfilesRepository, UsersRepository } from '@/models/index.js'; import type { Config } from '@/config.js'; @@ -15,7 +16,6 @@ import { FastifyReplyError } from '@/misc/fastify-reply-error.js'; import { bindThis } from '@/decorators.js'; import { SigninService } from './SigninService.js'; import type { FastifyRequest, FastifyReply } from 'fastify'; -import { IsNull } from 'typeorm'; @Injectable() export class SignupApiService { @@ -137,6 +137,11 @@ export class SignupApiService { throw new FastifyReplyError(400, 'USED_USERNAME'); } + const isPreserved = instance.preservedUsernames.map(x => x.toLowerCase()).includes(username.toLowerCase()); + if (isPreserved) { + throw new FastifyReplyError(400, 'USED_USERNAME'); + } + const code = rndstr('a-z0-9', 16); // Generate hash of password |