Solved

$$Loginuserform

Posted on 2004-08-22
22
492 Views
Last Modified: 2013-12-18
hi all,

I am developing a login for website using $$Loginuserform. When the user enters a username and password , i want a process to run in the back ground and check if the username and password exist. If it does exist, take the user to their user profile...

Was curious to know how to do this?

Any help greatly appreciated,
Jay
0
Comment
Question by:jaggernat
  • 10
  • 7
  • 4
  • +1
22 Comments
 
LVL 19

Expert Comment

by:madheeswar
ID: 11867333
copy login form from domcfg.ntf

and in the $$return field place the redirect URL to person's document
0
 
LVL 15

Expert Comment

by:Bozzie4
ID: 11867616
Setup the customized login form.  The customization of the $$Return field is not something I would suggest, because this means you will always to to the user profile, for every appl. on your server.

Other possibilities include
- create an agent to open the correct profile document.  Call the agent using http://server/db.nsf/myAgent?Openagent&login  .  The user will be prompted to login, the agent executes under the correct user, and can redirect to the userprofile (or not)
- create a form , that retrieves the data of the correct user profile using @dblookups.  Also use the &login notation, to let your user login.
- ...

cheers,

Tom
0
 
LVL 63

Expert Comment

by:Zvonko
ID: 11879332
Tom already mention it: it is a bad idea to change the logon behaviour for ALL user logins.

I understood your question like this:
1.) You have an application databas: Staff.nsf
2.) That database has a Form or a Page: Employment
3.) On that Form you have a link "Existing User: [LOG IN]"
4.) Clicking on that link or button or image should accept userid and password and open Users Profile Document.

Are those assumptions correct?

0
 
LVL 10

Author Comment

by:jaggernat
ID: 11883265
yes , perfect..
0
 
LVL 15

Expert Comment

by:Bozzie4
ID: 11883697
Then the link in the "Existing user: log in" button should point to
 http://server/db.nsf/myAgent?Openagent&login

The agent should have code like this:

dim s as new notessession
dim db as notesdatabase
dim profiledoc as notesdocument
set db = s.currentdatabase
'Set notesDocument = notesDatabase.GetProfileDocument( profilename$ [, uniqueKey$ ] )
set profiledoc = db.getprofiledocument( "TheProfileName", s.effectiveusername )
' profile will be created if it doesn't exist
print "[/" + db.filepath + "/_/"+profiledoc.universalid +"?Editdocument]"




0
 
LVL 15

Expert Comment

by:Bozzie4
ID: 11883759
The agent should have the "Run as webuser" property enabled for this to work.
0
 
LVL 63

Expert Comment

by:Zvonko
ID: 11884345
Tom, why Agent?
0
 
LVL 15

Expert Comment

by:Bozzie4
ID: 11884530
Well, because it's a profile document (I assume it's an actual profile document)

Opening a form is of course also possible ...
0
 
LVL 63

Expert Comment

by:Zvonko
ID: 11884867
When someone say Profile document it does not mean always the Profile documents hidden from views. It can be any sort of Configuration documents.

My intention was to open a Page at LOGIN click and decide in that Page where to redirect the user (after he correctly logged in). For example if a Profile Document does not exist for that user, then we can offer a Form to create a new Profile Document. If Profile is found, then simply open his personal Profile document.

Basicaly does the user never see the Page which contains the decision formulas for logged in users.

The loging can be a Session login or a browser BasicAuthentication login, it does not matter.

0
 
LVL 10

Author Comment

by:jaggernat
ID: 11885173
yeaa  thats a good idea zvonko...but  bozzie's solution sounds good too.


any idea ,,how we do the login authentication ??

thanks,
J

0
 
LVL 63

Expert Comment

by:Zvonko
ID: 11886413
The login authentication is done by Domino. You have not to add anything to the login process.
When the user clicks on your LOGIN link, then he gets redirected to a Form with the ?openForm&login parameter. This parameter ensures that the user is logged in.
Anyway, if he was already logged in or he needs to log in, you have nothing to do with the login process.
The only thing you can trust is when the user reaches your Form that he is already logged in.
In that form you can run a formula and lookup its Profile document based on his @UserName. If the document is NOT found in that database where you manage the user Profiles, then you offer to the user a Form for creating a new Profile document.
If the Profile document is found for that user name, then simply do forward the user to his Profile document.
Basicaly does the user never see the document with the lookup and decission formula.

