Recently i’ve been playing with Windows 10 IoT Core, i’ve wondered if its possible to use the Raspberry Pi in some way with Sitecore.
Requests to web services built upon the Sitecore.Services.Client framework need to be authenticated, in this post I will look at the authentication features built into Sitecore.Services.Client. Continue reading
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.
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
One of the exciting features of Entity Service is the flexibility to create custom validation attributes for your model. As Sitecore.Services.Client (SSC) provides a framework based approach to creating services, and both server and client side APIs, validation can take place on both server and client side. Continue reading
Further into my series on Sitecore Entity Service within Sitecore.Services.Client, in this post I’ll be look into setting up an IoC container (Structure Map in this post) for Entity Service.
In the below example of the Entity Service services controller we have an overloaded constructor creating a concrete instance of our repository. However moving towards a DI approach we want to remove the coupling to the repository and inject the dependency in instead. Continue reading
Recently I did a Sitecore User Group talk on Entity Service (video based on the talk available on Master Sitecore). I was asked there how you could extend Entity Service to including paging instead of using the standard GetAll() function.
Using my method of extending Entity Service and its repository pattern, as explained in this blog post. This blog post will explain how to add a new custom paged function for getting all entities.