External Auth Question

Duane Schaub ( dschaub@terraworld.net )
Tue, 21 Jul 1998 10:24:13 -0500

I tried the Beta Emerauth (6/19/98) and found a couple of problems. First,
I did read the DOC and inserted the new registry keys.

1. The old emerauth has the username/password fields reversed when it
reads the registry. I can't tell if the new one does or not.

2. When running Serv-u, I get:
71130470: Jul 21 10:08:20 1998 EmerSupp:: Entering function
71130470: Jul 21 10:08:20 1998 EmerSupp:: Registry ODBCDataSource read
71130470: Jul 21 10:08:20 1998 EmerSupp:: Registry UserName read
71130470: Jul 21 10:08:20 1998 EmerSupp:: Registry Password read
71130470: Jul 21 10:08:20 1998 EmerSupp:: Registry ESID read
71130470: Jul 21 10:08:20 1998 EmerSupp:: No valid connections
71130470: Jul 21 10:08:21 1998 EmerSupp:: Atleast one connection made
71130470: Jul 21 10:08:21 1998 EmerSupp:: Terra Net, Inc
71130470: Jul 21 10:08:21 1998 EmerSupp:: (LICENSE #)
71130470: Jul 21 10:08:21 1998 EmerSupp:: Terra Net, Inc
71130470: Jul 21 10:08:21 1998 EmerSupp:: (LICENSE #)
71130470: Jul 21 10:08:21 1998 EmerSupp:: Terra Net, Inc
71130470: Jul 21 10:08:21 1998 EmerSupp:: (LICENSE #)
71130470: Jul 21 10:08:21 1998 EmerSupp O Successfull open of DLL
71130470: Jul 21 10:08:21 1998 DllMain New process attach
71130470: Jul 21 10:08:31 1998 HandleClie 25: (FALSE Return: No User)
71130470: Jul 21 10:08:31 1998 DllMain Thread attach
71130470: Jul 21 10:08:35 1998 HandleClie 3: SUNQUEST
71130470: Jul 21 10:08:35 1998 HandleClie 3:

in the Emerauth log file and then serv-u dies.

Suggestion? I did add the verifyftpuser routine that is listed in the
docs, but I found that the verifymailuser procedure is considerably
different from the one listed in the docs. Using Enterprise manager, the
current verifymailuser is:

if exists (select * from sysobjects where id =
object_id('dbo.VerifyMailUser') and sysstat & 0xf = 4)
drop procedure dbo.VerifyMailUser
GO

CREATE PROCEDURE VerifyMailUser @username varchar(32), @domain varchar(32),
@esid integer AS
Select Login, Shell, EMail, d.MailDomain, Password, HomeDir
From MasterAccounts ma, SubAccounts sa, Groups g, Domains d, AccountTypes at
Where ma.CustomerID = sa.CustomerID
AND ma.GroupID = g.GroupID
AND g.DomainID = d.DomainID
AND at.AccountType = sa.AccountType
AND at.ExternalSystemID = @esid
AND ( Login = @username
OR shell = @username
OR Email = @username + "@" + @domain
)

UNION
Select Login, Shell, EMail=a.Alias, d.MailDomain, Password, HomeDir
From MasterAccounts ma, SubAccounts sa, Groups g, Domains d, Aliases a,
AccountTypes at
Where ma.CustomerID = sa.CustomerID
AND ma.GroupID = g.GroupID
AND g.DomainID = d.DomainID
AND sa.AccountID = a.AccountID
AND at.AccountType = sa.AccountType
AND at.ExternalSystemID = @esid
AND a.Alias = @username + "@" + @domain

GO

GRANT EXECUTE ON dbo.VerifyMailUser TO Emerald
GO

=======
Now this looks strange because it appears that it would drop the procedure
everytime that it runs. The proc listed in the docs does not contain the
DROP, the UNION, or the GRANT EXECUTE. There is a VerifyNTMuser that does
almost the same thing.

The VerifyFTPUser does not drop or union, etc. Is this the problem?

Duane.

==========================================================================
Duane Schaub, President |Terra World, Inc - Connecting The Planet
Terra World, Inc. |Southeast Kansas' Leading Provider
200 Arco Place, Suite 252 |Flat Fee - Never an hourly Charge
Independence, Kansas 67301 |Where Service is Top Priority!
Voice (316) 332-1616 |http://www.terraworld.net
FAX: (316) 332-1451 |dschaub@terraworld.net
===========================================================================