login abstract method
Authenticates a user with NTUT Portal credentials.
Sets the JSESSIONID cookie in the app.ntut.edu.tw domain for subsequent authenticated requests. This session cookie is shared across all services.
Returns user profile information including name, email, and avatar filename.
Throws LoginException on failure with a LoginFailure indicating the reason (wrong credentials, account locked, password expired, etc.).
Implementation
Future<UserDto> login(String username, String password);