我正在尝试使用Oracle.ManagedDataAccess库连接到Oracle数据库,但是用户使用方括号括起来。问题是,总是向我发送Oracle异常ORA-01017:无效的用户名/密码;登录被拒绝。
使用SQL Developer可以完美地工作。
我正在使用Oracle.ManagedDataAccess v18.6.0和 .NET Framework 4.7.2
我确定其他参数,例如pass和host都是正确的。我尝试了另一个没有方括号且运行良好的用户。
我的代码如下:
using (var conn = new OracleConnection(SERVER, new OracleCredential("myId[SERV]", secPwd)))
非常感谢。
答案 0 :(得分:2)
您正在使用proxy user authentication
“ myId”是您的代理用户,“ SERV”是数据库用户
检查here如何与.net中的代理用户连接
基本上有两种可能性:
new OracleConnection("Data Source=ORA; User Id=my_proxy_user; Password=my_proxy_user_password;")
或
new OracleConnection("Data Source=ORA; Proxy User Id=my_proxy_user; Proxy Password=my_proxy_user_password; User Id=scott;")
关于stackexchange的类似问题
使用Oracle Data Provider for .NET的Proxy Authentication的Oracle文档