having just recently had to rewrite some old code to generate secure
passwords - GDPR and all that - I can say that the only special
characters that Oracle permit in a password are:
- The hash/pound/number sign '#'.
- The Underscore '_'.
- The dollar sign '$'.
Everything else will be permitted - but not necessarily legal - if and
only if there are double quotes around the password.
A word of warning, especially as this one bit be on the backside some
years ago, do not ever thing of using the at sign '@' in a password.
The password system we had to use back then generated passwords and was
not Oracle savvy. One user got a password generated with an '@' in it.
This was fine in certain GUIs but on the command line, attempting to:
caused no end of problems - as you can imagine:
- The username was ok.
- The password was assumed to be 'my'.
- The tns_alias was taken to be 'password@my_alias'.
It simply did not work!
PS. https://github.com/NormanDunbar/generatePassword if anyone is