{"id":2574,"date":"2025-08-04T12:22:19","date_gmt":"2025-08-04T12:22:19","guid":{"rendered":"https:\/\/www.devopsconsulting.in\/blog\/?p=2574"},"modified":"2025-08-04T12:22:20","modified_gmt":"2025-08-04T12:22:20","slug":"centralized-authentication-service","status":"publish","type":"post","link":"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/","title":{"rendered":"Centralized Authentication Service\u00a0"},"content":{"rendered":"\n<p>The system we have designed follows a well-established and robust architectural pattern known as the&nbsp;<strong>Centralized Authentication Service<\/strong>&nbsp;or&nbsp;<strong>Identity Provider (IdP) Model<\/strong>.<\/p>\n\n\n\n<p>It is a form of microservices architecture where the responsibility of user authentication is completely decoupled from your individual applications and handled by one authoritative service.<\/p>\n\n\n\n<p>Here is a breakdown of this architecture and its components.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Core Components of the Architecture<\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"680\" src=\"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/08\/image-1-1024x680.png\" alt=\"\" class=\"wp-image-2575\" srcset=\"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/08\/image-1-1024x680.png 1024w, https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/08\/image-1-300x199.png 300w, https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/08\/image-1-768x510.png 768w, https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/08\/image-1.png 1223w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Identity Provider (IdP):<\/strong>\n<ul class=\"wp-block-list\">\n<li>This is your new\u00a0<strong><code>auth.holidaylandmark.com<\/code><\/strong>\u00a0application built with Laravel Passport.<\/li>\n\n\n\n<li>It is the\u00a0<strong>single source of truth<\/strong>\u00a0for all user identities, credentials, and master login sessions.<\/li>\n\n\n\n<li>It owns the master\u00a0<code>users<\/code>\u00a0database.<\/li>\n\n\n\n<li>Its only job is to answer one question for other services: &#8220;Are these credentials valid?&#8221; and &#8220;Is this user currently logged in?&#8221;. It provides secure API endpoints (<code>\/login<\/code>,\u00a0<code>\/logout<\/code>,\u00a0<code>\/user<\/code>) for this purpose.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Service Providers (SPs):<\/strong>\n<ul class=\"wp-block-list\">\n<li>These are your five existing applications: the Laravel dashboard, the two Eventmie sites, the Flarum forum, and the WordPress blog.<\/li>\n\n\n\n<li>In this architecture, the SPs\u00a0<strong>no longer manage passwords<\/strong>. They become &#8220;clients&#8221; of the IdP.<\/li>\n\n\n\n<li>They are responsible for protecting their own pages and resources, but they\u00a0<strong>delegate the authentication decision<\/strong>\u00a0to the IdP.<\/li>\n\n\n\n<li>They still maintain a local\u00a0<code>users<\/code>\u00a0table, but it&#8217;s used primarily for local data relationships (e.g., to link a blog post to a user ID), not for authentication.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>The SSO Cookie (The &#8220;Master Key&#8221;):<\/strong>\n<ul class=\"wp-block-list\">\n<li>This is the technical mechanism that enables the seamless experience.<\/li>\n\n\n\n<li>It is a standard HTTP cookie set by the IdP on the root domain (<code>.holidaylandmark.com<\/code>).<\/li>\n\n\n\n<li>This scope makes it accessible to all your applications.<\/li>\n\n\n\n<li>It is configured to be\u00a0<code>HttpOnly<\/code>\u00a0and\u00a0<code>Secure<\/code>\u00a0to prevent access from client-side scripts and to ensure it&#8217;s only transmitted over HTTPS.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>The User&#8217;s Browser:<\/strong>\n<ul class=\"wp-block-list\">\n<li>The browser acts as the passive carrier of the SSO cookie, automatically sending it with every request to any service on the\u00a0<code>holidaylandmark.com<\/code>\u00a0domain.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Key Architectural Principles<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Decoupling:<\/strong>\u00a0Authentication logic is completely removed (decoupled) from the Service Providers. This means your blog doesn&#8217;t need to know how to securely hash and compare passwords; it only needs to know how to ask the IdP. This makes the client applications simpler and more secure.<\/li>\n\n\n\n<li><strong>Centralization:<\/strong>\u00a0All user management and security policies are centralized at the IdP. If you need to implement a new password policy (e.g., require longer passwords), you only have to change it in one place\u2014the IdP\u2014instead of five.<\/li>\n\n\n\n<li><strong>API-Driven Communication:<\/strong>\u00a0The entire system operates via secure, server-to-server API calls. This is what allows you to keep each service&#8217;s login page without redirecting to a central one. The communication is invisible to the end-user.<\/li>\n\n\n\n<li><strong>Local User Provisioning:<\/strong>\u00a0When a user logs in to a service for the first time via the IdP, a &#8220;stub&#8221; user profile is automatically created in that service&#8217;s local database. This process, called provisioning, ensures that local data integrity (e.g., foreign keys) is maintained.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Advantages of this Architecture<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Seamless User Experience:<\/strong>\u00a0This is your primary requirement. Users log in once and gain access everywhere.<\/li>\n\n\n\n<li><strong>Improved Security:<\/strong>\u00a0By centralizing authentication, you concentrate your security efforts on one hardened service (the IdP) instead of defending five separate applications.<\/li>\n\n\n\n<li><strong>Simplified Management:<\/strong>\u00a0Managing your user base becomes much easier. A user&#8217;s account can be disabled or deleted from one central location.<\/li>\n\n\n\n<li><strong>Scalability:<\/strong>\u00a0It&#8217;s easy to add a sixth, seventh, or eighth service to this SSO system. You simply teach the new application how to speak to the IdP, without modifying any of the other existing applications.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Disadvantages of this Architecture<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Single Point of Failure:<\/strong>\u00a0This is the most significant drawback. If your Central Auth Service (<code>auth.holidaylandmark.com<\/code>) goes down,\u00a0<strong>no one can log in to any part of your platform<\/strong>. This service must be treated as mission-critical and hosted on high-availability infrastructure.<\/li>\n\n\n\n<li><strong>Initial Complexity:<\/strong>\u00a0As you&#8217;ve seen from the guides, retrofitting this architecture onto existing applications is a complex initial project, especially regarding data migration.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>The system we have designed follows a well-established and robust architectural pattern known as the&nbsp;Centralized Authentication Service&nbsp;or&nbsp;Identity Provider (IdP) Model. [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-2574","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Centralized Authentication Service\u00a0 - DevOps Consulting<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Centralized Authentication Service\u00a0 - DevOps Consulting\" \/>\n<meta property=\"og:description\" content=\"The system we have designed follows a well-established and robust architectural pattern known as the&nbsp;Centralized Authentication Service&nbsp;or&nbsp;Identity Provider (IdP) Model. [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/\" \/>\n<meta property=\"og:site_name\" content=\"DevOps Consulting\" \/>\n<meta property=\"article:published_time\" content=\"2025-08-04T12:22:19+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-04T12:22:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/08\/image-1-1024x680.png\" \/>\n<meta name=\"author\" content=\"Abhishek Singh\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Abhishek Singh\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/\",\"url\":\"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/\",\"name\":\"Centralized Authentication Service\u00a0 - DevOps Consulting\",\"isPartOf\":{\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/08\/image-1-1024x680.png\",\"datePublished\":\"2025-08-04T12:22:19+00:00\",\"dateModified\":\"2025-08-04T12:22:20+00:00\",\"author\":{\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/#\/schema\/person\/fc397ba8be42f9fdd53450edfc73006f\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/#primaryimage\",\"url\":\"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/08\/image-1.png\",\"contentUrl\":\"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/08\/image-1.png\",\"width\":1223,\"height\":812},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/#website\",\"url\":\"https:\/\/www.devopsconsulting.in\/blog\/\",\"name\":\"DevOps Consulting\",\"description\":\"DevOps Consulting | SRE Consulting | DevSecOps Consulting | MLOps Consulting\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.devopsconsulting.in\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/#\/schema\/person\/fc397ba8be42f9fdd53450edfc73006f\",\"name\":\"Abhishek Singh\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/790feefe779852cdf344ca7318bf6c13832223c9b3c6bf4d217658412041026d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/790feefe779852cdf344ca7318bf6c13832223c9b3c6bf4d217658412041026d?s=96&d=mm&r=g\",\"caption\":\"Abhishek Singh\"},\"description\":\"I\u2019m Abhishek, a DevOps, SRE, DevSecOps, and Cloud expert with a passion for sharing knowledge and real-world experiences. I\u2019ve had the opportunity to work with Cotocus and continue to contribute to multiple platforms where I share insights across different domains: \u2022 DevOps School \u2013 Tech blogs and tutorials \u2022 Holiday Landmark \u2013 Travel stories and guides \u2022 Stocks Mantra \u2013 Stock market strategies and tips \u2022 My Medic Plus \u2013 Health and fitness guidance \u2022 TrueReviewNow \u2013 Honest product reviews \u2022 Wizbrand \u2013 SEO and digital tools for businesses I\u2019m also exploring the fascinating world of Quantum Computing.\",\"url\":\"https:\/\/www.devopsconsulting.in\/blog\/author\/abhishek\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Centralized Authentication Service\u00a0 - DevOps Consulting","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/","og_locale":"en_US","og_type":"article","og_title":"Centralized Authentication Service\u00a0 - DevOps Consulting","og_description":"The system we have designed follows a well-established and robust architectural pattern known as the&nbsp;Centralized Authentication Service&nbsp;or&nbsp;Identity Provider (IdP) Model. [&hellip;]","og_url":"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/","og_site_name":"DevOps Consulting","article_published_time":"2025-08-04T12:22:19+00:00","article_modified_time":"2025-08-04T12:22:20+00:00","og_image":[{"url":"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/08\/image-1-1024x680.png","type":"","width":"","height":""}],"author":"Abhishek Singh","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Abhishek Singh","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/","url":"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/","name":"Centralized Authentication Service\u00a0 - DevOps Consulting","isPartOf":{"@id":"https:\/\/www.devopsconsulting.in\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/#primaryimage"},"image":{"@id":"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/#primaryimage"},"thumbnailUrl":"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/08\/image-1-1024x680.png","datePublished":"2025-08-04T12:22:19+00:00","dateModified":"2025-08-04T12:22:20+00:00","author":{"@id":"https:\/\/www.devopsconsulting.in\/blog\/#\/schema\/person\/fc397ba8be42f9fdd53450edfc73006f"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.devopsconsulting.in\/blog\/centralized-authentication-service\/#primaryimage","url":"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/08\/image-1.png","contentUrl":"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/08\/image-1.png","width":1223,"height":812},{"@type":"WebSite","@id":"https:\/\/www.devopsconsulting.in\/blog\/#website","url":"https:\/\/www.devopsconsulting.in\/blog\/","name":"DevOps Consulting","description":"DevOps Consulting | SRE Consulting | DevSecOps Consulting | MLOps Consulting","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.devopsconsulting.in\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.devopsconsulting.in\/blog\/#\/schema\/person\/fc397ba8be42f9fdd53450edfc73006f","name":"Abhishek Singh","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.devopsconsulting.in\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/790feefe779852cdf344ca7318bf6c13832223c9b3c6bf4d217658412041026d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/790feefe779852cdf344ca7318bf6c13832223c9b3c6bf4d217658412041026d?s=96&d=mm&r=g","caption":"Abhishek Singh"},"description":"I\u2019m Abhishek, a DevOps, SRE, DevSecOps, and Cloud expert with a passion for sharing knowledge and real-world experiences. I\u2019ve had the opportunity to work with Cotocus and continue to contribute to multiple platforms where I share insights across different domains: \u2022 DevOps School \u2013 Tech blogs and tutorials \u2022 Holiday Landmark \u2013 Travel stories and guides \u2022 Stocks Mantra \u2013 Stock market strategies and tips \u2022 My Medic Plus \u2013 Health and fitness guidance \u2022 TrueReviewNow \u2013 Honest product reviews \u2022 Wizbrand \u2013 SEO and digital tools for businesses I\u2019m also exploring the fascinating world of Quantum Computing.","url":"https:\/\/www.devopsconsulting.in\/blog\/author\/abhishek\/"}]}},"_links":{"self":[{"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/posts\/2574","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/comments?post=2574"}],"version-history":[{"count":1,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/posts\/2574\/revisions"}],"predecessor-version":[{"id":2576,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/posts\/2574\/revisions\/2576"}],"wp:attachment":[{"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/media?parent=2574"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/categories?post=2574"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/tags?post=2574"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}