Skip to content

[PROJECT] User & Authentication #1

@Cloumy074

Description

@Cloumy074

Project Name

User authentication system implementation

Project Description

This feature is implementing a simple username/password-token system. The password must be Argon2 hashed for authentication and the session token must be provided within 1 minute to connect to the server. If the requirements are not met, the WebSocket connection will be closed by the server.

Success Criteria

  • If the authType is PASSWD, the server MUST check the username-password pair store in the database.
    • The authentication MUST succeed if they match and MUST NOT if they don't.
  • If the authType is TOKEN, the server MUST check if the client token matches with the username, then create a new token and compare to the provided client token.
    • The authentication MUST succees if the created token matches the provided token and MUST NOT if they don't.
  • If the credentials are valid, the server MUST generate a session token and returns it to the client.
    • If the authType was PASSWD, the server MUST return it with a client token.
  • If the credentails are NOT valid, the server MUST require a password authentication from that Machine ID/IP

Estimated Timeline

2 Weeks - 1 Month

Key Stakeholders

Dependencies

Risks and Mitigation

No response

Sub-issues

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions