Home Page for the TeradataForum
 

Archives of the TeradataForum

Message Posted: Mon, 04 Nov 2013 @ 10:36:58 GMT


     
  <Prev Next>  
<<First
<Prev
Next> Last>>  


Subj:   Teradata ODBC connection string with integrated security (perl DBI, Windows 7)
 
From:   Cox, Laura

Hi Folks,

can anyone enlighten me on how to specify 'Use Integrated Security' in the ODBC connection string?

I'm fairly new to Teradata, but have been using perl DBI ODBC connections to Oracle and SQLServer DBs quite happily for a while now. I'm having problems getting the connection to Teradata (v. 13.10) working, and am hoping someone might have some advice for me.

The trouble seems to be twofold (1) new ODBC connections aren't appearing in the registry, which I have managed to work around, but (2) I haven't been able to find a good connection string to use for Teradata sources with integrated security.

(1) I've defined the DSNs for my Teradata sources using the 32-bit ODBC Administrator, but for some reason they are not showing up in the registry under HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBC.INI. I have previously-defined Oracle and SQLServer DSNs that do appear in the registry, and a newly-defined SQLServer DSN that does not, so I don't think this issue is specific to Teradata. I do think this problem began after installing the Teradata client, so am not sure if it may have something to do with that. I have made sure that everything I'm dealing with (perl, the ODBC Administrator, the registry section) is 32-bit.

(2) To get around issue (1) for the newly-defined SQLServer DSN, I'm able to open a DBI database handle using a constructed connection string instead of the DSN name (in the form 'dbi:ODBC:driver={SQL Server};Server=server_name;Database=db_name;Trusted_Connection=1')

I'm hoping that I can find a way to do the same for the Teradata connections, but haven't been able to get my connection string working. What is tripping me up is the fact that we are using integrated security, and I can't seem to figure out how to indicate that in the connection string.

For a database without integrated security, the following connection string is successful:

     'dbi:ODBC:driver={Teradata};DBCName=server_name;Database=db_name;Uid=user;Pwd=password'

For a database with integrated security (LDAP), I've tried just leaving the Uid and Pwd out; adding each of Trusted_Connection=1, IntegratedSecurity=true, IntegratedSecurity=1, Integrated_Security=true, Integrated_Security=1, etc. All result in an error like: DBI connect('driver={Teradata};DBCName=server_name;Database=db_name;Integrated_Security=1','',...) failed: [Teradata][ODBC Teradata Driver] Not enough information to log on (SQL-28000) at bin\test_db_conn.pl line 14. Even hard-coding the username/password for this DB (nt credentials, I've triple-checked them) fails, with 2 error messages: DBI connect('driver={Teradata};DBCName=server_name;Database=db_name;Uid=user;Pwd =password','',...) failed: [Teradata][ODBC Teradata Driver][Teradata Database] The UserId, Password or Account is invalid. (SQL-28000) [Teradata][ODBC Teradata Driver] Not enough information to log on (SQL-28000) at bin\test_db_conn.pl line 14.

I did try installing both DBD::Teradata (though it's no longer supported) and Teradata::SQL from CPAN as alternate access methods, but ran into issues with the installation of both. If this would be the better way to go, I can post more details and try to head down that road.

Thanks in advance for any help you can provide,


Laura



     
  <Prev Next>  
<<First
<Prev
Next> Last>>  
 
 
 
 
 
 
 
 
  
  Top Home Privacy Feedback  
 
 
Copyright for the TeradataForum (TDATA-L), Manta BlueSky    
Copyright 2016 - All Rights Reserved    
Last Modified: 15 Jun 2023