Skip to main content

I'm seeking a way to ascertain where jBASE is verifying login credentials via an AccuTerm script, or at least show a verbose log or trace of the connection attempt.

An AccuTerm 7.3a user logs into their workstation using domain credentials. Those same credentials have been stored by AccuTerm in the workstation's user registry for use when connecting to the jBASE server. The jBASE login fails; jBASE then offers a different login scenario (possibly using local user credentials?), requiring manual entry of the credentials, which succeeds. These are the same credentials saved in the registry and Active Directory.

AccuTerm 8.1. behaves similarly.

This is jBASE 5.2.23 on Windows Server 2016...

Any suggestions?

Regards,

Bob Wyatt

.



------------------------------
Bob Wyatt
Integration/Support Specialist
Ashwood Computer Inc
Cincinnati OH US
------------------------------

I'm seeking a way to ascertain where jBASE is verifying login credentials via an AccuTerm script, or at least show a verbose log or trace of the connection attempt.

An AccuTerm 7.3a user logs into their workstation using domain credentials. Those same credentials have been stored by AccuTerm in the workstation's user registry for use when connecting to the jBASE server. The jBASE login fails; jBASE then offers a different login scenario (possibly using local user credentials?), requiring manual entry of the credentials, which succeeds. These are the same credentials saved in the registry and Active Directory.

AccuTerm 8.1. behaves similarly.

This is jBASE 5.2.23 on Windows Server 2016...

Any suggestions?

Regards,

Bob Wyatt

.



------------------------------
Bob Wyatt
Integration/Support Specialist
Ashwood Computer Inc
Cincinnati OH US
------------------------------

An update to my own post...

The jBASE version is not 5.2 - it is 5.7.2.1...

I'm looking to trace/debug the AccuTerm user I.D. info passed to the domain controller.

My intent is to verify it is using the correct AD/domain controller; a couple of years ago, they upgraded both the domain and jBASE servers; of late, they have found that for some things to work, they need to keep the 2012 domain server up; but we're presuming that the user parameters are being sent to the 2016 AD/domain server.

Any suggestions, whether jBASE, AccuTerm, or Microsoft would be appreciated. 



------------------------------
Bob Wyatt
Integration/Support Specialist
Ashwood Computer Inc
Cincinnati OH US
------------------------------

An update to my own post...

The jBASE version is not 5.2 - it is 5.7.2.1...

I'm looking to trace/debug the AccuTerm user I.D. info passed to the domain controller.

My intent is to verify it is using the correct AD/domain controller; a couple of years ago, they upgraded both the domain and jBASE servers; of late, they have found that for some things to work, they need to keep the 2012 domain server up; but we're presuming that the user parameters are being sent to the 2016 AD/domain server.

Any suggestions, whether jBASE, AccuTerm, or Microsoft would be appreciated. 



------------------------------
Bob Wyatt
Integration/Support Specialist
Ashwood Computer Inc
Cincinnati OH US
------------------------------

Hi Bob - 

I don't think AccuTerm is involved here, except maybe the script used to read the credentials from the registry. This would be a custom script, not something supplied with AccuTerm.

jBASE telnet server prompts for user name and password, which I presume are supplied by the AccuTerm script. These are passed to the Windows API LogonUser to authenticate the user. If the user name is in for form of domain\\username, then the domain is extracted from this string and passed to LogonUser as the domain argument. Otherwise the domain is null.

The only other variable here is the LogonProvider value in the jBASE telnetd registry settings. It could be the default provider (0), NT4 (2) or NT5 (3). This should be a value in HKLM\\Software\\JAC\\jBASE Telnetd Server\\Current Version (but it could be HKLM\\Software\\WOW6432Node\\JAC\\jBASE Telnetd Server\\CurrentVersion).

You might need to look into how LogonUser sorts out the AD for authenticating.

Thanks, Pete



------------------------------
Peter Schellenbach
Rocket Internal - All Brands
------------------------------

An update to my own post...

The jBASE version is not 5.2 - it is 5.7.2.1...

I'm looking to trace/debug the AccuTerm user I.D. info passed to the domain controller.

My intent is to verify it is using the correct AD/domain controller; a couple of years ago, they upgraded both the domain and jBASE servers; of late, they have found that for some things to work, they need to keep the 2012 domain server up; but we're presuming that the user parameters are being sent to the 2016 AD/domain server.

Any suggestions, whether jBASE, AccuTerm, or Microsoft would be appreciated. 



