Archivo de configuración del servidor de tienda (wc-store.xml)
<WebModule>
<Module contextPath="/webapp/remote/stores"
name="Stores"
urlMappingPath="/servlet" webAlias="/wcsstore">
<InitParameters SSLPort = "8443" NonSSLPort="8080"/>
<URLRedirectFilter enable="false"/>
<WhiteListProtection enable="true"/>
</Module>
<Module contextPath="/webapp/remote/ibmstores"
name="IBMStores"
urlMappingPath="/servlet" webAlias="/ibmstorealias">
<URLRedirectFilter enable="false"/>
<WhiteListProtection enable="true"/>
</Module>
<Module contextPath="/webapp/remote/preview"
name="Preview"
urlMappingPath="/servlet" webAlias="/webapp/remote/preview"/>
</WebModule>
WebModule
define la correlación entre la vía de acceso de contexto del sistema de archivos y la vía de acceso web de WebSphere Application Server para el Store server. Cada definición incluye el filtro de redirección de URLy los valores de protección contra la vulnerabilidad Cross Site Scripting. Para obtener más información sobre el filtro de redirección de URL y la protección contra la vulnerabilidad Cross Site Scripting, consulte la siguiente documentación de HCL Commerce Version 9:<Instance
DefaultLang="-1"
StoreWebModuleName="Stores"
enableHystrix="true"
enableDialogMarketing="false"
EnableDoubleClickHandler="true"/>
Instance
del archivo de configuración de Store server define funciones específicas que se aplican a la instancia de Store server del WebSphere Application Server.- enableDialogMarketing es la única opción de configuración personalizable que es exclusiva de HCL Commerce on Cloud. Esta característica se inhabilita de forma predeterminada. Cuando está habilitada, los sucesos de marketing se desencadenan a través del canal web. Esta característica permite al sistema de marketing en el Transaction server evaluar el comportamiento del usuario basándose en reglas de marketing.
- Para más información sobre el manejo de la doble pulsación, consulte Double-click handling en la documentación de HCL Commerce Version 9.
<WhiteListProtection enabled="true" name="WhiteListProtection" display="false">
<param name="storeId" regex="[-]?[0-9]*"/>
<param name="langId" regex="[-]?[0-9]*"/>
<param name="catalogId" regex="[-]?[0-9]*"/>
...
</WhiteListProtection>
La sección WhiteListProtection
define los valores aceptables para los parámetros que se pasan al Store server a través de URL.
Para obtener más información sobre la validación de datos de lista blanca, consulte Enabling WhiteList data validation en la documentación de HCL Commerce Version 9.
<XSiteScriptingProtection display="false" enabled="true" name="Cross Site Scripting Protection">
<ProhibitedAttrs display="false">
<Attribute display="false" regex=".*((%(25)+)|%)*((3C)|<)[\s]*+script.*"/>
</ProhibitedAttrs>
<ProhibitedChars display="false">
<Character display="false" name="<SCRIPT"/>
<Character display="false" name="<%"/>
<Character display="false" name="&lt;%"/>
...
</ProhibitedChars>
<ProhibCharEncoding display="false"/>
</XSiteScriptingProtection>
La sección de protección contra la vulnerabilidad Cross Site Scripting define el filtro basado en reglas de Store server global que rechaza solicitudes del usuario que no se ajustan a ella. El filtro se aplica a cada módulo web que tenga el código WhiteListProtection
enable establecido en true.
Para más información sobre la protección contra la vulnerabilidad Cross Site Scripting, consulte Double-click handling en la documentación de HCL Commerce Version 9.
<Components>
<component
compClassName="com.ibm.commerce.component.datatype.UrlMapperConfig"
enable="true" name="UrlMapperConfig">
<property UrlMapperFile="mapper/SEOUrlMapper.xml" display="false"/>
</component>
<component
compClassName="com.ibm.commerce.dynacache.filter.StoreCacheFilterAttributeMapHelper"
enable="true" name="DynaCacheFilterMappings">
<property display="false" refreshInterval="300000">
<map
className="com.ibm.commerce.store.context.CommandContext"
display="false" dynacacheAttributeName="DC_storeId"
methodName="getStoreId" name="getStoreId"/>
<map
className="com.ibm.commerce.store.context.CommandContext"
display="false" dynacacheAttributeName="DC_userId"
methodName="getCallerId" name="getCallerId"/>
<map
className="com.ibm.commerce.store.context.CommandContext"
display="false" dynacacheAttributeName="DC_lang"
methodName="getLanguageId" name="getLanguageId"/>
...
</property>
</component>
<component
compClassName="com.ibm.commerce.dynacache.filter.StoreEdgeCacheCookieHelper"
enable="false" name="DynaCacheCookie">
<property CookieDomain="" CookiePath="/"
MutipleStores="true" Timeout="3600" display="false">
<ec name="currencyId" value="true"/>
<ec name="languageId" value="true"/>
<ec name="parentOrg" value="true"/>
...
</property>
</component>
</Components>
La sección de componentes define los valores DynaCache de WebSphere Application Server para el Store server. No se da soporte a las clases de componentes personalizados. No obstante, los componentes existentes pueden modificarse.
- Para obtener información sobre el almacenamiento en memoria caché de Edge, consulte Edge caching.
- Para obtener información sobre la creación de atributos de solicitudes personalizados para el almacenamiento en memoria caché de servlets, consulte Custom request attributes for servlet caching en la documentación de HCL Commerce Version 9.
<NonEncryptedParameters display="false">
<Parameter name="storeId"/>
<Parameter name="langId"/>
<Parameter name="catalogId"/>
...
</NonEncryptedParameters>
La sección NonEncryptedParameters
define los parámetros de URL que se han dejado descifrados para fines de almacenamiento en memoria caché. Para más información sobre cómo permitir acceso a los parámetros, consulte Allowing access to encrypted parameters en la documentación de HCL Commerce Version 9.
<SEOConfiguration defaultUrl="" dynamicUrl="true" enable="true">
<mapper-class-name value="com.ibm.commerce.component.seo.SEOURLMapperImpl"/>
</SEOConfiguration>
La sección SEOConfiguration
define los valores de configuración de SEO para el Store server. No se da soporte a una clase de correlacionador personalizado.
Para más información sobre cómo se construyen los enlaces a recursos universales (URL) de la tienda, consulte Tag: url en la documentación de HCL Commerce Version 9.
<DoubleClickMonitoredCommands display="false">
<excludeCommands>
<command name="StoreCatalogDisplay"/>
<command name="TopCategoriesDisplay"/>
<command name="CategoryDisplay"/>
...
</excludeCommands>
</DoubleClickMonitoredCommands>
La sección DoubleClickMonitoredCommands
define qué solicitudes de URL están sujetas o no sujetas al manejo de la doble pulsación. Para obtener más información sobre la configuración del manejo de doble pulsación, consulte Configuring double-click handling en la documentación de HCL Commerce Version 9.
<SessionManagement>
<cookie httponly="true",
secure="true" />
</SessionManagement>
La sección SessionManagement
explica cómo se gestionan las sesiones de usuario. Las cookies de sesión se establecen como seguras por defecto. Si no se especifica el atributo de seguridad, se asume el valor por defecto de true.