Re: Connection string information
- From: "William \(Bill\) Vaughn" <billvaRemoveThis@xxxxxxxxxx>
- Date: Fri, 4 Nov 2005 08:21:38 -0800
Right. And they are private--not exposed by ADO.NET
--
____________________________________
William (Bill) Vaughn
Author, Mentor, Consultant
Microsoft MVP
INETA Speaker
www.betav.com/blog/billva
www.betav.com
Please reply only to the newsgroup so that others can benefit.
This posting is provided "AS IS" with no warranties, and confers no rights.
__________________________________
"Francois Malgreve" <francois.malgreveADgmail.com> wrote in message
news:OSdavZQ4FHA.476@xxxxxxxxxxxxxxxxxxxxxxx
> Well, I just decompiled the SQLConnection class.
> I saw a lot of properties definned such as:
>
> private string _userID;
> private string _password;
>
> internal string UserID
> {
> get
> {
> return _userID;
> }
> }
>
> internal string Password
> {
> get
> {
> return _password;
> }
> }
>
> Also I saw those values being assigned in some places:
>
> I also saw that there was a parser in the class SQLConnectionString
> inherited from DBConnectionString but my decompiler was not good enough to
> decompile it completely. I can more or less read it but I cannot copy
> paste
> it in my own class to be able to re-use it :(
>
> It seemed that the parser stored EVERY value found from the conection
> string
> into an Hahstable, as long as the value exists, otherwise the value will
> be
> kept blank. Also I did not see anything that makes the parser skip some
> elements. If an element exists within the connection string it parses it,
> except if that element is not a proper keyword then an exception is thrown
> (such as u put in passeword instead of password)
> At the end of the constructor of DBConnectionString, a method
> ValidateParse() is called and that method is overridden in
> SQLConnectionString to set values for all properties that are in the
> connection string (including passwords, user name and anything u can
> define
> into a connection string). Of course if a property is not defined in the
> connection string then the equivalent property in SQLConnectionString will
> remain empty.
>
> Well, do you have a properly decompiled version of the System.Data.dll
> that
> you can actually recompile? I believe MS still does not publish the source
> code of the Framework API, do they?
> And if I could run it i am pretty sure i could retrieve the user name
> password.
>
> Last, sorry in advance to be so stubborn.
>
> Francois.
>
> "William (Bill) Vaughn" <billvaRemoveThis@xxxxxxxxxx> wrote in message
> news:OMkEHLM4FHA.3592@xxxxxxxxxxxxxxxxxxxxxxx
>> Unless the ConnectionString contains "Persist Security Info=true"
>> referencing the ConnectionString assigned to a Connection won't return
>> the
>> credentials. If it is enabled, you'll have to do a string parse on the
>> ConnectionString for the values. When ADO.NET assigns the
>> ConnectionString
>> to a Connection object, it parses the string and picks off key elements
>> which are assigned to the Connection properties behind the scenes. Not
>> all
>> of the key/value pairs are used to set properties--the user id and
> password
>> are not assigned to properties.
>>
>> hth
>>
>> --
>> ____________________________________
>> William (Bill) Vaughn
>> Author, Mentor, Consultant
>> Microsoft MVP
>> INETA Speaker
>> www.betav.com/blog/billva
>> www.betav.com
>> Please reply only to the newsgroup so that others can benefit.
>> This posting is provided "AS IS" with no warranties, and confers no
> rights.
>> __________________________________
>>
>> "Francois Malgreve" <francois.malgreveADgmail.com> wrote in message
>> news:%23F3Gz9G4FHA.744@xxxxxxxxxxxxxxxxxxxxxxx
>> > Hi,
>> >
>> > I would like to know how I can do to retrieve the user and password
>> > from
> a
>> > connection object.
>> > All i see from SQLConnection is that i can access the connectionString
> but
>> > I
>> > need to be able to access the specific user and password for that
>> > connection.
>> > If I parse the connection string myself i may not be able to catch the
>> > values properly every times as there are many valid syntax to build a
>> > connection string and I am pretty sure that I do not know all of them.
>> > For example
>> > "Data Source=Aron1;Initial Catalog=pubs;User Id=sa;Password=asdasd;"
>> > is valid but
>> > "Data Source=Aron1;Initial Catalog=pubs;User Id = sa;Password =
>> > asdasd;"
>> > "Data Source=Aron1;Initial Catalog=pubs;uid=sa;Password =asdasd;"
>> > "Data Source=Aron1;Initial Catalog=pubs;uid =sa;pwd=asdasd;"
>> > and probably other syntaxes are valid.
>> >
>> > I assume that internally the SqlConnection object parses the connection
>> > string and store the user and password in separate fields. Is there any
>> > public method or attribuate that can do that? Or any third party
> library?
>> >
>> > Best regards,
>> >
>> > Francois Malgreve.
>> >
>> >
>>
>>
>
>
.
- Follow-Ups:
- Re: Connection string information
- From: Francois Malgreve
- Re: Connection string information
- References:
- Connection string information
- From: Francois Malgreve
- Re: Connection string information
- From: William \(Bill\) Vaughn
- Re: Connection string information
- From: Francois Malgreve
- Connection string information
- Prev by Date: Re: How to Insert a whole dataset into database
- Next by Date: Re: Timeout on commit during backup sqlserver
- Previous by thread: Re: Connection string information
- Next by thread: Re: Connection string information
- Index(es):
Relevant Pages
|