A critical vulnerability was discovered in React Server Components (Next.js). Our systems remain protected but we advise to update packages to newest version. Learn More

Tuan Anh Hoang
Nov 25, 2025
  306
(3 votes)

How to setup Entra ID (formerly Azure AD) for CMS 12 site

Recently, I created a doc about configuring AAD with CMS 12, but it has been posted internally only

So today, I would like to introduce it again in the World Site and hope that it can be seen by everyone

https://support.optimizely.com/hc/en-us/articles/20767067525773-How-to-setup-Entra-ID-formerly-Azure-AD-for-CMS-12-site

If you have any questions or problems, please send feedback to support@optimizely.com and cc my email address anhtuan.hoang@optimizely.com

Nov 25, 2025

Comments

Sunil
Sunil Nov 26, 2025 08:23 AM

Great article! 💡 The step-by-step explanation for configuring Entra ID (Azure AD) with CMS 12 is really clear and practical.

This will be super useful for teams modernizing their authentication setup.

Thanks for sharing this

Jonas Boman
Jonas Boman Nov 28, 2025 12:40 PM

Great sum-up. 

Some feedback:

  1. Step 1.4: Note: If you run a CMS site on non-local env, just replace localhost:8000 by your server’s name, for example: https://10.120.18.249:8080/
    Can I suggest changing "localhost:8000" in the text with "localhost:5000" since that is stated in the list of urls.

  2. Step 1.9: How would it look with role names a little more custom, since in the example is quite simplified, and similar to what is used in the CMS!?
    I e; MyWebSite_CMS_Administrator, MyWebSite_CMS_Visitor, MyWebSite_CMS_Editor 

  3. Step 2.3 Update in the ‘Configure’ method - should the controller be DefaultPage (I do not have a Controller nor pagetype with that name) or just anyone that that utilizes PageControllerBase?
  4. Do I need to configure role mapping in the application?

Please login to comment.
Latest blogs
CMS Audiences - check all usage

Sometimes you want to check if an Audience from your CMS (former Visitor Group) has been used by which page(and which version of that page) Then yo...

Tuan Anh Hoang | Dec 12, 2025

Data Imports in Optimizely: Part 2 - Query data efficiently

One of the more time consuming parts of an import is looking up data to update. Naively, it is possible to use the PageCriteriaQueryService to quer...

Matt FitzGerald-Chamberlain | Dec 11, 2025 |

Beginner's Guide for Optimizely Backend Developers

Developing with Optimizely (formerly Episerver) requires more than just technical know‑how. It’s about respecting the editor’s perspective, ensurin...

MilosR | Dec 10, 2025

Optimizely PaaS Administrator Certification : Free for Everyone

Optimizely has recently launched a free PaaS Administrator Certification. https://academy.optimizely.com/student/activity/2958208-paas-cms-administ...

Madhu | Dec 9, 2025 |