-
-
Notifications
You must be signed in to change notification settings - Fork 752
Description
Describe the bug
Login fails with HTTP 500 error and "illegal base64 data at input byte 0" across all browsers. The /api/crypto/public_key endpoint succeeds, but /api/login consistently fails with a base64 decoding error in user/auth.go:90.
To Reproduce
- Navigate to nginx-ui login page
- Enter valid credentials
- Click 'Login'
- Observe HTTP 500 error
Expected behavior
Successful authentication and redirect to dashboard.
Screenshots
Server logs:
[GIN] 2025/12/25 - 17:56:16 | 200 | 145.062µs | 10.x.x.x | POST "/api/crypto/public_key"
2025-12-25 17:56:16.414 ERROR user/auth.go:90 illegal base64 data at input byte 0
[GIN] 2025/12/25 - 17:56:16 | 500 | 88.322415ms | 10.x.x.x | POST "/api/login"
Browser console error:
AxiosError: Request failed with status code 500
code: "ERR_BAD_RESPONSE"
response: {data: {code: 500, message: "Server Error"}, status: 500}Request payload structure:
{
"encrypted_params": "[base64-encoded RSA encrypted credentials]"
}Info (please complete the following information):
- Server OS: Ubuntu Server
- Server Arch: x86_64 (amd64)
- Nginx UI Version: 2.3.2 1(512) cb1fb69 (go1.25.4 linux/amd64)
- Browser(s): Firefox, Safari, Chrome - all affected
- Browser OS: Tahoe 26.2 MacOS
Additional context
The frontend successfully encrypts credentials and encodes them as base64, but the backend consistently fails to decode the encrypted_params value at user/auth.go:90. This affects all browsers, suggesting the issue is in the backend's base64 decoder rather than browser-specific JavaScript implementations.
Metadata
Metadata
Assignees
Labels
Projects
Status