(Example) Use Anonymous Authentication in a Process-Based App

This example shows how to use an anonymous form in a process-based app.

An anonymous form is an eForm that a runtime app user can submit with no authentication credentials. This is useful if you want people to use your process-based app with no user account.

Background and Setup

Good to Know

  • This example uses the Customer Enquiry app from the AgilePoint NX App Store.

    For more information, refer to How to Get the App

  • Customer Enquiry is an app that lets customers submit questions about a company, or its products or services.

    For the use case in this example, you configure the Customer Enquiry Request form to use anonymous authentication so the customer can access the form without signing in.

  • To enforce strict security, AgilePoint highly recommends you use anonymous forms for data entry only, and avoid using lookups that connect to your backend systems.

    However, the decision whether to use lookups in anonymous forms is based on your business requirements. If your requires you to use a lookup to backend system, make that design choice as necessary.

  • An app designer who configures an eForm to use anonymous authentication (used with anonymous forms) must have a role with the Allow Enabling Anonymous Access access right.

    The Allow Enabling Anonymous Access role lets the application designer create an anonymous form in App Builder at design time. It does not control the security for the anonymous form or the anonymous form user at runtime. The user credentials used for the anonymous authentication access token do not require this access right.

  • As a security best practice, in your access token for anonymous forms, AgilePoint recommends using a user with minimum access rights. This is a user with the Users role with the default access rights.
  • Optionally, in AgilePoint NX OnPremises and AgilePoint NX Private Cloud, anonymous forms can use the AgilePoint Service Account for authentication if you select User System Account when you configure an access token for anonymous forms. However, this practice carries security risks. It is not recommended unless you have a specific business requirement for Service Account access, and the security risks are mitigated.

    If you use the AgilePoint Service Account, the credentials are not stored in the database.

  • If you have questions about the security impacts or best practices for anonymous forms, contact AgilePoint Professional Services.

Step 1: Add the Acces Right "Allow Enabling Anonymous Access" to the Global Application Designer Role

Add the Allow Enabling Anonymous Access access right to the Application Designer role.

Good to Know

How to Start

  1. In the Manage Center, click Access Control > Roles.

    Click Roles
  2. On the Roles screen, click Expand on the Application Designer role.

    Expand Application Designer Role

Procedure

  1. On the Application Designer role, in the ACCESS RIGHTS section, click Edit Role Edit Role icon.

    Edit Admin Role screen
  2. On the Edit Role screen, in the Access Rights tab, click the App Builder tab.

    Application Builder screen
  3. On the App Builder tab, select Enable Anonymous Forms.

    Application Builder screen
  4. Click Update.

Step 2: Create an NX User for the Anonymous Access Token

Create a user with an AgilePoint ID to use in the credentials for the anonymous access token.

Good to Know

  • As a security best practice, in your access token for anonymous forms, AgilePoint recommends using a user with minimum access rights. This is a user with the Users role with the default access rights.

How to Start

  1. In the Manage Center, click Access Control > Users.

    Click Users
  2. On the Users screen, click Add User.

    Add User

Procedure

  1. On the User Information screen, in the User Name field, enter ExternalUser.

    User Name
  2. In the Full Name field, enter Anonymous External User.

    Anonymous External User
  3. In the E-mail Address field, enter the e-mail address for the user.

    Email Address
  4. Click Add User.

    By default, the new user is added with the User role.

Step 3: Create an Access Token for Anonymous Authentication

Configure an access token to connect to an anonymous form. This type of access token provides credentials that let non-authenticated users complete an eForm in AgilePoint NX..

Prerequisites

Good to Know

How to Start

  1. Click Manage.

    Manage
  2. Click App Builder > Global Access Tokens.

    Manage App Builder
  3. On the Global Access Tokens screen, click Add Token.

    Add Global Access Token
  4. On the Add Global Access Tokens screen, select Anonymous Forms.

    Click Anonymous Forms
  5. Click Next.

