How to encrypt/decrypt Sitecore connection strings

Sitecore as every other .NET application supports encryption of the connection strings. You can use that feature to secure your connection strings and reduce the chances that someone will steal your passwords to your databases.

It is important to remember that:

  • encryption and decryption are done in the scope of the server
  • encryption and decryption are done in the scope of the application

Alright, but what do the above statements mean in real life?

It means that connection strings files encrypted for one application on one server will not work on different servers and different applications. You need to repeat encryption/decryption for every environment you have and for every application you have.

Sounds like a lot of work – well, security has its own price.

Before you start encrypting your files you need to verify if connectionStrings.config file contains “configBuilders” attribute in the “connectionStrings” node:

If the “configBuilders” attribute is there – you have to remove it.

As a next step, you have to find the aspnet_regiis.exe file in your environment – usually, you will find it in your Microsoft.NET\Framework64 folder. In my case it was the path:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe

When you find it you have everything to run encryption and decryption commands.

To encrypt connectionStrings file you need to run:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -pef "connectionStrings" D:\inetpub\wwwroot\sc10-dev-cd.localhost

To decrypt connectionStrings file you need to run:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -pdf "connectionStrings" D:\inetpub\wwwroot\sc10-dev-cd.localhost

And this is basically it, easy peasy lemon squeezy!

Lifecycle of services and support

From time to time we all hear some rumors about Sitecore plans. People say interesting or sometimes strange things about incoming changes. Until today I was trying to filter what is true and what is just a gossip – but you know what? – we do not have to think about those things too much! At least in topics like cloud services and support.

I was not aware about fact that Sitecore provides clear information about their plans in terms of cloud services and support. Read on to know more about that publications.

Sitecore Cloud Services Lifecycle

In article about Sitecore Cloud Services Lifecycle you will find information about:

  • Sitecore Managed Cloud
  • Sitecore Email Cloud
  • IP Geolocation Service
  • Device Detection

And many others. What is interesting? Sitecore prepared new version of Device Detection service which replaced old one. It is not longer available for Sitecore 8 so if you want to use it you should upgrade your Sitecore to version 9. Google Apps and  Page Preview cloud services are not longer available.

More about that you will find here.

If you want to check extended information about changes in Device Detection you should check article here.

Sitecore Product Support Lifecycle

This part for some of you can be even more interesting than previous one. Why? Because partially it answers for question “when upgrade Sitecore to version 9?”.

Of course everyone who has bigger experience with Sitecore would answer:

  • “now”
  • “as fast as it is possible”

But if you need more time then in table “Support Phases For Specific Products” you will find the date when Sitecore will stop providing support for Sitecore 8.  I will not give you here the answer – you have got some time, but check particular dates here.

Summary

Both articles from links where updated week or two weeks ago. I believe they will be updated after every Sitecore update or even more often. That means that it would be good idea to add them to yours favorite links – I did that and recommend the same for you.

Arrow Code

Today i have decided to share with you another well known problem – “the arrow code”.

Many of unexperienced software developers write code in following way:

if
  if
    if
      if
        do something
      endif
    endif
  endif
endif

In first moment it probably does not look as error but when we would add more logic to this, this code would be very hard to maintain.

That is why you should read this article: click

SOLID architecture principles

Hello again!

Because every day I learn new things and I had been looking for good place to store interesting websites I decided to create new category “Worth To Know” on my blog to share what in my opinion should be shared/promoted in developers community (not only with those who work with Sitecore).

So today I’m giving for you some links about SOLID architecture principles which I try to watch/read once a week to remember how important are they.

  • SOLID architecture principles using simple C# examples by Shivprasad Koirala – website / click
  • SOLID Design Patterns in C# by Free Programming Course – youtube / click

These rules are also important when you work with Sitecore – as you probably know it is also possible to destroy a pleasure of work with Sitecore if code will be done very badly.