С Oracle SQL Developer я могу поместить /-character в Username и оставить пароль пустым, и я подключусь. У меня есть пользователь OPW MYWINDOWSUSERNAME, созданный в базе данных.
EDIT: SQL Developer не работает, если я проверяю флажок "Проверка подлинности ОС" (пустые и отключает имя пользователя + pwd). Более того, Preferences- > Database- > Advanced- > Use Oracle Client не проверяется, поэтому я думаю, что SQL Developer делает или не имеет очень мало общего с моей проблемой System.Data.OracleClient.OracleConnection.
Однако, когда я пытаюсь создать строку соединения следующим образом:
string.Format("Data Source={0}; user id=/;password=;Integrated Security=yes", dbName);
Я получаю ORA-01017: неверное имя пользователя/пароль: logon denied
с
string.Format("Data Source={0}; user id=/;password=;Integrated Security=no", dbName);
Я получаю ORA-01005.
С
string.Format("Data Source={0};Integrated Security=yes", dbName);
Я получаю ORA-01017: неверное имя пользователя/пароль: logon denied
С
string.Format("Data Source={0}; user id=/;", dbName);
Я получаю ORA-01005
С
string.Format("Data Source={0};User Id=/;Integrated Security=yes;", dbName);
Я получаю ORA-01017
Оба OracleConnection в моей программе и Oracle SQL Developer работают, когда я указываю имя пользователя и пароль.
EDIT: это работает с
string.Format("Data Source={0};Integrated Security=yes", dbName);
когда строка sqlnet.ora
SQLNET.AUTHENTICATION_SERVICES= (NTS)
изменяется на
SQLNET.AUTHENTICATION_SERVICES= (NONE)
Если кто-то пишет короткий ответ, что происходит и почему, я рад предоставить ему награду.