Difference between revisions of "Creating authentication registration for external users"

From PegaWiki
Jump to navigation Jump to search
m (Minor edits to remove "best practices" and formatting. According to Legal, Security should not use best practice. instead, we should use "leading practice".)
Tag: Visual edit
m (4 revisions imported)
(4 intermediate revisions by the same user not shown)
Line 17: Line 17:
 
* Use the out-of-the-box Authentication Service rule of the Anonymous type for authentication.  
 
* Use the out-of-the-box Authentication Service rule of the Anonymous type for authentication.  
 
** In that rule, specify an access group with the appropriate extremely-limited privileges that should be sufficient for an anonymous user. The privileges would usually ensure that such users can only use the case types required for them to create their cases, can only access data they have created themselves, and have no access to other application functionality, such as reporting, etc.
 
** In that rule, specify an access group with the appropriate extremely-limited privileges that should be sufficient for an anonymous user. The privileges would usually ensure that such users can only use the case types required for them to create their cases, can only access data they have created themselves, and have no access to other application functionality, such as reporting, etc.
* Once an end user is authenticated with a known identity, use the Re-Authentication gadget to change their context and access group info, rather than writing custom code.
+
* Use the Re-Authentication gadget to challenge the user to enter login credentials and change their context and access group information, rather than writing custom code.
 
* In public-facing applications where end users do not need access to information about other operators, we recommend that you restrict all access to data in the <code>Data-Admin-OperatorID</code> class to only the end user’s data through an access control policy. You can do this by enabling the out-of-the-box rules <code>pyDefault</code> and <code>pyRestrictToSelf</code> in the <code>Data-Admin-OperatorID</code> class.
 
* In public-facing applications where end users do not need access to information about other operators, we recommend that you restrict all access to data in the <code>Data-Admin-OperatorID</code> class to only the end user’s data through an access control policy. You can do this by enabling the out-of-the-box rules <code>pyDefault</code> and <code>pyRestrictToSelf</code> in the <code>Data-Admin-OperatorID</code> class.
  
 
For more information, see the following articles on Pega Community:
 
For more information, see the following articles on Pega Community:
 
* [https://community.pega.com/knowledgebase/articles/application-development/84/basic-requirements-deploying-public-facing-applications Basic requirements for deploying public-facing applications]
 
* [https://community.pega.com/knowledgebase/articles/application-development/84/basic-requirements-deploying-public-facing-applications Basic requirements for deploying public-facing applications]
* [https://community.pega.com/knowledgebase/articles/security/84/security-checklistt Security Checklist]
+
* [https://community.pega.com/knowledgebase/articles/security/84/security-checklist Security Checklist]

Revision as of 13:37, 10 December 2020

Creating authentication registration for external users

Description Best practices for creating authentication registration for external users
Version as of 8.4
Application Platform
Capability/Industry Area Security



For authentication and registration of external users in public-facing applications (applications whose operators are not employees), the leading practices discussed in this article should be followed.

When using public-facing applications, users could initially be unauthenticated (anonymous and identity unknown), and may have very restricted access to application features. They may then register themselves or have their identity verified partway through a session, and the session should continue transparently, with their operator context appropriately updated and with expanded privileges.

For example, when going to an online shopping website, you may browse and add items to your cart without having an account or without signing into your account. In this case, you are browsing as an unauthenticated users and add items to a shopping cart, and then they either create an account or enter their credentials to check out.

Industry leading practices are detailed in Basic requirements for deploying public-facing applications. The general take-aways from this article are as follows:

  • Use the out-of-the-box Authentication Service rule of the Anonymous type for authentication.
    • In that rule, specify an access group with the appropriate extremely-limited privileges that should be sufficient for an anonymous user. The privileges would usually ensure that such users can only use the case types required for them to create their cases, can only access data they have created themselves, and have no access to other application functionality, such as reporting, etc.
  • Use the Re-Authentication gadget to challenge the user to enter login credentials and change their context and access group information, rather than writing custom code.
  • In public-facing applications where end users do not need access to information about other operators, we recommend that you restrict all access to data in the Data-Admin-OperatorID class to only the end user’s data through an access control policy. You can do this by enabling the out-of-the-box rules pyDefault and pyRestrictToSelf in the Data-Admin-OperatorID class.

For more information, see the following articles on Pega Community: