On Wed, 10 Mar 2004 12:50:59 -0600, "Brad Fike" <[EMAIL PROTECTED]>
said:

Thanks for the ideas. I did try entering them in as blanks, but I still
got this error:

DBI->connect(BWEB) failed: [Microsoft][ODBC SQL Server Driver][SQL
Server]Login failed for user '(null)'. Reason: Not associated with a
trusted SQL Server connection. (SQL-28000)(DBD: db_login/SQLConnect
err=-1) at test.pl line 18

I know the username/password is in the system DSN somewhere.

In reply to the suggestions about putting the username/password into
another [more secure] file, this is not a bad idea, and I can certainly
do this. It would address the security issue and it would address the
maintenance issue to some extent (at least we wouldn't have to modify
several scripts), but it still means the info is in two places (this new
file as well as the system DSN, which other non-perl things use).

> If the user\pass is already in the DSN you should be able to just...
> 
> my $db = 
> DBI->connect("dbi:ODBC:$dsn","","");
> 
> 
> >-----Original Message-----
> >From: Sterin, Ilya (I.) [mailto:[EMAIL PROTECTED]
> >Sent: Wednesday, March 10, 2004 12:43 PM
> >To: [EMAIL PROTECTED]
> >Subject: RE: Avoiding coding username/password directly into 
> >perl script
> >
> >
> >well, if your database requires a username/password, then you 
> >can't just pass it the path (DSN).  Not even sure how you 
> >expect anyone to do that.  I believe certain ODBC clients 
> >might have the capability to embed that either inside the DSN 
> >and/or somewhere else on the system, so that when a certain 
> >DSN is recognized, that username/password is used, but not 
> >sure what clients and/or version do that.
> >
> >Thanks.
> >
> >Ilya
> >
> >> -----Original Message-----
> >> From: News Reader [mailto:[EMAIL PROTECTED]
> >> Sent: Wednesday, March 10, 2004 1:36 PM
> >> To: [EMAIL PROTECTED]
> >> Subject: Avoiding coding username/password directly into perl script
> >> 
> >> 
> >> Hi there,
> >> 
> >> I figured this would be a pretty common problem, but I didn't see
> >> anything in the FAQ or docs.
> >> 
> >> We've got a script that uses DBI to connect to SQL Server.
> >> 
> >> There is a system DSN set up and this already has the username and
> >> password. So do we really need to pass them again, as shown below?
> >> 
> >> my $db = 
> >DBI->connect("dbi:ODBC:$dsn","$db_user_name","$db_password");
> >> 
> >> We tried the following (removing the username/password parameters),
> >> but we got a connection error.
> >> 
> >> my $db = DBI->connect("dbi:ODBC:$dsn");
> >> 
> >> It would be nice (for maintenance) and obviously more secure if we
> >> could pass only the DSN name.
> >> 
> >> Thanks,
> >>  - ML

Reply via email to