aws / aws/amazon-documentdb-jdbc-driver
[BUG] Tableau connector does not URI encode username and password - special characters in valid password result in error
- Dominant language
- Java
- Stars
- 17
- Forks
- 16
- PR merge metrics
- No merged PRs in 30d
Description
## Environment
- DocumentDB JDBC driver version: 1.14.0.0
- DocumentDB server version: docdb 4.0.0
- OS: Windows 10 64-bit
- BI Tool or client name: Tableau Desktop
- BI Tool or client version: 2021.4.2
- Java version (if known): -
---
## Problem Description
1. Steps to reproduce:
(within ec2 instance in VPC!!)
Download jdbc and taco.
Place files in designated folders.
Open up tableau.
Fill in wizard.
Try to connect.
2. Expected behaviour:
A successful connection with documentDB
3. Actual behaviour:
No successful connection with documentDB
4. Error message/stack trace:
Invalid username or password.
Error Code: 28911C50
Invalid username or password or user is not authorized on database 'paydayService'. Please check your settings. Authorization failed for user 'masterUser' on database 'admin' with mechanism 'SCRAM-SHA-1'. Please check username, password, database and authorization for the user.
Invalid username or password.
Connector Class: documentdbjdbc, Version: 1.14.0.0
5. Any other details that can be helpful:
Tried to connect by using studio 3T. Was successful.
---
## Screenshots
- If applicable, add screenshots to help explain your problem.
---
## JDBC log
- Add related JDBC log entries here.
"e-code":"0x28911C50","e-source":"Client","e-status-code":"16","error-source":"Client","exception-type":"BadPassword","grpc-status-code":"16","msg":"\"Invalid username or password or user is not authorized on database 'paydayService'. Please check your settings. Authorization failed for user 'masterUser' on database 'admin' with mechanism 'SCRAM-SHA-1'. Please check username, password, database and authorization for the user.\n\"","type":"ConnectivityException"},"sponsor":"Olh5xmO/UJAIAuF7eEz/RE","type":"end"}
Contributor guide
Research direction
Start by tracing how the DocumentDB JDBC driver receives credentials from the Tableau connection wizard, focusing on URI construction when usernames or passwords contain special characters. Reproduce the connection failure with the supplied environment and a password containing special characters, then verify that the Tableau connection succeeds without changing valid credentials.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- databases
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100