Terraform v0.11.11
provider.aws v1.52.0
When you provide the MasterUserPassword with wrong symbols the following error appears:
aws_db_instance.mssqlrds: Error creating DB Instance: InvalidParameterValue: The parameter MasterUserPassword is not a valid password. Only printable ASCII characters besides '/', '@', '"', ' ' may be used.
The error is clearly states opposite of what characters are forbidden in password. Neither @ nor / " or space can be used in SQL Server password.
The error stating forbidden characters cannot be use should be raised.
The error stating forbidden characters are allowed to be use is raised.
terraform apply
None.
It seems the error message reads ascii characters besides the special ones are allowed. This seems correct, but it would probably be easier to read if it would just say These characters are not allowed: ... instead.
Hi folks 👋 Thank you for your interest in this feature request. After reviewing this more closely, we are hesitant to implement this level of validation for a few reasons, especially due to some current limitations in the Terraform Plugin SDK:
ValidateFunc to the schema attribute.Given those, we are going to opt to close this for now since it is more nuanced than the typical addition of ValidateFunc on a schema attribute.
EDIT: Please note that in the original report, that error messaging is coming from the RDS API response. Any grammar updates would need to occur in the API. If you have improvement requests for the RDS team, please submit an AWS Support case or talk to your AWS Technical Account Manager, if you have one.
I'm going to lock this issue because it has been closed for _30 days_ ⏳. This helps our maintainers find and focus on the active issues.
If you feel this issue should be reopened, we encourage creating a new issue linking back to this one for added context. Thanks!
Most helpful comment
It seems the error message reads ascii characters besides the special ones are allowed. This seems correct, but it would probably be easier to read if it would just say
These characters are not allowed: ...instead.