Procedure

  1. On the Add Global Access Tokens screen, in the Token Name field, enter Anonymous Customer Request.

    Global Access Tokens Name
  2. In the Domain field, enter nxone.

    You can find the domain name in the Portal Instance URL field on Tenant Settings.

    For more information, refer to Find your Portal Instance URL.


    Global Access Tokens Domain
  3. In the User Name field, enter ExternalUser.

    Global Access Tokens UserName
  4. In the Password field, enter the password of the user.

    Global Access Tokens password
  5. To make sure the specified credentials are correct, click Validate .

    Validate Global Access Tokens
  6. Click Done.

Step 4: Configure Anonymous Access for an eForm

To configure the anonymous access for an eForm in a process-based app, do the procedure in this topic.

Prerequisites

How to Start

  1. Click App Builder.

    Build Apps screen
  2. On the Application Explorer screen, in the My Apps pane, click Customer Enquiry > Processes > Customer Enquiry > Process Model > Customer Enquiry.

    Application Explorer Sales Approval Request

Procedure

  1. On the Process Builder screen, in the Customer Enquiry process model, double-click on the Customer Enquiry form.

    Sales Discount Approval process model
  2. On the Start Task Configuration screen, select the Customer Enquiry form.

    Sales Discount Request Form
  3. Click Advanced Advanced icon > Anonymous Access Anonymous Access icon

    Advanced Anonymous Access
  4. On the Anonymous eForm Access screen, click the Anonymous Access tab.

    Anonymous Access tab
  5. On the Anonymous Access tab, in the Anonymous Access Name field, enter Anonymous Customer Inquiry.

    Anonymous Access Name Field
  6. In the Access Token list, select Anonymous Customer Request (Global).

    Anonymous Access Token
  7. Click the URL tab.

    Anonymous Access URL tab
  8. In the Base URL field, enter https://mysite.nxone.com.

    This URL is an example. You can find the actual value in the Portal Instance URL field on Tenant Settings.

    For more information, refer to Find your Portal Instance URL.


    Anonymous Base URL
  9. The Parameter and Value fields show the default value Process and Customer Enquiry.

    You can not change these values.

    You can specify your own query string parameters and values. Any custom values you specify are used in the URL for the anonymous form.


    Anonymous Value field
  10. Click Generate.

    Anonymous URL Generate
  11. On the Access Token screen, click Save.

    You can use this URL to open and complete an eForm with no authentication.


    Anonymous Access Token screen

    The Anonymous eForm Access screen shows.


    Anonymous eForm Access

Step 5: (Optional) Open Your eForm as an Anonymous User

To open your eForm as an anonymous user, do the procedure in this topic.

Procedure

  1. On the Anonymous eForm Access screen, click View.

    Anonymous URL tab
  2. On the Access Token screen, click Copy.

    Access Token Screen
  3. Click Cancel.
  4. On the Anonymous eForm Access screen, click Finish.

    Application eForm Access screen
  5. Sign out of AgilePoint NX Portal.

    AgilePoint Sign Out Screen
  6. In your web browser, paste the URL for your eForm.

    The Customer Enquiry Request Form opens with no authentication.


    Web browser screen
  7. Complete the fields on the eForm.

    Eform screen
  8. Click Submit

Step 6: (Optional) Verify the records in Your eForm

To verify the records that you submitted in an anonymous form, do the procedure in this topic.

Procedure

  1. Click Work Center.

    Click Work Center
  2. On the Work Center screen, click Inbox > Processes.

    Inbox screen
  3. On the Processes screen, click Processes > I Started.

    Processes I Started screen
  4. On the Processes I Started tab, click Customer Enquiry > eForms Report View eForms Report View icon.

    eForm report View
  5. The View form shows the records you submitted in an eForm.

    Sales Discount Request Form

How to Get the App

This example is based on the Customer Enquiry app from the AgilePoint NX App Store. Use this procedure to get the app.

Prerequisites

Good to Know

  • This procedure is optional. It is provided so you can test the example with an out-of-the-box app.
  • This is part of the Background and Setup procedures, but many users preferred this step to appear after the example, not before it.

Get the App

  1. Click App Store App Store icon.

    App Store
  2. In the CATEGORY section, click Marketing.

    App Store screen
  3. Click the Customer Enquiry app.

    Marketing Apps screen
  4. On the Customer Enquiry screen, click Add.

    Customer Enquiry screen
  5. On the Trust App screen, click Trust it.
  6. Click Return to site.