StefanPenchev05 / MyClothesV2

Welcome to MyClothes, where creativity meets fashion! This application provides a platform for designers to showcase their clothing products, receive feedback through comments and likes, engage in real-time chat, and even get hired by clients who love their work.
MIT License
0 stars 0 forks source link

Implement Two-Factor Authentication #50

Open StefanPenchev05 opened 6 months ago

StefanPenchev05 commented 6 months ago

As a security measure, we need to implement two-factor authentication (2FA) for our users. This will provide an additional layer of security by requiring users to provide two forms of identification before they can access their account.

Acceptance Criteria:

  1. When a user signs up, they should have the option to enable 2FA.
  2. If 2FA is enabled, the user should be prompted to enter a verification code sent to their email or phone number when they log in.
  3. The user should not be able to access their account until they provide the correct verification code.
  4. The user should have the option to disable 2FA from their account settings.

Tasks:

StefanPenchev05 commented 6 months ago

In addition to give some example of settings, since I will create Settings.js Model

1. Theme: A string that indicates the user's preferred theme (light or dark). 2. Notifications: An object with boolean fields for different types of notifications (email and push). 3. ShowOnlineStatus: A boolean that indicates whether the user's online status should be visible to others. 4. HideProfile: A boolean that indicates whether the user's profile should be hidden. 5. TwoFactorAuth: An object with fields related to two-factor authentication. 6. Privacy: An object with fields related to privacy settings (profile visibility, last seen visibility, and read receipts).