Skip to main content

Local setup of a SSL certificate

Creating a local ssl certificate is easy. You can do so by creating a self signed certificate in IIS and assigning that to you local site. However you may notice that with newer TLS 1.2 standard, tools like TDS (Team Development for Sitecore) and others stop working and complain about local certificates with errors like

Exception: System.Security.Authentication.AuthenticationException
Message: The remote certificate is invalid according to the validation procedure.

To fix this issue, these were the steps I followed. Hope this helps others that are facing similar issues.

1. Run the following Powershell command to create a local self signed cert (replace xxx.local.com with your local dns):


2. Win Key + search for "Manage computer certificates". Make sure your certificate is in the following 3 locations (image below). If it is not, then copy them from the personal -> certificate to the other location.



Next go to the certificate in the personal -> certificate folder. Right click the certificate and choose All Tasks -> Export.
Export this certificate as a pfx file

3. Win Key + search for "Manage user certificates" and import your pfx file into the personal\cerficates folder.
Also make sure that your certificate is in the below 2 folders (same as the image above)

That's it, assign this new certificate to your website and you should be good to go!


Comments

Post a Comment

Popular posts from this blog

Back-End and Front-End Development in Sitecore XM Cloud

  Understanding the Roles In Sitecore XM Cloud, back-end developers primarily manage content models, custom APIs, and data within the Sitecore CMS backend. On the other hand, front-end developers focus on building the user interface and interactions using a JavaScript framework like React, consuming content from the backend via GraphQL endpoints. The headless CMS architecture of Sitecore XM Cloud allows the front-end to be largely decoupled from the back-end, providing flexibility in technology choices and development workflows. Back-End Developer Responsibilities Back-end developers in Sitecore XM Cloud are responsible for: Deployment of all custom components to XM Cloud. Synchronizing components, code, and content between Prod and Non-Prod environments. Answering questions from content authors regarding component usage, troubleshooting site load, caching, and component versions. Troubleshooting Edge CDN issues related to content updates. Designing and managing content structures,...

Create Object XML while Debugging in VS

 There are times when you put breakpoints in Visual studio and read object values within Visual Studio. This is all good if you are doing some debugging. But if you want to save an object like a Json object in Visual studio there isn't a straightforward way to do that. I found this piece of code that I copied and pasted in the Immediate Window in Visual Studio and was able to save the object as an XML file. (new System.Xml.Serialization.XmlSerializer(YourObject.GetType())).Serialize(new System.IO.StreamWriter(@"c:\tmp\YourObject.xml"), YourObject) Happy Sitecoreing!

Adding Entra ID Auth to a Blazor App

I wanted to take the time to write up this article since I found it useful when working on Blazor Apps. Althought this is not Sitecore related, I think it will be useful if we need to build an admin .NET portal. Additionally most organizations already have Entra ID if they use Microsoft apps and building Entra ID Authentication wont add costs like other Authentication methods would. To get started make sure the following packages are available (using NuGet) in your solution. Microsoft.Identity.Web Microsoft.Identity.Web.UI Azure.Security In your Program.cs file, add the following using Microsoft.AspNetCore.Authentication.OpenIdConnect; using Microsoft.Identity.Web; using Microsoft.Identity.Web.UI; // Add Microsoft Entra ID authentication builder.Services.AddAuthentication(OpenIdConnectDefaults.AuthenticationScheme) .AddMicrosoftIdentityWebApp(builder.Configuration.GetSection("AzureAd")); builder.Services.AddAuthorization(options => { options.FallbackPo...