Users

The process of creating users can be automated by using the Extranet app.

Websites can have a number of different types of users, both frontend and backend, e.g.:

  • Backend marketing personnel, who use the Dynamicweb Marketing tools to create and execute campaigns
  • Backend administrators and editors
  • Registered Customers
  • Frontend editors
  • Etc.

In this article you can read all about users in Dynamicweb - creating them, the user fields available to you, and the tools associated with them.

Users can be created, edited and deleted from the backend as, well as the frontend through the Extranet app.

To create a new user manually:

  • Go to the Users  area
  • Right-click the user group you want to add a user to
  • Click New user (Figure 2.1)
Figure 2.1 Click 'new user' to start creating a new user

This takes you to the user view, from where you can fill out all the relevant details, permissions, and so forth – before saving (and creating) the user.

At the top of the user view, you will see the user ribbon tabs (Figure 2.2) – read about the different actions you can take from there below.

Figure 2.2 The user ribbon tabs

Below the user ribbon tabs, you will see the user fields –  here’s what you can do with them.

Once a user has been created, you can right-click the user and choose between several actions ({fgureref}).

Figure 3.1 Right-click a user to access a number of actions you can take, e.g. deleting or moving the user

You can:

  • Edit a user (you can also access the edit view simply clicking on a user)
  • Copy a user
  • Deactivate a user
  • Delete a user
  • Add groups to a user, or remove a user from a group
  • You can also create a new user from the right-click menu

At the most basic level, a user needs only a user name and a password (Figure 4.1).

Figure 4.1 The user info fields are for the most basic information on a user - the user name and password

Passwords may be generated using the cog-icon, or entered manually.

Encryption can be enabled using the Encrypt checkbox. Once saved, an encrypted password cannot be viewed from the backend, but can only be reset - or you can manually send the user a password recovery email (Figure 4.2).

This stores a password recovery token with an expiration date on the user. Use the Page selector to select a page with an Extranet module attached, and link the user to the sign-in page with RecoveryToken=[token] in the URL to load the password recovery template.

Figure 4.2 Password recovery emails

You can enable default password encryption – and customize the encryption options – from the user management advanced configuration settings.

Aside from a user name and a password, the following fields (Figure 5.1) are available to you.

This is where you (or the users) provide information about their name, title, address, mobile phone number, preferred currency, etc.

Figure 5.1 User fields for storing personal information about a user

Most of these are self-explanatory, but for those who aren’t, here’s an explanation.

  • For the user email field, you can validate the provided email by clicking on the red X or green checkmark icon to the right of the field. The validation process checks both the formatting, and whether or not the domain exists and has a mail server record.
  • Speaking of emails, the email permission checkbox is also located here. Be advised, that it is illegal in most countries to send unsolicited (e.g. spam) marketing emails to people.
  • You can select a default currency and stock location for the user – of the currencies and stock location created on your solution. The currency selected will overrule the standard currency settings, but only for this particular user.

In addition to basic and personal information, you can store the work details of a user (Figure 6.1).

Figure 6.1 Fields for storing work-related information about your users

The only field which requires an explanation is the VAT reg number.

A VAT identification number is used in many countries for value added tax purposes – in Denmark, the VAT identification number is called a CVR-number, in Germany an USt-IdNr., in the UK a VAT Reg No – and so forth.

If a user owns a company, or is acting on behalf of one, you can store the VAT identification number here – and access it by using the correspondinf template tag in your template.

 

 

With the user GeoLocation fields (Figure 7.1), you can store a geo-location for a user.

Figure 7.1 The geolocation fields

You can use geo-locations to e.g. create maps of your users and user groups, using the maps app.

The start page field (Figure 8.1) can be used to set a custom start page for the user.

Figure 8.1 The start page field

If you have any custom or system fields on your solution, this is where they show up.

Figure 9.1 User system and custom fields

Read more about creating custom fields here.

In the Groups-field (Figure 10.1), you can see which groups a user belongs to – and add or remove groups to suit your purpose.

Figure 10.1 The groups-field

To add a group, click he folder icon with the green plus sign – to remove a group, click on it, then click the folder icon with the red X.

If your solution uses live prices, you can disable these for a specific user by checking the Disable live prices checkbox (Figure 11.1).

Figure 11.1 Disable live prices by checking this checkbox

At the bottom of a user, you can see audit information (Figure 12.1).

Figure 12.1 The user audit information

You can see when and who created or updated a user – when their email permission settings were updated, and when they last logged in.

The User ribbon bar provides access to a number of more advanced tools related to users, e.g. additional addresses - and to overviews of how the user has interacted with other parts of the solution, e.g. orders placed or loyalty points received.

You can add additional addresses to a user by switching to the Addresses view and clicking Add address in the ribbon (Figure 14.1).

