evershopcommerce / evershop

🛍️ NodeJS E-commerce Platform
https://evershop.io/
GNU General Public License v3.0
4.14k stars 1.15k forks source link

Admin user/role management #359

Open treoden opened 11 months ago

treoden commented 11 months ago

Draft requirements:

  1. Should be able to create/update/remove admin account
  2. Should be able to manage multiple admin account
  3. Should be able to create/update/remove role
  4. Each role should have specified scopes based on the API
  5. Account can be assigned with a specified role
  6. An account can only see/do thing/action that specified by the assigned role
MrBlackGhostt commented 9 months ago

Hello @treoden ,

I'm eager to contribute to the Admin Management System issue #359, and I've drafted the requirements for your review:

Requirements:

  1. Admin Account Management:

    • Ability to create/update/remove admin accounts.
    • Capability to manage multiple admin accounts.
  2. Role Management:

    • Ability to create/update/remove roles.
    • Each role should have specified scopes based on the API.
  3. Role Assignment:

    • Admin accounts can be assigned a specified role.
  4. Access Control:

    • An account can only see/do actions specified by the assigned role.

Proposed Solution: I propose implementing a comprehensive Admin Management System that adheres to the specified requirements. Here's how I plan to approach it:

  1. Admin Account Management:

    • Utilize React, JavaScript, and Redux to create a user-friendly interface for creating, updating, and removing admin accounts.
    • Leverage Redux for state management to efficiently handle multiple admin accounts.
  2. Role Management:

    • Design a role management system using React components.
    • Use Redux for state management to handle role creation, updates, and removal.
  3. Role Scopes and Access Control:

    • Integrate an access control mechanism within the application.
    • Ensure that each role has specified scopes based on the API.
    • Implement client-side checks to restrict actions based on the assigned role.

Skills Utilization:

I am enthusiastic about taking on this challenge. Could you please assign this issue to me? I'm excited about contributing to the development of this essential system.

Thank you for considering my involvement, and I look forward to making a positive impact on the project.

Best regards, Hemant

thiagorodriguesdutra commented 8 months ago

Any news on #359?

thesusian commented 2 weeks ago

+1 would love this feature