------------------------------
Bob Wyatt
Integration/Support Specialist
Ashwood Computer Inc
Cincinnati OH US
------------------------------

Hy
i use this program in D3 to get the username, but its simple to convert to JBASE, its uses Accuterm Scripting 

SUBROUTINE GET.WINDOWS.USERNAME(USER.NAME)
PRECISION 0
EQU ESC TO CHAR(27), STX TO CHAR(2), CR TO CHAR(13), EM TO CHAR(25)
SCR='InitSession.Output MyUserName() & Chr$(13)'
SCR=SCR:EM:'End Sub'
SCR=SCR:EM:'Private Declare Function SHGetFolderPath& Lib "shfolder.dll" Alias "SHGetFolderPathA" (ByVal hwnd&,ByVal fldr&,ByVal tok&,ByVal dw&,ByVal Path$)'
SCR=SCR:EM:'Function MyUserName() As String'
SCR=SCR:EM:'Dim path As String'
SCR=SCR:EM:'On Error Resume Next'
SCR=SCR:EM:'path=String$(1000,0)'
SCR=SCR:EM:'SHGetFolderPath 0,40,0,0,path'
SCR=SCR:EM:'MyUserName=path'
SCR=SCR:EM:'End Function'
SCR=SCR:EM:'Sub Dummy'
*SCR = 'echo %username%'
PRINT ESC:STX:'R':SCR:CR:
ECHO OFF
PROMPT ''
INPUT USER.NAME:
PROMPT ''
ECHO ON
USER.NAME = TRIM(FIELD(USER.NAME,"\\",3))
RETURN
END



------------------------------
Alberto Leal
System Analyst
Millano Distribuidora de Auto Pecas Ltda
Varzea Grande MT BR
------------------------------

Hi Bob - 

I don't think AccuTerm is involved here, except maybe the script used to read the credentials from the registry. This would be a custom script, not something supplied with AccuTerm.

jBASE telnet server prompts for user name and password, which I presume are supplied by the AccuTerm script. These are passed to the Windows API LogonUser to authenticate the user. If the user name is in for form of domain\\username, then the domain is extracted from this string and passed to LogonUser as the domain argument. Otherwise the domain is null.

The only other variable here is the LogonProvider value in the jBASE telnetd registry settings. It could be the default provider (0), NT4 (2) or NT5 (3). This should be a value in HKLM\\Software\\JAC\\jBASE Telnetd Server\\Current Version (but it could be HKLM\\Software\\WOW6432Node\\JAC\\jBASE Telnetd Server\\CurrentVersion).

You might need to look into how LogonUser sorts out the AD for authenticating.

Thanks, Pete



------------------------------
Peter Schellenbach
Rocket Internal - All Brands
------------------------------
Thank you, Pete – very helpful!

Regards,

Bob Wyatt
Integration/Support Specialist
(609) 405-1151

Hi Bob - 

I don't think AccuTerm is involved here, except maybe the script used to read the credentials from the registry. This would be a custom script, not something supplied with AccuTerm.

jBASE telnet server prompts for user name and password, which I presume are supplied by the AccuTerm script. These are passed to the Windows API LogonUser to authenticate the user. If the user name is in for form of domain\\username, then the domain is extracted from this string and passed to LogonUser as the domain argument. Otherwise the domain is null.

The only other variable here is the LogonProvider value in the jBASE telnetd registry settings. It could be the default provider (0), NT4 (2) or NT5 (3). This should be a value in HKLM\\Software\\JAC\\jBASE Telnetd Server\\Current Version (but it could be HKLM\\Software\\WOW6432Node\\JAC\\jBASE Telnetd Server\\CurrentVersion).

You might need to look into how LogonUser sorts out the AD for authenticating.

Thanks, Pete



------------------------------
Peter Schellenbach
Rocket Internal - All Brands
------------------------------
Pete,

On the system in question, the folder “HKLM\\Software\\JAC” does not exist in the registry.

However, the “HKLM\\Software\\WOW6432Node\\JAC\\jBASE Telnetd Server\\CurrentVersion” folder does exist with 2 entries within it:

[cid:image001.png@01DA6A5D.BD9FA4F0]

In case the image does not come through, it shows a “(Default)” with the value not set and a “LogonPrompt” set to “User name:”.

Pardon my ignorance, but should the (Default) value be the domain name?

Regards,

Bob Wyatt
Integration/Support Specialist
(609) 405-1151