29 Secure Your Service

This section describes the security features built into Retail Digital Commerce, including the administration interface and the storefront. It also lists the tasks you must complete to secure the service yourself. It is extremely important to review and follow the directions in this section before starting to use Retail Digital Commerce.

In addition, it is recommended that you become familiar with the general guidelines Oracle provides for securing all Cloud services. This information is available through the Oracle Cloud Help Center.

Understand Security Features

This section describes the security features of Retail Digital Commerce.

Password Security

Passwords for administration interface users and shoppers accessing the storefront are implemented using techniques that meet Oracle’s software security standards. See Secure your Retail Digital Commerce logins for information on changing the initial password for the administration interface.

User Authentication

Internal users who want to access the administration interface provide their login credentials through an HTTPS request, which obtains an OAuth 2.0 bearer token. The token is then used to verify the authenticity of the user for subsequent requests. Registered shoppers requiring access to secure pages, such as their profile or checkout, are authenticated in the same way. See Configure Shopper Settings for information about configuring the length of a logged-in shopper session.

The administration interface automatically logs users out after a period of inactivity, to comply with the Payment Card Industry Data Security Standard (PCI DSS). By default, this period is 15 minutes. You can change this value by setting the sessionTimeout parameter using the saveAdminConfiguration endpoint in the Admin API. For example, to change the period to 30 minutes:

PUT /ccadmin/v1/merchant/adminConfiguration  HTTP/1.1
Authorization: Bearer <access_token>
Content-Type: application/json

{
    "sessionTimeout": 30
}

You can set sessionTimeout to any integer from 3 to 120. Note that this timeout period also applies to the access token that is returned when logging into the Admin API with login credentials. See Use the REST APIs for information about logging into the REST APIs.

Payment Gateway Integrations

As explained in this guide, Retail Digital Commerce has built-in integrations with CyberSource for credit card processing. The security key and account information required for these integrations are encrypted using a symmetric 256-bit AES key. For more information on the secure handling of credit and debit card data, refer to Configure Payment Processing.

Web Service APIs

Retail Digital Commerce includes REST web service APIs you can use to provide integrations and extensions of the administration interface and the storefront. These APIs are implemented using Jersey (JAX-RS) version1.14.

The APIs use the OAuth 2.0 security framework for data exchange.

Developers register their application in Retail Digital Commerce, which generates a JWT (JSON Web Token) application key. If necessary, the key can be regenerated to revoke existing access. For more information, refer to Register applications.

Customer Accounts

Shoppers can choose to become registered customers by creating accounts through your storefront. You configure the password requirements (for example, length and case) on the Shopper Settings page in the Commerce administration interface. It is highly recommended that you familiarize yourself with guidelines for strong passwords and set your storefront’s requirements accordingly.

If necessary, you can revoke account access for all registered customers by expiring all passwords. For more information, refer to Configure Shopper Settings.

Account information for registered customers is stored in a database-backed Retail Digital Commerce profile repository.

Webhooks

As described in this guide, Retail Digital Commerce can use webhooks to send JSON notifications to specified URLs each time an event occurs, for example, each time a shopper completes an order. The webhook contents are signed using HMAC and hashed using SHA256 and a secret key specific to your implementation. The key can be regenerated if necessary. For more information, refer to Use Webhooks.

PCI DSS Compliance

Not all external systems you integrate with Retail Digital Commerce will comply with the Payment Card Industry Data Security Standard (PCI DSS). Retail Digital Commerce provides webhooks that exclude payment details from the order data you send to systems that do not comply with PCI DSS. For more information, refer to Understand webhooks and PCI DSS Compliance.

CORS Support

For security purposes, web browsers implement the same-domain policy, which prevents JavaScript on a page served from one domain from accessing resources on another domain. In some cases, you may want to selectively override this policy to allow specific domains to access data on your sites.

To make this access possible, Retail Digital Commerce supports CORS (cross-origin resource sharing), which is a standard mechanism for implementing cross-domain requests. For more information, refer to CORS support.

Perform Security Tasks

This section lists the tasks you must perform to harden the security of your instance of Retail Digital Commerce.

Obtain an SSL Certificate

The storefront uses SSL to encrypt sensitive data while it is being communicated between the web server and the customer’s browser. To activate SSL and correctly identify your company with your storefront, an SSL certificate is required.

You must obtain an SSL certificate for your company so it can be installed on the web server. After the certificate is installed, the customer’s browser displays several trust indicators, including the HTTPS URL protocol and the padlock icon, when he or she visits your store. For more information, contact your Oracle Support representative.

Secure your Commerce Logins

A username and password are required to access the Retail Digital Commerce administration interface. You receive one initial username and password from Oracle as part of the process of setting up your service. Change the password immediately by following these steps:

  1. Log into the Commerce administration interface.
  2. Click the Settings icon and select Access Control.
  3. Click the name of the initial user.
  4. Ensure the Email Address field contains a valid email address to which you have access.

    Note: If you add or change the email address, and then click Save, you may have to refresh the Access Control page for the new value to appear.

  5. Click Reset User Password.
  6. The system sends an email to the specified address. Use the link contained in the email to change the password.

All administration interface passwords automatically expire after 90 days. After this period, users will be unable to access the service until they reset their passwords. To do so, they should click the Can’t Sign In link on the login page and follow instructions.

If your service has been upgraded from a previous release, the 90-day period starts after the upgrade.

User accounts are locked after six unsuccessful attempts to access the system.

Refer to Create new user profiles for instructions on how to create additional user accounts and for information on the different access levels you can assign. It is highly recommended that you give each user the least amount of access he or she requires. Retail Digital Commerce enforces the password requirements described in Create new user profiles, but you should ensure additional secure practices around login credentials, for example by not emailing passwords to new users and by recommending regular password changes.

Ensure that accounts are deactivated promptly if they are no longer needed, for example when an employee leaves the company. See Deactivate and reactivate user profiles.

Implement Storefront Single Sign-On

Retail Digital Commerce enables you to integrate customer logins on your storefront with an external customer data store or identity management tool. For example, suppose you have an existing informational website with a large number of customer accounts. When you create a new Retail Digital Commerce site, you may want to provide existing customers with accounts on the commerce site. For more information, refer to Implement Storefront SSO for Account-Based Shoppers.