<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">Blog posts by Hiep Le</title><link href="https://world.optimizely.com/blogs/hiep-le/" /><updated>2023-07-24T09:24:56.0000000Z</updated><id>https://world.optimizely.com/blogs/hiep-le/</id><generator uri="https://world.optimizely.com/blogs/hiep-le/" version="2.0">Optimizely World</generator><entry><title>No valid combination of account information found</title><link href="https://world.optimizely.com/blogs/hiep-le/dates/2023/7/no-valid-combination-of-account-information-found/" /><id>https://world.optimizely.com/blogs/hiep-le/dates/2023/7/no-valid-combination-of-account-information-found/</id><published>2023-07-24T09:24:56.0000000Z</published><updated>2023-07-24T09:24:56.0000000Z</updated><author><name>hiepl@smartosc.com</name></author><category term="Blog post" /><summary type="html">&lt;p&gt;You might have stumbled upon the error below while upgrading the minor commerce version:&lt;/p&gt;
&lt;p&gt;&lt;img src="/link/9dcba481507545b298d569b5a49b654b.aspx" /&gt;&lt;/p&gt;
&lt;p&gt;I encountered this while upgrading from EPiServer Commerce version 13.32.3 to 13.33.0.&lt;/p&gt;
&lt;p&gt;Google gave me this: &lt;a href="https://stackoverflow.com/questions/13913589/azure-blob-storage-no-valid-combination-of-account-information-found"&gt;https://stackoverflow.com/questions/13913589/azure-blob-storage-no-valid-combination-of-account-information-found&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;So I wondered what does my upgrade have anything to do with Azure Blob Storage?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Turned out, it has something to do with Azure Blob Storage indeed.&lt;/p&gt;
&lt;p&gt;In version 13.33.0, you can use Azure Blob Storage to keep the site's blobs, using this article if you want to do that: &lt;a href="/link/c26e23bbf0c449f9ab2a1697a5acec78.aspx"&gt;https://world.optimizely.com/blogs/ram-kumar-k/dates/2018/3/using-azure-cloud-for-storing-episerver-cms-blobs/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;It gave me the hint to find that the upgrade has inserted a new provider section below in my Web.config&lt;/p&gt;
&lt;p&gt;&lt;code&gt;&amp;lt;blob defaultProvider="azureblobs"&amp;gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;providers&amp;gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;add name="azureblobs" type="EPiServer.Azure.Blobs.AzureBlobProvider,EPiServer.Azure" connectionStringName="EPiServerAzureBlobs" container="mysitemedia"/&amp;gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/providers&amp;gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;/blob&amp;gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;event defaultProvider="azureevents"&amp;gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;providers&amp;gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;add name="azureevents" type="EPiServer.Azure.Events.AzureEventProvider,EPiServer.Azure" connectionStringName="EPiServerAzureEvents" topic="MySiteEvents"/&amp;gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/providers&amp;gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;/event&amp;gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Additionally, new connections were added:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;&amp;lt;add name="EPiServerAzureBlobs" connectionString="DefaultEndpointsProtocol=https;AccountName=mystorageccount;AccountKey=abcdefghijklmnoabcdefghijklmnoabcdefghijklmno"/&amp;gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;nbsp; &amp;nbsp; &amp;lt;add name="EPiServerAzureEvents" connectionString="Endpoint=sb://myservicebus.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=abcdefghijklmnoabcdefghijklmnoabcdefghijklmno="/&amp;gt; &amp;nbsp; &amp;nbsp;&lt;/code&gt;&lt;code&gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Commented out both sections since I am not going to use them yet and my site is back to life.&lt;/p&gt;





</summary></entry><entry><title>Optimizely Campaign - where is the opt in process ID?</title><link href="https://world.optimizely.com/blogs/hiep-le/dates/2022/3/optimizely-campaign---where-is-the-opt-in-process-id/" /><id>https://world.optimizely.com/blogs/hiep-le/dates/2022/3/optimizely-campaign---where-is-the-opt-in-process-id/</id><published>2022-03-24T10:15:33.0000000Z</published><updated>2022-03-24T10:15:33.0000000Z</updated><author><name>hiepl@smartosc.com</name></author><category term="Blog post" /><summary type="html">&lt;p&gt;When working with Optimizely Campaign, you will be familiar with opt in process. Basically when users subscribe to your website's newsletter, you want them to go through an opt in process. &lt;span&gt;An opt-in process requires recipients to give a sender explicit permission to send them advertising mails.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Setting up the opt in process basically containing 2 steps:&lt;/span&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span&gt;Create the process in Opmizely Campaign&lt;/span&gt;&lt;span&gt;&lt;img src="/link/02feb24085714fdd9572f0f98db3c4a4.aspx" /&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;From your code, hook up to the opt in process via API call. For example, if using HTTP API, you can follow this guide: &lt;a href="/link/e02ba59ed8144a109d786315d569abb4.aspx"&gt;https://world.optimizely.com/documentation/developer-guides/campaign/http-api/services-and-operations/subscribe/&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;However at step 2, you will notice that you need to pass in the opt in process ID:&lt;/p&gt;

&lt;p&gt;&lt;img src="/link/76126a1f7bff4b1886ca150ba8323a27.aspx" /&gt;&lt;/p&gt;
&lt;p&gt;At the first glance, you will not be able to see it from the process that you have just created above.&lt;/p&gt;
&lt;p&gt;I can tell you it is not easier to find.&lt;/p&gt;
&lt;p&gt;So here it is....&lt;/p&gt;
&lt;p&gt;Look at corner of the table listing those opt in process, and click on the dropdown arrow&lt;/p&gt;
&lt;p&gt;&lt;img src="/link/84a68e0518ca4157ae96cd860a435325.aspx" /&gt;&lt;/p&gt;
&lt;p&gt;Tick the ID checkbox, your process ID will appear in the table :)&lt;/p&gt;

</summary></entry><entry><title>Create admin account without given access to CMS</title><link href="https://world.optimizely.com/blogs/hiep-le/dates/2022/3/create-admin-account-without-given-access-to-cms/" /><id>https://world.optimizely.com/blogs/hiep-le/dates/2022/3/create-admin-account-without-given-access-to-cms/</id><published>2022-03-17T11:26:26.0000000Z</published><updated>2022-03-17T11:26:26.0000000Z</updated><author><name>hiepl@smartosc.com</name></author><category term="Blog post" /><summary type="html">&lt;p&gt;Ever encountered a situation you are asked to take over a project to maintain it, you are given database backup &amp;amp; source codes but someone forgot to tell you the admin account to login CMS?&lt;/p&gt;
&lt;p&gt;Fret not. If you are using CMS version 11 or ealier, edit your web.config to allow anonymous access to the CMS by updating the following sections:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. Under &amp;lt;location path="EPiServer"&amp;gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;update from &amp;lt;deny users="*" /&amp;gt; to &amp;lt;allow users="*" /&amp;gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Under &amp;lt;location path="EPiServer/CMS/admin"&amp;gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;update from &amp;lt;deny users="*" /&amp;gt; to &amp;lt;allow users="*" /&amp;gt;&lt;/p&gt;
&lt;p&gt;You now can access the CMS at &lt;a href="http://your-site/EPiServer/CMS/Admin/Default.aspx"&gt;http://your-site/EPiServer/CMS/Admin/Default.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Go in and create your admin account and you're all set!&lt;/p&gt;
&lt;p&gt;&lt;img src="/link/b919df5a49b34017a079ed367056f11d.aspx" /&gt;&lt;/p&gt;</summary></entry></feed>