From bb926695082e78c137e46ae5cdf5c9544006cd5b Mon Sep 17 00:00:00 2001 From: Julian Cuni Date: Mon, 5 Sep 2022 15:46:17 +0200 Subject: [PATCH] Tested Register. Done! --- backend/src/auth/login/login.module.ts | 3 +-- backend/src/auth/register/register.module.ts | 3 +-- backend/src/auth/register/register.service.ts | 25 +++++++++++++++---- 3 files changed, 22 insertions(+), 9 deletions(-) diff --git a/backend/src/auth/login/login.module.ts b/backend/src/auth/login/login.module.ts index 29484c2..a6cbfce 100644 --- a/backend/src/auth/login/login.module.ts +++ b/backend/src/auth/login/login.module.ts @@ -1,10 +1,9 @@ import { Module } from '@nestjs/common'; import { LoginService } from './login.service'; import { LoginController } from './login.controller'; -import { HttpModule } from '@nestjs/axios'; @Module({ - imports: [HttpModule], + imports: [], controllers: [LoginController], providers: [LoginService], }) diff --git a/backend/src/auth/register/register.module.ts b/backend/src/auth/register/register.module.ts index b44ac23..2adb202 100644 --- a/backend/src/auth/register/register.module.ts +++ b/backend/src/auth/register/register.module.ts @@ -1,10 +1,9 @@ import { Module } from '@nestjs/common'; import { RegisterService } from './register.service'; import { RegisterController } from './register.controller'; -import { HttpModule } from '@nestjs/axios'; @Module({ - imports: [HttpModule], + imports: [], controllers: [RegisterController], providers: [RegisterService] }) diff --git a/backend/src/auth/register/register.service.ts b/backend/src/auth/register/register.service.ts index 67025be..ea5353e 100644 --- a/backend/src/auth/register/register.service.ts +++ b/backend/src/auth/register/register.service.ts @@ -1,14 +1,29 @@ -import { HttpService } from '@nestjs/axios'; import { Injectable } from '@nestjs/common'; -import { CreateUserDto } from './dto/create-user.dto'; +import { + Configuration, + UserRepresentation, + UsersApi, +} from '../../../keycloak/kc-client'; import { UpdateUserDto } from './dto/update-user.dto'; @Injectable() export class RegisterService { - constructor(private readonly httpService: HttpService) {} + async create(userRepresentation: UserRepresentation) { + const config = new Configuration(); + const accessToken = + 'eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICItQjJOQnpxUmhMTjBqNlJyUWFGRHpMaTNIQUhaMFU0VDZQUFN5Y3cyc0RrIn0.eyJleHAiOjE2NjIzODQ0NjAsImlhdCI6MTY2MjM4NDE2MCwianRpIjoiNTNkMDA2NTYtYWE2ZS00YjY1LTgyMTEtNWY4ODJmODVlNTIxIiwiaXNzIjoiaHR0cHM6Ly9vYXV0aC5hcHBzLmFydHNlcnZpcy5hbC9hdXRoL3JlYWxtcy9GbHV4ZW0tREVWIiwiYXVkIjpbInJlYWxtLW1hbmFnZW1lbnQiLCJhY2NvdW50Il0sInN1YiI6IjIzYjM5MTk0LTlhMmQtNDk3Yi1hYjM5LWIwM2YwYTJjMzM5YiIsInR5cCI6IkJlYXJlciIsImF6cCI6IndlYmFwcC1kZXYiLCJzZXNzaW9uX3N0YXRlIjoiYTg1YjZhMWUtMGQzNy00OWQ0LTk5YjUtMmZhOTU5MGZkYzhlIiwiYWNyIjoiMSIsImFsbG93ZWQtb3JpZ2lucyI6WyJodHRwczovL2hhc3VyYS5hcHBzLmFydHNlcnZpcy5hbCIsImh0dHA6Ly9sb2NhbGhvc3Q6MzAwMCJdLCJyZWFsbV9hY2Nlc3MiOnsicm9sZXMiOlsib2ZmbGluZV9hY2Nlc3MiLCJ1bWFfYXV0aG9yaXphdGlvbiIsImRlZmF1bHQtcm9sZXMtZmx1eGVtLWRldiJdfSwicmVzb3VyY2VfYWNjZXNzIjp7InJlYWxtLW1hbmFnZW1lbnQiOnsicm9sZXMiOlsibWFuYWdlLXVzZXJzIl19LCJ3ZWJhcHAtZGV2Ijp7InJvbGVzIjpbImFkbWluIiwidXNlciJdfSwiYWNjb3VudCI6eyJyb2xlcyI6WyJtYW5hZ2UtYWNjb3VudCIsIm1hbmFnZS1hY2NvdW50LWxpbmtzIiwidmlldy1wcm9maWxlIl19fSwic2NvcGUiOiJlbWFpbCBoYXNzdXJhIHByb2ZpbGUiLCJzaWQiOiJhODViNmExZS0wZDM3LTQ5ZDQtOTliNS0yZmE5NTkwZmRjOGUiLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaHR0cHM6Ly9oYXN1cmEuaW8vand0L2NsYWltcyI6eyJ4LWhhc3VyYS1kZWZhdWx0LXJvbGUiOiJ1c2VyIiwieC1oYXN1cmEtdXNlci1pZCI6IjIzYjM5MTk0LTlhMmQtNDk3Yi1hYjM5LWIwM2YwYTJjMzM5YiIsIngtaGFzdXJhLWFsbG93ZWQtcm9sZXMiOlsiYWRtaW4iLCJ1c2VyIl19LCJuYW1lIjoiQWRtaW4gVGVzdCIsInByZWZlcnJlZF91c2VybmFtZSI6ImFkbWluIiwiZ2l2ZW5fbmFtZSI6IkFkbWluIiwiZmFtaWx5X25hbWUiOiJUZXN0In0.ov4yxi19x7QNHa3Jz_pNSLVwtZukYhfh-cbfHUOrIKlIuaZDO_QAohmO6Vgv7uiKRFMHp4ntJntJiaH-lxtPAUo7ai4c6hbjnZPYI-yzSwsohfuEh7eG7sgowV2j4DZ8nxJp4WS1ipukilAQhdITKuKGjUuA9vpy5NNh-kzIakJDp8Jh0OYcIncV-WrDSmnvDQPP4grq09kXcg34e6YNWr4LCJgQDkUQ4XAZOLfqNs7cqqJL57kdEN7oEDzczMCYY9baRvflEtxDWMKNSjYW6-9L6mF3aKG1sR0JHogf24CmwuVNohgda2dCqmp57Djsyr7tqdll0fnhEiUBi-h3xQ'; + const basePath = `${process.env.KC_BASE_URL}/auth/admin/realms`; + const usersApi = new UsersApi({ basePath, accessToken }); - create(createRegisterDto: CreateUserDto) { - return 'This action adds a new register'; + try { + const registereredUser = await usersApi.realmUsersPost( + process.env.KC_REALM, + userRepresentation, + ); + return registereredUser; + } catch (error) { + return error; + } } async findAll() {