Every person raising a support ticket in your helpdesk through any channel becomes a contact automatically. If you let customers create tickets without logging in, a new contact will be created with the email they provide in the ticket form.
Make your customers log in before they create a ticket or look at your knowledge base and forums by creating a new account or using Single Sign-on through Google or Facebook. In such cases, the email address will be the primary field through which the contact gets created.
A new user can create an account by clicking the Sign up button on the top right corner of the helpdesk.
The sign up form will collect the user's name and email address. You can also set up captcha to prevent spam.
Repeated users can click on login on the top right corner of the customer portal. Even new users can click on login, use the SSO to login for the first time.
If you would like to restrict your customers from signing up and/or logging into the Customer Portal, you can modify the settings as required under Admin > Channels> Portals > Settings. A quick guide on how you can customize this access can be found here.
User activation email
You can enable user activation email for users creating a new account and make your account secure from spammers. Once a user signs up, an email notification containing the activation URL, is sent out to them on their registered email address. The users can click on it and create a password for their Freshdesk account. This can be managed under Admin > Workflows> Email Notifications > Requester Notification tab.