ASP.Net with Progress DB

Matias Borra

New Member
Hi there.

I'm currently migrating a progress application to .Net. I'm having some problems with the ODBC driver, but I will post one by one.

The first problem that I have is with the users validation, because in the progress application the password has been encoded with the ENCODE function.

So I want to know if someone knows how to validate the password entered in the .Net application against the one encoded in the progress database.

Thanks in advance.

Matias.
 
Hi there,

The first problem that I have is with the users validation, because in the progress application the password has been encoded with the ENCODE function.

What is the problem you experiencing?

If this has to do with connecting to the database as an SQL user then you might want to take a look at KB 20143:

http://progress.atgnow.com/esprogress/Group.jsp?bgroup=progress&id=20143

Just curious:
Are you moving away from Progress as a database as well?
Are you really going to use .NET for Bussiness Logic?

Casper.
 
Casper,

First of all, I work for a software development company which has a customer who has decided migrate its Business Logic from Progress to .Net. In a first stage, they will migrate just the logic, but in a second stage (not sure when) they will migrate the database to probably Oracle.

So we have to do that .Net works with a Progress database, through the ODBC driver provided by Datadirect. By the way, the Progress version is 9.1D.

The problem that I'm trying to resolve is the following. The user's passwords in the database were encoded using the progress function ENCODE. So when you do the login in progress, you compare the value entered by the user with the one stored in the database using the ENCODE funcition:
IF ENCODE(v-pwd) = _user._password
THEN OK
ELSE WRONG.

What I need to do is the same comparison in .Net, and I don't know if there is any way to do it.
 
First of all, make sure they have SP9 installed, since lots of issues regarding SQL have been resolved there. (9.1E04 would be even better, but I suppose since you are in a migration this isn't feasable).

Regarding your question. If you use odbc then the user name/password in the odbc driver is resolved at the database to match the _user entry. So if you provide the DSN with the correct user-name password then there should be no issue.

If you have SP9 then the datadirect 4.1 driver is also included in a client install of Progress. So that would be the best driver to use.

If you also want to update the database using SQL then remember that database integrity within a Progress database is handled through triggers. With SQL updates those triggers aren't fired. So you have to take care of this yourself. (Probably by making Java database triggers).

Too bad you have this old version of Progress to deal with. Since lots of improvements have been made. I think it would be wise to change database as soon as possible. SQL in 9.1D access in 9.1D is far from perfect.

Casper
 
Fortunately SP9 is installed. I understood your ponit and while I was reading I figured out the way to resolve it. I can try a connection to the database with the usr/pwd entered by the user and if it returns no error, then OK else WRONG.

Thanks again.
 
Back
Top