Figure 14.1 The Addresses view lets you add additional addresses to a user

This opens a new page for adding an additional address to the user (Figure 14.2).

Figure 14.2 Adding an additional address

The primary and secondary addresses can be edited from frontend using the Extranet app Edit profile functionality.

From the User ribbon, you can access information about the user and how they interact with your solution (Figure 15.1).

Figure 15.1 The user information buttons

Using these buttons you can:

From the user ribbon, you have access to a number of custom user-specific settings (Figure 16.1).

Figure 16.1 The user-specific custom settings are accessed by clicking the appropriate button in this menu

With these settings, you can:

  • Select a custom editor configuration for the user.
  • Send the user details to someone
  • Allow (or disallow) backend login for the user
  • Open the impersonation window for the user – read about impersonation.
  • Select an item type to extend the user properties of this user with.

Most of these settings can also be configured on the group level – read more here.

From the user ribbon Options tab (Figure 17.1), you can customize the user type, and you can make the user account expire at a certain point in time.

Figure 17.1 The options ribbon tab

To do so:

  • Click the appropriate user type to change the user type
  • Specify a time interval between which the user will be valid

By default, a user will never expire – and will be a default user.

On user types

Dynamicweb has three user types, representing three different levels of access to the solution.

Default users have no access to critical settings, but can access all areas required for normal maintenance purposes.

The Admin user group has access to semi-critical settings, such as:

  • General system and solution settings
  • Search index settings
  • Editor configuration settings
  • Customization of URLs
  • Security settings concerning spam and SQL injection etc.
  • Access to the Control panel – including advanced app settings
  • The ability to install app themes
  • The ability to generate image URLs and Navigation XML

The Administrator user group has access to all of the above, and the most critical settings such as:

  • The ability to change global settings
  • Managing Dynamicweb versions
  • Host header setup
  • WebDAV settings
  • Database configuration

Remember that you can create custom user groups, and control their access by setting permissions on content.

Database

These are the tables relevant for Users and User groups in the Dynamicweb database:

AccessUser

Contains all the users and groups in Dynamicweb

