Application Login and Security


#1

Hi everyone I’m a total newbie to Clarion. In fact I’m still working through the Learning Clarion chapters.

I want to create a small IT Job Card application to run on my LAN. I want to present a user login screen when the app starts. It should be able to get the current Windows user name and fill it in, and then validate the password entered by the user.

Edit: I would also like to get the IP address and/or PC name of the person logging in.

Based on that I want to be able to enable/disable menu items. For example, the user “ITManager” must be able to see all the menus and forms, but most other users should only be able to see their own Job Card entries.

I know how to do all of this in Microsoft Access, but that’s not the point. I’m sure that I’m not the first person to try this, and at this stage I don’t even have the knowledge to reinvent the wheel.

Any code samples, pointers, etc would be gratefully received.


#2

Hi Donn,

Easy one first - add the following to the ‘Inside the Global MAP’ embed point…

INCLUDE(‘CWUTIL.INC’),ONCE

If you’re creating an ABC application then that’s all you need.
If your’e creating a Legacy (AKA Clarion) template chain application then you need to find the Global Properties for the application and tick the ‘Enable use of ABC Classes’

To get the user name just call the GetUserName() function that returns a STRING eg

message('UserName ’ & GetUserName())

Getting the local IP address requires some Windows API prototypes and a function.
What version of Clarion are you using as it’s easiest to create a TXA that you can import?

Graham


#3

Hi,

Get SecWin from CapeSoft:
http://www.capesoft.com/accessories/Secwinsp.htm

Regards

Johan de Klerk


#4

Thanks @Graham_Dawson I will try that out.
I’m using Clarion 10

Thanks @Johan_de_Klerk I will try to add that in when I get to that point. I will probably post the code on GitHub (or should I use something else?) when I have got something that works.