The Form can also be a Page because no user input is required in that decission formula.

If taht process is OK for you, then I can make the neccessary @Formula for you.

0
Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

 
LVL 10

Author Comment

by:jaggernat
ID: 11887470
this is what i did exactly:

on the login.jpg ,i created a hotspot and pointed it to $$Loginuserfom (from domcfg.nsf).

now ,,once user logs in where should he go ..

thanks,
J
0
 
LVL 63

Expert Comment

by:Zvonko
ID: 11887531
No no no.

The $$LoginUserForm is for ALL user authentication. That is wrong and dangerous approach.

0
 
LVL 10

Author Comment

by:jaggernat
ID: 11887557
so where do i point the login.jpg to?  once the user clicks login.jpg where should it go and what should it do?


thanks,
J
0
 
LVL 63

Accepted Solution

by:
Zvonko earned 500 total points
ID: 11887995
So far you have no profiles so let us discuss about NEW USER image.
When a user clicks on that image you could open a Form to compose a new user document profile.
The formula is simmelar as the last formula for ApplyJobs Form:
@Command([Compose];"UserProfile")

For that does the editing user need not to be logged on. He can stay Anonymous.
When the user finished his entries for UserName, EmailAddress and Password in the Form "UserProfile", then you can run an Agent which lookups your server's names.nsf for such a UserName, and if not already present, then create a Person document for that user, encrypt his InternetPassword in his Person document, and first after that store the UserProfile document in your application database.
You can also block the activation of user creation and suspend it until he has responded to an email sent to his email address for account activation.
First after that all you can allow the user to logon to Domino and click on a image which already holds his username because he previously logged on. That image click opens the UserName from a prepared View of all UserNames in your application.

Does that all make sense to you?
I know it is too much for the beginning, but you cannot lookup Profile documents when you have none.



0
 
LVL 63

Expert Comment

by:Zvonko
ID: 11888011
If you create a user.id for me and send it to the address in my EE profile, then I can support you directly in your database.
0
 
LVL 10

Author Comment

by:jaggernat
ID: 11888150
i can understand what you are saying..

lets break this down into chunks...

how do i proceed  with writing an Agent which lookups your server's names.nsf for such a UserName, and if not already present, then create a Person document for that user, encrypt his InternetPassword in his Person document??

thanks,
J
0
 
LVL 63

Expert Comment

by:Zvonko
ID: 11888192
Is it possible for you to allow me to access your Server?
0
 
LVL 10

Author Comment

by:jaggernat
ID: 11888231
no zvonko...i am just a developer working on the client machine...i dont have access to server except for my login and password...

J
0
 
LVL 63

Expert Comment

by:Zvonko
ID: 11888280
Ok, send me your email address and I can send you an example.
Or do you prefer doing it here on EE?
0
 
LVL 10

Author Comment

by:jaggernat
ID: 11888293
email is fine          :        jaggernat@yahoo.com

0
 
LVL 63

Expert Comment

by:Zvonko
ID: 11988077
Here the detail answer:
The image hotspot link contained this URL: SelectUser?OpenPage&login

The page SelectUser contained only this one ComputedText formula:
"[<script>window.location='/"+@ReplaceSubstring(@Subset(@DbName;-1);"\\";"/")+"/UserProfiles/"+@ProperCase(@Name([CN];@UserName))+"?EditDocument'</script>]"

Of course has the View "UserProfiles" to be sorted by first column where the UserNames were contained in @ProperCase

0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

You’ve got a lotus Domino web server, and you have been told that “leverage browser caching” is a must do. This means that we have to tell the browser everywhere in the web to use cache. In other words, we set (and send) an expiration date in the HT…
Lack of Storage capacity is a common problem that exists in every field of life. Here we are taking the case of Lotus Notes Emails, as we all know that we are totally depend on e-communication i.e. Emails. This article is fully dedicated to resolvin…
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, Just open a new email message.  In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…

747 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now