Field name Data type Length
AccessUserId int 4
AccessUserParentId int 4
AccessUserUserName nvarchar 255
AccessUserPassword nvarchar 255
AccessUserName nvarchar 255
AccessUserDepartment nvarchar 255
AccessUserEmail nvarchar 255
AccessUserPhone nvarchar 255
AccessUserFax nvarchar 255
AccessUserGroups nvarchar 255
AccessUserType int 4
AccessUserValidFrom datetime 8
AccessUserValidTo datetime 8
AccessUserPages nvarchar 255
AccessUserAreas nvarchar 255
AccessUserSettings nvarchar Max
AccessUserModules nvarchar Max
AccessUserInformation nvarchar Max
AccessUserMyFolder nvarchar 255
AccessUserAddress nvarchar 255
AccessUserAddress2 nvarchar 255
AccessUserZip nvarchar 255
AccessUserCity nvarchar 255
AccessUserCountry nvarchar 255
AccessUserJobTitle nvarchar 255
AccessUserCompany nvarchar 255
AccessUserPhonePriv nvarchar 255
AccessUserMobile nvarchar 255
AccessUserCustomerNumber nvarchar 255
AccessUserRedirectOnLogin nvarchar 255
AccessUserCurrencyCharacter nvarchar 3
AccessUserRead bit 1
AccessUserAdsiMap nvarchar 255
AccessUserPasswordDate datetime 8
AccessUserLastName nvarchar 255
AccessUserMiddleName nvarchar 255
AccessUserActive bit 1
AccessUserImage nvarchar 255
AccessUserBusiness nvarchar 255
AccessUserInitials nvarchar 255
AccessUserComment nvarchar Max
AccessUserLevel int 4
AccessUserInheritAddress bit 1
AccessUserWeb nvarchar 255
AccessUserSort int 4
AccessUserStatus int 4
AccessUserStatusBegin datetime 8
AccessUserStatusEnd datetime 8
AccessUserStatusComment nvarchar 255
AccessUserEditorConfigurationId int 4
AccessUserHideStat bit 1
AccessUserCartId nvarchar 50
AccessUserAllowBackend bit 1
AccessUserApprovalKey nvarchar 50
AccessUserShopId nvarchar 50
AccessUserExternalId nvarchar 250
AccessUserSortXML nvarchar Max
AccessUserGeoLocationLat float 8
AccessUserGeoLocationLng float 8
AccessUserGeoLocationIsCustom bit 1
AccessUserGeoLocationImage nvarchar 255
AccessUserGeoLocationHash nvarchar 32
AccessUserNewsletterAllowed bit 1
AccessUserCreatedOn datetime 8
AccessUserUpdatedOn datetime 8
AccessUserCreatedBy int 4
AccessUserUpdatedBy int 4
AccessUserEmailPermissionGivenOn datetime 8
AccessUserEmailPermissionUpdatedOn datetime 8
AccessUserState nvarchar 255
AccessUserVatRegNumber nvarchar 20
AccessUserDisableLivePrices bit 1
AccessUserLastLoginOn datetime 8
AccessUserPointBalance float 8
AccessUserAdministratorInGroups nvarchar Max
AccessUserTitle nvarchar 255
AccessUserFirstName nvarchar 255
AccessUserHouseNumber nvarchar 255
AccessUserLastOrderDate datetime 8
AccessUserPasswordRecoveryToken nvarchar 128
AccessUserPasswordRecoveryTokenExpirationTime datetime 8
AccessUserGroupSmartSearch nvarchar 50
AccessUserGroupSmartSearchLastCalculatedTime datetime 8
AccessUserExported datetime 8
AccessUserItemType nvarchar 255
AccessUserItemId nvarchar 255
AccessUserDefaultUserItemType nvarchar 255
AccessUserStockLocationID bigint 8
AccessUserCountryCode nvarchar 2
AccessUserAddressTitle nvarchar 255
AccessUser_VIPContactMail bit 1
AccessUser_ContentMarketingAndEcommerceDeveloperExpire datetime 8
AccessUser_C0Certified bit 1
AccessUser_C0CertifiedExpire datetime 8
AccessUser_C1Certified bit 1
AccessUser_C1CertifiedExpire datetime 8
AccessUser_C3Certified bit 1
AccessUser_C3CertifiedExpire datetime 8
AccessUser_C2Certified bit 1
AccessUser_C2CertifiedExpire datetime 8
AccessUser_C4Certified bit 1
AccessUser_C4CertifiedExpire datetime 8
AccessUser_DWEmployee bit 1
AccessUser_ErpSystem nvarchar Max
AccessUser_EmailAddressValid bit 1
AccessUser_NaceCode nvarchar Max
AccessUser_MVP bit 1
AccessUser_Owner nvarchar Max
AccessUser_ParentCountry nvarchar Max
AccessUser_PamNewsletter bit 1
AccessUser_ParentCategory nvarchar Max
AccessUser_ParentPartnerType nvarchar Max
AccessUser_PrimaryLineOfBusiness nvarchar Max
AccessUser_PartnerAccountNumber nvarchar Max
AccessUserUserAndGroupType nvarchar 255
DefaultPermission int 4
AccessUser_GDPRNewsletterConsent bit 1
AccessUser_GDPRNewsletterConsentTimestamp datetime 8
AccessUser_GDPRNewsletterConsentAcquiredBy nvarchar Max
AccessUser_FinancialInformation bit 1

AccessUserAddress

For users with multiple defined addresses extra addresses are defined here and linked via AccessUserId.

Field name Data type Length
AccessUserAddressId int 4
AccessUserAddressUserId int 4
AccessUserAddressType bit 1
AccessUserAddressCallName nvarchar 255
AccessUserAddressCompany nvarchar 255
AccessUserAddressName nvarchar 255
AccessUserAddressAddress nvarchar 255
AccessUserAddressAddress2 nvarchar 255
AccessUserAddressZip nvarchar 255
AccessUserAddressCity nvarchar 255
AccessUserAddressCountry nvarchar 255
AccessUserAddressPhone nvarchar 255
AccessUserAddressCell nvarchar 20
AccessUserAddressFax nvarchar 255
AccessUserAddressEmail nvarchar 255
AccessUserAddressCustomerNumber nvarchar 255
AccessUserAddressUId nvarchar 25
AccessUserAddressState nvarchar 255
AccessUserAddressIsDefault bit 1
AccessUserAddressExported datetime 8
AccessUserAddressPhoneBusiness nvarchar 255
AccessUserAddressDefaultAddressCustomFields bit 1
AccessUserAddressCountryCode nvarchar 2

AccessUserSecondaryRelation

Contains AccessUserId of users (AccessUserSecondaryRelationUserID) who can log in on behalf of other users (AccessUserSecondaryRelationSecondaryUserId) (i.e. Impersonate them).

Field name Data type Length
AccessUserSecondaryRelationUserId int 4
AccessUserSecondaryRelationSecondaryUserId int 4
AccessUserSecondaryRelationAutoId int 4

CustomField

Contains definitions of custom fields on users

Field name Data type Length
CustomFieldSystemName nvarchar 50
CustomFieldTableName nvarchar 255
CustomFieldType nvarchar 50
CustomFieldName nvarchar 255
CustomFieldOptions nvarchar Max
CustomFieldSort int 4
CustomFieldAutoId int 4