Sitecore Client Logging with JSNLog In Sitecore 8.1

With Sitecore 8.1, support has been added to log client side events. The new logging framework is built upon the standard Sitecore logging framework (which uses Log4net), allowing client side events to be logged back to the data/log folder on the delivery server. Continue reading

Sitecore SPEAK 2.0 Component vs SPEAK 1.1

With Sitecore 8.1 we get access to a brand new version of SPEAK, the shiny SPEAK 2.0.

In this blog post we will look at creating a new SPEAK component using the 2.0 framework. We will compare the same SPEAK component built against version 1.0 and 2.0 to see the differences the new framework makes to development. Continue reading

Sitecore.Services.Client / Entity Service Allowed Controllers

By default any Entity Service controllers you create abide by the Sitecore.Services.SecurityPolicy setting within the Sitecore.Services.Client.config. By default this is set to Sitecore.Services.Infrastructure.Web.Http.Security.ServicesLocalOnlyPolicy making the service safe and controllers only availably locally. This will cause issues if you call your controller in a live environment outside of the local environment as it wont be accessible.

Allowed Controllers

You can patch this setting to enable all controllers, but this is not a recommended practice, as this will open all controller endpoints to the world.

Instead SSC has the idea of allowedControllers. This section within the Sitecore.Services.Client.config allow you to patch in controllers that are exempt from the ServicesLocalOnlyPolicy setting. This section allows fine control over exactly which controllers are available externally.

Using the allowed controllers setting doesn’t mean you have to sacrifice all security on your controller. After patching in your controllers into the allowedControllers section, you can apply standard authentication filters or Cors to your controller.

Below is an example of a patch file that patches a custom controller into the allowedControllers section. You will also notice many of the Sitecore modules using this allowedControllers section such as xDB and XFM (Shown at the bottom of the page).

Huge thanks to @KevinObee for explaining lots of how SSC works.

Sitecore FXM using allowedControllers

Sitecore Content Search Computed Field Pass Custom Variables

One requirement of Content Search i’ve required recently, is the ability to pass in custom variables from the computed field config element. I needed this so multiple sites can use the same computed fields, but inject settings unique to that site. For example passing in the site name to generate site specific urls. Continue reading