@iterout/auth-module v1.4.4
Auth Module
Auth module for node.js backend applications
Installation
npm install @iterout/auth-module
Configuration
To use correctly the auth-module you must configure:
- Email service
- Jwt service (optional)
import { configureAuth } from "@iterout/auth-module";
import { createEmailConfig } from "@iterout/email-sender-module";
import { join } from "path";
// create auth email configuration
const authEmailConfig: EmailConfig = createEmailConfig(
[
join(process.cwd(), [MAIL_TEMPLATE_DIR],
join(process.cwd(), "node_modules", "@iterout", "auth-module", "mail_templates")
],
[EMAIL_SENDER],
[EMAIL_SENDER_PASSWORD],
[EMAIL_SERVICE]
)
// configure auth module
configureAuth(
authEmailConfig,
[FRONTEND_URL],
[JWT_SECRET], //optional
[JWT_ACCESS_TOKEN_DURATION], //optional
[JWT_REFRESH_TOKEN_DURATION] //optional
)
Functions
Login
Verify user credential to mongodb and retrun authorizations tokens
login(authData: AuthData): Promise<TokenData>
Logout
Clear and return tokens
logout(): Promise<TokenData>
Registration
Check and save user to mongodb
registration(user: User)
ConfirmSignIn
Confirm user registration. Set isActive = true
confirmSignIn(userId: string)
RefreshToken
Check refreshToken and return new accessToken
refreshToken(refreshToken: string): Promise<TokenData>
authorizeUser
Check accessToken, and user roles
authorizeUser(accessToken: string, ...roles: string[]): Promise<User>
getUserById
Getting user info (password will be blank)
getUserById(userId: string)
deleteUser
Delete user
deleteUser(userId: string)
updateUser
Update user
updateUser(userUpdated: User)
Utils
createEmptyUser
Create empty user
createEmptyUser(): User
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago