the NTS option makes the Oracle client attempt to use your current Windows domain credentials to authenticate you with the Oracle server. This could fail for a couple of reasons:
- The Oracle server is not configured to support Windows authentication - The credentials you use to login to your local machine are not sufficient to allow you to login to the server.
In my case, it was the later. Despite the fact that I had told the client to use a different user name and password, it was still attempting to login using my domain credentials first. This failed because I was logged on to my local machine using my normal domain credentials rather than my administrator account.
Replacing the line:
SQLNET.AUTHENTICATION_SERVICES= (NTS)
with
SQLNET.AUTHENTICATION_SERVICES= (NONE)
in sqlnet.ora resolved the issue by disabling local support for authenticating using Windows credentials.