<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[Ajith Thamarakshan]]></title><description><![CDATA[Security architect with 25+ years across cloud, AI, identity, and payments security. CISSP since 2003. CCSP. Hundreds of assessments for banks, retailers, and government.]]></description><link>https://ajiththamarakshan.substack.com</link><image><url>https://substackcdn.com/image/fetch/$s_!rm0D!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc2fa003-e017-4638-8857-46b58ee7b375_1254x1254.png</url><title>Ajith Thamarakshan</title><link>https://ajiththamarakshan.substack.com</link></image><generator>Substack</generator><lastBuildDate>Thu, 04 Jun 2026 08:47:06 GMT</lastBuildDate><atom:link href="https://ajiththamarakshan.substack.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Ajith Thamarakshan]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[ajiththamarakshan@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[ajiththamarakshan@substack.com]]></itunes:email><itunes:name><![CDATA[Ajith Thamarakshan]]></itunes:name></itunes:owner><itunes:author><![CDATA[Ajith Thamarakshan]]></itunes:author><googleplay:owner><![CDATA[ajiththamarakshan@substack.com]]></googleplay:owner><googleplay:email><![CDATA[ajiththamarakshan@substack.com]]></googleplay:email><googleplay:author><![CDATA[Ajith Thamarakshan]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[AI Governance for the Enterprise: Part 3 - Legal and Regulatory Framework]]></title><description><![CDATA[The legal framework for AI includes existing laws that already apply, AI-specific legislation being enacted across jurisdictions, and voluntary standards that provide governance structure.]]></description><link>https://ajiththamarakshan.substack.com/p/ai-governance-for-the-enterprise-27d</link><guid isPermaLink="false">https://ajiththamarakshan.substack.com/p/ai-governance-for-the-enterprise-27d</guid><dc:creator><![CDATA[Ajith Thamarakshan]]></dc:creator><pubDate>Thu, 28 May 2026 22:00:42 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!eeba!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe4578b3b-6b03-495f-8324-f499b0ae8d2b_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eeba!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe4578b3b-6b03-495f-8324-f499b0ae8d2b_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eeba!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe4578b3b-6b03-495f-8324-f499b0ae8d2b_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!eeba!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe4578b3b-6b03-495f-8324-f499b0ae8d2b_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!eeba!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe4578b3b-6b03-495f-8324-f499b0ae8d2b_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!eeba!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe4578b3b-6b03-495f-8324-f499b0ae8d2b_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eeba!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe4578b3b-6b03-495f-8324-f499b0ae8d2b_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e4578b3b-6b03-495f-8324-f499b0ae8d2b_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2166290,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/195495615?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe4578b3b-6b03-495f-8324-f499b0ae8d2b_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!eeba!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe4578b3b-6b03-495f-8324-f499b0ae8d2b_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!eeba!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe4578b3b-6b03-495f-8324-f499b0ae8d2b_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!eeba!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe4578b3b-6b03-495f-8324-f499b0ae8d2b_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!eeba!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe4578b3b-6b03-495f-8324-f499b0ae8d2b_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="callout-block" data-callout="true"><p>This is part of a six-part series on AI governance for the enterprise. The series structure is based on the <a href="https://iapp.org/certify/aigp/">AI Governance Professional (AIGP) Body of Knowledge</a> published by the IAPP, adapted for a practitioner audience focused on implementation.</p></div><p>Parts 1 and 2 of this series covered the governance programme structure and the policies needed to operationalise it. This post covers the legal and regulatory framework that shapes those policies: the existing laws that already apply to AI systems whether organisations recognise it or not, the AI-specific legislation being enacted across multiple jurisdictions, and the voluntary standards that provide governance structure for organisations seeking to formalise their approach.</p><div class="callout-block" data-callout="true"><p><strong>Disclaimer: </strong>This post provides a general overview of the legal and regulatory environment relevant to AI governance. <strong>It does not constitute legal advice.</strong> The regulatory landscape for AI is evolving rapidly, and the application of specific laws depends on jurisdiction, sector, use case, and organisational context. Practitioners should consult qualified legal advisors for guidance on how specific legislation applies to their circumstances.</p></div><p>The regulatory direction globally appears to be converging around a common set of themes: risk-based classification, transparency obligations, accountability requirements, human oversight, and data governance. The specific mechanisms differ by jurisdiction, but the underlying expectations are similar enough that organisations building governance around these common themes are likely to be better positioned as regulatory requirements solidify.</p><p>This post leads with the practical questions that organisations need to answer, then provides jurisdiction-specific and standards detail in reference sections that readers can navigate to based on their needs.</p><h2><strong>The Practical Questions</strong></h2><p>The legal framework for AI can be understood through five questions that every organisation deploying AI needs to be able to answer. Each question draws from multiple bodies of law and multiple jurisdictions.</p><h3><strong>Can I use this data to train or operate an AI system?</strong></h3><p>Privacy and data protection law is relevant to this question across most jurisdictions. The specific provisions vary, but the core considerations tend to be consistent.</p><p>The lawful basis for using data in an AI system may differ from the basis under which the data was originally collected. An organisation that collected customer data for service delivery under a specific consent provision may need to establish a separate basis for using that data for model training. Most privacy frameworks generally require that each processing purpose has its own legal justification, though the specific requirements depend on the jurisdiction and the applicable legislation.</p><p>Transparency requirements are generally relevant: individuals should typically be informed that their data is or may be used in AI systems. Data minimisation principles are likely to apply: the AI system should not process more personal data than is necessary for the specific use case. Cross-border transfer rules may be triggered when training data is processed in a different jurisdiction from where it was collected. Special categories of data (biometrics, health information, racial or ethnic origin) typically carry additional restrictions that are relevant to AI systems processing images, voice, or health data.</p><p>Data protection impact assessments (DPIAs under GDPR, privacy impact assessments under the Australian Privacy Act, similar mechanisms in other frameworks) may be required or recommended for AI processing that is likely to result in high risk to individuals. These assessments should consider AI-specific risks including inference attacks, memorisation of training data, and re-identification from model outputs.</p><h3><strong>Can I deploy this AI system for this use case?</strong></h3><p>Multiple jurisdictions are converging on a risk-based classification model that determines which AI uses are permitted, which are permitted with conditions, and which are prohibited. The common tiers are: prohibited uses (systems banned outright due to unacceptable risk), high-risk uses (permitted with mandatory governance requirements including risk management, testing, documentation, human oversight, and ongoing monitoring), limited-risk uses (subject to transparency obligations such as disclosing that AI is being used), and minimal-risk uses (no specific additional requirements).</p><p>The <a href="https://eur-lex.europa.eu/eli/reg/2024/1689/oj">EU AI Act</a> provides the most detailed codification of this model. The <a href="https://aibasicact.kr/">South Korean AI Basic Act</a> uses a similar framework with its &#8220;high-impact AI&#8221; designation. Even in jurisdictions without AI-specific legislation, existing sectoral regulation may restrict specific AI use cases: financial services regulators impose model risk management requirements, healthcare regulators govern AI-based medical devices, and employment law restricts automated hiring decisions.</p><p>Organisations should assess every proposed AI use case against the applicable risk classification, whether that comes from legislation, sectoral regulation, or the organisation&#8217;s own governance framework informed by standards such as the NIST AI RMF. The use case assessment and risk classification process described in Part 2 is the mechanism for operationalising this requirement.</p><h3><strong>What do I owe the people affected by AI decisions?</strong></h3><p>Generally speaking, three bodies of existing law are relevant to this question.</p><p>Automated decision-making provisions in <strong>privacy legislation</strong> may provide rights to individuals who are subject to decisions made by automated systems. GDPR Article 22, for example, provides rights related to solely automated decisions that produce legal or similarly significant effects, including the right to obtain human intervention, express a point of view, and contest the decision. The Australian Privacy Act includes provisions on automated decisions that significantly affect individuals&#8217; rights or interests. Similar provisions exist in other privacy frameworks. The practical consideration is that AI systems making or materially contributing to decisions about individuals should generally be designed with notification, explanation, and human review capabilities, though the specific requirements depend on the applicable legislation.</p><p><strong>Non-discrimination law</strong> is likely to be relevant to AI outputs in employment, credit, housing, insurance, and public services contexts across most jurisdictions. An AI system that produces discriminatory outcomes may violate existing non-discrimination law regardless of whether the discrimination was intentional or was an artefact of biased training data. In many jurisdictions, the concept of disparate impact means that the deploying organisation may bear responsibility for discriminatory outcomes even if the bias originated in a third-party model. This is a strong reason to include bias testing and fairness evaluation as part of the governance process before deployment and during operation.</p><p><strong>Consumer protection law</strong> is generally relevant when AI is used in consumer-facing contexts. Unfair and deceptive practices provisions may cover misleading AI-generated content, undisclosed use of AI in customer interactions, and AI systems that do not perform as represented to consumers.</p><h3><strong>Who is liable when AI causes harm?</strong></h3><p>Liability for AI-related harm involves the intersection of product liability law, contractual arrangements, and the evolving regulatory framework. This is an area of active legal development, and the specific allocation of liability will depend on the jurisdiction and circumstances.</p><p>Product liability frameworks are being adapted for AI in several jurisdictions. The EU&#8217;s revised Product Liability Directive now includes software and AI systems within its scope. In common law jurisdictions, existing product liability and negligence frameworks may apply, though their application to AI systems is still being established through litigation.</p><p>Contractual liability depends on the representations made about the AI system&#8217;s capabilities and the allocation of responsibility between provider and deployer. The contractual considerations described in Part 2 (liability allocation, indemnification, warranty provisions) are an important mechanism for managing this risk. The accountability gap, where the deployer may be responsible for outcomes but the provider controls the model, creates a tension that contracts should address.</p><p>Intellectual property liability involves two dimensions: claims arising from copyrighted material in training data (actively being litigated across multiple jurisdictions, with significant cases in the US, EU, and elsewhere), and questions about the ownership of AI-generated outputs (which varies by jurisdiction and remains unsettled in most). Organisations using AI to generate content, code, or creative works should seek legal advice on their exposure and address these questions through the IP policy updates described in Part 2.</p><h3><strong>What documentation and compliance obligations do I have?</strong></h3><p>Documentation requirements are converging across jurisdictions and across the voluntary standards frameworks. The categories of required documentation are consistent even where the specific requirements vary.</p><h4><strong>Converging documentation requirements</strong></h4><ul><li><p><strong>Technical documentation: </strong>Description of the AI system&#8217;s purpose, architecture, training data, testing methodology, known limitations, and performance metrics. Required by the EU AI Act for high-risk systems and GPAI models, by the South Korean AI Basic Act for high-impact AI, and recommended by NIST AI RMF and ISO 42001 for all AI systems proportional to risk.</p></li><li><p><strong>Impact assessments: </strong>Evaluation of the AI system&#8217;s potential effects on individuals&#8217; rights, safety, and wellbeing. Required as DPIAs under GDPR for high-risk AI processing, as Fundamental Rights Impact Assessments (FRIAs) under the EU AI Act for certain high-risk systems, and as impact assessments under the South Korean AI Basic Act. Recommended by NIST AI RMF and ISO 42005 for all AI systems proportional to risk.</p></li><li><p><strong>Risk management records: </strong>Documentation of risk identification, assessment, mitigation, and residual risk acceptance. Required for high-risk systems under the EU AI Act and the South Korean AI Basic Act. Core to NIST AI RMF&#8217;s Manage function and ISO 42001&#8217;s management system requirements.</p></li><li><p><strong>Monitoring and incident records: </strong>Ongoing records of system performance, fairness metrics, drift detection, and incident management. Post-market monitoring is required under the EU AI Act. Continuous monitoring is a core element of NIST AI RMF and ISO 42001.</p></li><li><p><strong>Transparency disclosures: </strong>Information provided to users, affected individuals, and regulators about the AI system&#8217;s use, capabilities, and limitations. Transparency obligations exist across all major AI regulatory frameworks, with specific requirements varying by risk tier and jurisdiction.</p></li></ul><h2><strong>AI-Specific Legislation Across Jurisdictions</strong></h2><p>The regulatory landscape for AI-specific legislation is developing at different speeds across jurisdictions. Before covering individual frameworks, it is worth noting the common elements that appear across all of them: risk-based classification, transparency obligations, accountability requirements, human oversight mandates for high-risk applications, and data governance standards. Organisations that build their governance around these common elements will find that adapting to jurisdiction-specific requirements is a matter of mapping their existing controls to the specific legislation rather than building from scratch for each jurisdiction.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UoLy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee177b96-680c-4ef2-b7bd-2acdaf4c8e93_864x1821.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UoLy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee177b96-680c-4ef2-b7bd-2acdaf4c8e93_864x1821.png 424w, https://substackcdn.com/image/fetch/$s_!UoLy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee177b96-680c-4ef2-b7bd-2acdaf4c8e93_864x1821.png 848w, https://substackcdn.com/image/fetch/$s_!UoLy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee177b96-680c-4ef2-b7bd-2acdaf4c8e93_864x1821.png 1272w, https://substackcdn.com/image/fetch/$s_!UoLy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee177b96-680c-4ef2-b7bd-2acdaf4c8e93_864x1821.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UoLy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee177b96-680c-4ef2-b7bd-2acdaf4c8e93_864x1821.png" width="864" height="1821" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ee177b96-680c-4ef2-b7bd-2acdaf4c8e93_864x1821.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/392940d9-3489-442d-aceb-12e111961649_864x1821.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1821,&quot;width&quot;:864,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1804667,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/195495615?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F392940d9-3489-442d-aceb-12e111961649_864x1821.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!UoLy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee177b96-680c-4ef2-b7bd-2acdaf4c8e93_864x1821.png 424w, https://substackcdn.com/image/fetch/$s_!UoLy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee177b96-680c-4ef2-b7bd-2acdaf4c8e93_864x1821.png 848w, https://substackcdn.com/image/fetch/$s_!UoLy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee177b96-680c-4ef2-b7bd-2acdaf4c8e93_864x1821.png 1272w, https://substackcdn.com/image/fetch/$s_!UoLy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee177b96-680c-4ef2-b7bd-2acdaf4c8e93_864x1821.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3><strong>European Union: AI Act</strong></h3><p>The <a href="https://eur-lex.europa.eu/eli/reg/2024/1689/oj">EU AI Act</a> is the most detailed AI-specific legislation enacted to date. It introduces a risk-based classification system with four tiers and assigns obligations based on the organisation&#8217;s role in the value chain.</p><p><strong>Risk tiers</strong></p><ul><li><p><strong>Prohibited:</strong> AI systems banned outright. Social scoring by public authorities, real-time remote biometric identification in public spaces (with narrow law enforcement exceptions), manipulation techniques exploiting vulnerabilities, emotion recognition in workplace and educational settings, and untargeted scraping of facial images for facial recognition databases. These provisions applied from February 2025.</p></li><li><p><strong>High-risk:</strong> AI systems in defined sectors (biometrics, critical infrastructure, education, employment, essential services, law enforcement, migration, administration of justice) subject to mandatory requirements: risk management systems, data governance, technical documentation, record-keeping, transparency to users, human oversight, accuracy, robustness, and cybersecurity. Conformity assessments, registration in the EU database, post-market monitoring, and serious incident reporting are required. These provisions apply from August 2026.</p></li><li><p><strong>Limited risk:</strong> Transparency obligations for systems interacting with individuals (chatbots must disclose they are AI, deepfake content must be labelled). These provisions applied from August 2025.</p></li><li><p><strong>Minimal risk:</strong> No specific additional requirements beyond voluntary codes of practice.</p></li></ul><p>Providers of general-purpose AI (GPAI) models have additional obligations including technical documentation, copyright compliance policies, and training data summaries. GPAI models classified as posing systemic risk face further requirements including adversarial testing, incident reporting, and cybersecurity measures. These provisions applied from August 2025.</p><p>Most organisations reading this post will be deployers. Deployer obligations include using high-risk systems in accordance with the provider&#8217;s instructions, ensuring human oversight, monitoring for risks in their specific deployment context, conducting Fundamental Rights Impact Assessments for certain public-sector uses, and reporting serious incidents. Penalties for non-compliance reach up to &#8364;35 million or 7% of global annual turnover.</p><h3><strong>South Korea: AI Basic Act</strong></h3><p>The <a href="https://aibasicact.kr/">AI Basic Act</a>, enacted in January 2025 and effective from January 2026, makes South Korea the second jurisdiction after the EU to adopt comprehensive AI legislation and the first in Asia-Pacific. The Act covers both AI development operators (who build AI) and AI utilisation operators (who deploy AI products and services).</p><p>High-impact AI, defined as systems that significantly affect human life, safety, or fundamental rights in sectors including healthcare, energy, transportation, hiring, credit evaluation, and biometric analysis, carries specific obligations: operators must assess whether their system qualifies as high-impact, provide meaningful explanations of AI outputs and the criteria used, establish user protection plans, implement human oversight mechanisms, and document safety and reliability measures. Impact assessments evaluating effects on fundamental rights are encouraged. Generative AI operators must notify users that their product uses AI and label AI-generated content. Penalties are moderate compared to the EU AI Act (fines up to KRW 30 million, approximately USD 21,000), reflecting the Act&#8217;s emphasis on promoting innovation alongside governance.</p><p>The Act has extraterritorial application: foreign AI operators meeting certain user or revenue thresholds in South Korea must designate a domestic representative.</p><h3><strong>Other jurisdictions</strong></h3><p><strong>United States.</strong> No comprehensive federal AI legislation exists. The regulatory approach is sector-specific (OCC for banking AI, FDA for healthcare AI, SEC/CFTC for financial services AI, FTC for consumer protection) combined with executive orders and the NIST AI Risk Management Framework as the de facto governance standard. State-level activity is increasing: Colorado, Illinois, and other states have enacted AI-related provisions. The regulatory environment is fragmented, which creates compliance complexity for organisations operating across multiple states.</p><p><strong>China.</strong> Has enacted multiple sector-specific AI regulations already in effect, including the Algorithm Recommendation Management Provisions (2022), the Deep Synthesis (Deepfake) Provisions (2023), and the Interim Measures for Generative AI Services (2023). China&#8217;s approach is operational and enforcement-ready, with requirements for algorithm registration, content labelling, and user rights. Foreign organisations operating AI services in China are subject to these requirements.</p><p><strong>Brazil.</strong> The AI regulatory framework is under legislative development. Brazil&#8217;s approach is expected to align with the OECD AI Principles and draw from the EU AI Act&#8217;s risk-based classification model.</p><p><strong>Canada.</strong> The proposed Artificial Intelligence and Data Act (AIDA) died in January 2025 when Parliament was prorogued. The current federal government has indicated it intends to address AI governance through privacy legislation and sector-specific regulation rather than comprehensive AI-specific legislation. At provincial level, Ontario&#8217;s Bill 194 includes AI-related provisions.</p><p><strong>Australia.</strong> No comprehensive AI-specific legislation is currently in effect. The Australian AI Ethics Principles (published by the Department of Industry, Science and Resources) provide a voluntary governance framework. The Privacy Act&#8217;s automated decision-making provisions apply to AI systems processing personal information. The government has indicated that a mandatory framework for high-risk AI may be forthcoming, but no legislation has been introduced at the time of writing.</p><blockquote><p><em>The regulatory direction across jurisdictions is converging toward a common model: risk-based classification of AI systems, mandatory requirements for high-risk uses (transparency, human oversight, documentation, monitoring), and accountability for both developers and deployers. Organisations that build governance around these convergent elements, using the lifecycle policies and risk classification framework described in Part 2, will be positioned to adapt as jurisdiction-specific requirements solidify.</em></p></blockquote><h2><strong>Existing Laws That May Apply to AI</strong></h2><p>AI-specific legislation is new. Many existing legal obligations are likely to apply to AI systems already. The specific applicability depends on the jurisdiction, sector, and use case, and organisations should seek legal advice on their particular circumstances.</p><h3><strong>Privacy and data protection</strong></h3><p>GDPR, the Australian Privacy Act, CCPA, Brazil&#8217;s LGPD, South Korea&#8217;s PIPA, and their equivalents across jurisdictions all apply to AI systems that process personal data. The key provisions relevant to AI include: lawful basis requirements (consent, legitimate interest, or other bases as applicable to AI-specific processing), transparency obligations (informing individuals about AI processing), data minimisation (limiting personal data in training sets to what is necessary), automated decision-making rights (notification, explanation, human review), DPIAs for high-risk processing, and cross-border transfer mechanisms for data that moves between jurisdictions during training or inference.</p><p>AI-specific risks that privacy frameworks were designed to address include inference attacks (extracting personal information from model outputs through targeted queries), memorisation (models reproducing personal data from training sets in their outputs), and re-identification (combining model outputs with other data to identify individuals from ostensibly anonymised datasets).</p><h3><strong>Non-discrimination and civil rights</strong></h3><p>Employment law, credit and lending regulation, housing law, insurance regulation, and public services frameworks generally prohibit discrimination on the basis of protected characteristics. These provisions are likely to apply to AI outputs regardless of intent. An AI hiring tool that systematically disadvantages applicants of a particular gender or ethnicity may violate non-discrimination law even if the bias was an unintended artefact of the training data. The concept of disparate impact (where a facially neutral practice produces discriminatory outcomes) is established across multiple jurisdictions and may apply to AI systems.</p><p>The practical consideration is that bias testing and fairness evaluation are prudent for AI systems operating in these contexts, and may be required under existing anti-discrimination law depending on the jurisdiction.</p><h3><strong>Consumer protection</strong></h3><p>Consumer protection frameworks are likely to be relevant when AI is used in consumer-facing contexts. Unfair and deceptive practices provisions may cover scenarios including AI-generated content presented as human-authored, undisclosed use of AI in customer service interactions, and AI systems that do not perform as advertised. As AI-generated content becomes more prevalent, consumer protection regulators in several jurisdictions are paying increasing attention to disclosure and accuracy obligations.</p><h3><strong>Product liability</strong></h3><p>Product liability frameworks are being updated in several jurisdictions to address AI. The EU&#8217;s revised Product Liability Directive now includes software and AI systems within its scope. In common law jurisdictions, existing negligence and product liability frameworks may apply to AI, though their specific application is still being established through litigation. The general direction suggests that AI systems are likely to face similar accountability expectations as other products that can cause harm, though the specific legal standards are still developing.</p><h3><strong>Intellectual property</strong></h3><p>Two IP questions are relevant to AI governance. First, the use of copyrighted material in training data. This is actively being litigated across multiple jurisdictions (major cases in the US involving New York Times v. OpenAI, Getty Images v. Stability AI, and others; EU AI Act Article 53 requires GPAI providers to implement copyright compliance policies). Organisations should assess their exposure and ensure their IP policy addresses training data rights as described in Part 2.</p><p>Second, the ownership of AI-generated outputs. This varies by jurisdiction and is unsettled in most. Some jurisdictions require human authorship for copyright protection, which may mean AI-generated outputs are not copyrightable. The practical governance action is to establish an organisational position on the use and ownership of AI-generated outputs and communicate it through the IP policy.</p><h2><strong>Standards and Frameworks</strong></h2><p>Voluntary standards and governance frameworks provide the structure for operationalising legal requirements. They translate regulatory principles into governance activities that organisations can implement.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/PhW60/2/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2caca74f-7527-4f39-a262-f2447bc8207e_1220x1442.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/268f15e0-dbc3-445e-8399-e83b6cba1efe_1220x1442.png&quot;,&quot;height&quot;:733,&quot;title&quot;:&quot;Frameworks&quot;,&quot;description&quot;:&quot;&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/PhW60/2/" width="730" height="733" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><p>For organisations already operating under ISO 27001 for information security, ISO 42001 provides the most natural extension for AI governance. The management system structures (policy, risk assessment, controls, monitoring, continual improvement) are consistent, and the two certifications can be managed as an integrated management system. For organisations that have adopted NIST CSF for cybersecurity governance, NIST AI RMF provides a similarly natural extension, with consistent terminology and a complementary structure.</p><h2><strong>Navigating Multiple Frameworks</strong></h2><p>The practical reality for most organisations is that they may be subject to multiple overlapping frameworks: existing privacy law in the jurisdictions where they operate, emerging AI-specific legislation (the EU AI Act if they have EU exposure, the South Korean AI Basic Act if they serve Korean markets), industry-specific regulation in their sector, and whatever voluntary standards they have adopted.</p><p>Building separate compliance programmes for each framework is unlikely to be practical or efficient. The governance programme described in Parts 1 and 2, with its risk classification, lifecycle policies, and cross-functional governance structures, can serve as a common foundation. The converging themes across jurisdictions (risk-based classification, transparency, accountability, human oversight, documentation, monitoring) map onto the lifecycle governance stages from Part 2. Jurisdiction-specific obligations can be implemented as specific activities within those stages, with legal advice on the particular requirements that apply.</p><p>Organisations that build governance around the convergent themes are likely to find that adapting to jurisdiction-specific requirements is a more manageable exercise than building from scratch for each new regulation. The legal and regulatory environment will continue to evolve, and governance programmes should be designed with that evolution in mind.</p><p>Part 4 of this series covers how these legal and policy requirements are implemented in practice during AI system development: design decisions, data governance, training, and testing.</p><p><strong>Series Navigation</strong></p><ul><li><p>Part 1 - Foundations</p></li><li><p>Part 2 - Policies and Lifecycle</p></li><li><p>Part 3 - Legal and Regulatory Framework</p></li><li><p>Part 4 - Developing AI Systems</p></li><li><p>Part 5 - AI in Production</p></li><li><p>Part 6 - Deploying and Using AI</p></li></ul>]]></content:encoded></item><item><title><![CDATA[AI Governance for the Enterprise: Part 2 - Policies and Lifecycle]]></title><description><![CDATA[Most organisations extend existing policies for AI-specific considerations and introduce new policies absent in current frameworks, rather than building governance policies from scratch.]]></description><link>https://ajiththamarakshan.substack.com/p/ai-governance-for-the-enterprise-a4c</link><guid isPermaLink="false">https://ajiththamarakshan.substack.com/p/ai-governance-for-the-enterprise-a4c</guid><dc:creator><![CDATA[Ajith Thamarakshan]]></dc:creator><pubDate>Thu, 21 May 2026 22:01:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!XsyC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58efd3ba-ad9a-4577-add3-e07e2e321d6b_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XsyC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58efd3ba-ad9a-4577-add3-e07e2e321d6b_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XsyC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58efd3ba-ad9a-4577-add3-e07e2e321d6b_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!XsyC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58efd3ba-ad9a-4577-add3-e07e2e321d6b_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!XsyC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58efd3ba-ad9a-4577-add3-e07e2e321d6b_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!XsyC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58efd3ba-ad9a-4577-add3-e07e2e321d6b_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XsyC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58efd3ba-ad9a-4577-add3-e07e2e321d6b_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/58efd3ba-ad9a-4577-add3-e07e2e321d6b_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1874654,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/195411777?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58efd3ba-ad9a-4577-add3-e07e2e321d6b_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!XsyC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58efd3ba-ad9a-4577-add3-e07e2e321d6b_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!XsyC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58efd3ba-ad9a-4577-add3-e07e2e321d6b_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!XsyC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58efd3ba-ad9a-4577-add3-e07e2e321d6b_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!XsyC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58efd3ba-ad9a-4577-add3-e07e2e321d6b_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="callout-block" data-callout="true"><p>This is part of a six-part series on AI governance for the enterprise. The series structure is based on the <a href="https://iapp.org/certify/aigp/">AI Governance Professional (AIGP) Body of Knowledge</a> published by the IAPP, adapted for a practitioner audience focused on implementation.</p></div><p>Part 1 of this series established why AI governance requires its own programme and where it integrates with existing governance frameworks. This post covers the practical output of that programme: the policies that translate principles into operational controls, the lifecycle governance mechanisms that apply at each stage of an AI system&#8217;s life, and the third-party risk management practices that govern AI systems built by others.</p><p>A common instinct when building an AI governance programme is to start with a blank page and create an entirely new policy framework. For most organisations, this is the wrong approach. It creates a parallel governance structure that operates independently from existing security, privacy, risk, and vendor management policies. The result is duplication, confusion about which policies apply in a given situation, and gaps where the AI-specific policies assume coverage that the existing policies do not provide.</p><p>The more effective approach is to work from what exists. Identify the existing policies that already apply to AI systems, update them to ensure AI-specific considerations are within scope, and create new policies only for the areas that existing frameworks genuinely do not cover. This produces a governance structure that is integrated with the organisation&#8217;s existing controls rather than layered on top of them.</p><h2><strong>Extending Existing Policies for AI</strong></h2><p>Most organisations have mature policies for data governance, information security, privacy, intellectual property, and acceptable use of technology. Each of these needs to be reviewed and, in most cases, updated to ensure that AI systems and AI infrastructure fall within their scope. The updates are about coverage, ensuring AI is explicitly included, rather than about creating separate AI-specific controls that duplicate what already exists.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dm4s!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbac240e4-7df5-4eb7-987e-fa6bef595bc8_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dm4s!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbac240e4-7df5-4eb7-987e-fa6bef595bc8_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!dm4s!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbac240e4-7df5-4eb7-987e-fa6bef595bc8_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!dm4s!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbac240e4-7df5-4eb7-987e-fa6bef595bc8_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!dm4s!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbac240e4-7df5-4eb7-987e-fa6bef595bc8_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dm4s!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbac240e4-7df5-4eb7-987e-fa6bef595bc8_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bac240e4-7df5-4eb7-987e-fa6bef595bc8_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:923314,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/195411777?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbac240e4-7df5-4eb7-987e-fa6bef595bc8_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dm4s!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbac240e4-7df5-4eb7-987e-fa6bef595bc8_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!dm4s!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbac240e4-7df5-4eb7-987e-fa6bef595bc8_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!dm4s!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbac240e4-7df5-4eb7-987e-fa6bef595bc8_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!dm4s!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbac240e4-7df5-4eb7-987e-fa6bef595bc8_1536x1024.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3><strong>Data governance</strong></h3><p>Existing data governance policies cover data classification, retention, access control, and quality standards. These controls apply to AI systems, but AI introduces additional considerations that the existing policy likely does not address.</p><p>Training data governance is the most significant gap. The rights to use data for model training may differ from the rights to use that data for its original purpose. An organisation may have collected customer data for service delivery under specific consent provisions, but using that data to train a machine learning model may require a different legal basis. The data governance policy should address whether organisational data can be used for training, what approvals are required, and how training data usage is documented.</p><p>Data quality assessment for AI purposes also extends beyond conventional data quality. Training data must be evaluated for representativeness (does it adequately represent the population the model will serve), for bias (does it contain systematic imbalances that will produce discriminatory outputs), and for provenance (can the origin and processing history of the data be traced and verified). These assessments are not covered by standard data quality frameworks, which focus on accuracy, completeness, and consistency.</p><p>The policy should also address synthetic data (how is it governed, how is its quality assured, how is its use documented), data lineage requirements for AI (tracing data from source through transformation to model input), and the handling of data used for fine-tuning and retrieval-augmented generation (RAG), which may introduce data access patterns that existing classification controls do not anticipate.</p><h3><strong>Information security</strong></h3><p>Existing security policies cover access control, encryption, logging, vulnerability management, and incident response. These controls apply to AI infrastructure in the same way they apply to any other technology asset. The update required is a scope extension, ensuring that AI infrastructure is explicitly included within existing security controls rather than inadvertently excluded.</p><p>Model weights and training data should be classified under the organisation&#8217;s data classification scheme and protected accordingly. AI serving endpoints, vector databases, agent harnesses, and MCP servers should be included in asset inventories and subject to existing vulnerability management processes. AI-specific attack vectors (prompt injection, data poisoning, model extraction, training data inference) should be incorporated into the organisation&#8217;s threat model and reflected in incident classification criteria.</p><p>The most important practical update is ensuring that AI infrastructure credentials are managed within existing secrets management practices. Industry data shows that AI service credentials are the fastest-growing category of leaked secrets, with MCP configuration files frequently containing hardcoded API keys because documentation and quickstart guides often encourage this pattern. The fix is to bring AI credentials within the scope of existing secrets management, rotation, and monitoring policies, with the same standards that apply to every other credential in the environment.</p><div class="callout-block" data-callout="true"><p>&#8220;AI service credentials are the fastest-growing category of leaked secrets, with an <strong>81% year-over-year increase</strong> in 2025. The most commonly leaked types include Hugging Face tokens, Azure OpenAI keys, and Weights &amp; Biases credentials. 113,000 DeepSeek API keys alone were detected in 2025.&#8221; - <a href="https://snyk.io/articles/state-of-secrets/">snyk.io</a></p></div><p>Similarly, AI-related security incidents (a compromised model serving endpoint, a data poisoning attempt, an agent operating outside its defined boundaries) should be classified and managed within the existing incident response framework, with AI-specific playbooks added to the existing runbook library rather than maintained in a separate system.</p><h3><strong>Intellectual property</strong></h3><p>Existing IP policies cover ownership, licensing, and protection of organisational intellectual property. AI introduces several questions that these policies likely do not address.</p><p>Ownership of AI-generated outputs is the first. When a model generates code, text, images, or analytical outputs, who owns them? The answer depends on the licensing terms of the model, the jurisdiction, and the nature of the output. The policy should establish the organisation&#8217;s position on ownership of AI-generated work product and require that licensing terms for models and training datasets are reviewed before deployment.</p><p>The IP implications of training data are the second. If copyrighted material is included in training data (whether through licensed datasets, web scraping, or third-party models trained on public data), the organisation&#8217;s exposure to IP claims should be assessed. Open-source model licences often include restrictions on commercial use, redistribution, or derivative works that differ from conventional software licences and may not be caught by standard software procurement review processes.</p><p>The use of AI-generated code in production software requires specific attention. If developers use code generation tools, the organisation needs a position on code review requirements for AI-generated code, attribution and licensing obligations, and liability for defects in generated code.</p><h3><strong>Privacy</strong></h3><p>Existing privacy policies cover collection, use, disclosure, and retention of personal information. AI extends these in several specific areas.</p><p>Automated decision-making provisions in privacy legislation (GDPR Article 22, the Australian Privacy Act&#8217;s provisions on automated decisions that significantly affect individuals) require that organisations identify where AI systems make or contribute to decisions about individuals, provide notification that automated processing is occurring, and offer rights to human review and explanation of automated decisions. The privacy policy should require an assessment of automated decision-making provisions for any AI system that processes personal information.</p><p>The use of personal data in training and fine-tuning may require a different lawful basis than the one under which the data was originally collected. Data minimisation in AI contexts means ensuring that models are not exposed to more personal data than is necessary for the use case, which may require filtering, anonymisation, or synthetic data substitution before data enters a training pipeline.</p><p>Privacy impact assessments for AI systems should evaluate AI-specific risks including inference attacks (can the model reveal information about individuals in its training data through targeted queries), memorisation (does the model reproduce personal data from its training set in its outputs), and re-identification (can anonymised data be re-identified through model outputs or through combination with other data sources).</p><h3><strong>Acceptable use</strong></h3><p>Most organisations already have an acceptable use policy (AUP) that covers how employees use technology: internet access, email, social media, cloud storage, BYOD. AI tools are a new category of technology that the existing AUP needs to cover, following the same principle applied to the other four policy areas. When social media became prevalent, organisations updated their existing AUPs to address it. When cloud storage services emerged, the AUP was extended again. AI tools warrant the same treatment.</p><p>The AI-specific additions to the existing AUP should address the following areas.</p><ul><li><p><strong>Approved tools and services: </strong>Which AI tools and services employees are permitted to use for work purposes. This should include both dedicated AI applications (ChatGPT, Claude, Copilot) and AI features embedded within existing SaaS platforms (Salesforce Einstein, Notion AI, Gmail&#8217;s Smart Compose). Shadow AI, where employees use unapproved AI tools for work tasks, is a growing governance gap. According to <a href="https://www.gallup.com/workplace/704225/rising-adoption-spurs-workforce-changes.aspx">Gallup</a>, 46% of US employees used AI at least a few times a year by Q4 2025, but only 22% said their organisation had communicated a clear plan or strategy for AI use.</p></li><li><p><strong>Data classification restrictions: </strong>What data can be provided to AI systems, based on the organisation&#8217;s data classification scheme. Confidential and restricted data should generally not be entered into external AI services unless the service meets specific contractual and security requirements. The policy should be specific about what &#8220;confidential data&#8221; includes in this context: customer personal information, financial data, source code, internal strategy documents, employee data.</p></li><li><p><strong>Output review and validation: </strong>How AI-generated outputs should be reviewed before use. AI outputs should be treated as drafts that require human review, especially for content that will be published externally, used in decision-making about individuals, or incorporated into production systems. The policy should specify the level of review required based on the risk level of the use case.</p></li><li><p><strong>Disclosure requirements: </strong>When the use of AI must be disclosed. This may include disclosure to customers (if AI is used in customer-facing interactions), to partners (if AI-generated content is shared externally), and to regulators (if AI is used in regulated processes). Disclosure requirements vary by jurisdiction and sector, and the policy should align with the organisation&#8217;s legal obligations.</p></li><li><p><strong>Prohibited uses: </strong>Use cases that the organisation has determined are too high-risk or ethically inappropriate. These should be specific and tied to the organisation&#8217;s risk classification framework. Examples might include using AI for autonomous hiring decisions without human review, using AI to generate synthetic media depicting real individuals without consent, or using AI to make lending decisions that cannot be explained to the applicant.</p></li></ul><p>For most organisations, these additions fit naturally within the existing AUP&#8217;s structure. If the volume of AI-specific guidance becomes substantial enough to make the existing AUP unwieldy, a standalone AI acceptable use document can be maintained as a referenced appendix. That is an organisational decision about document management, not a governance principle.</p><h2><strong>AI Lifecycle Policies</strong></h2><p>The policies described above are extensions of existing frameworks. The following policies are specific to the AI lifecycle and have no direct equivalent in conventional governance. They govern the stages of an AI system&#8217;s life, from initial use case assessment through deployment, monitoring, and eventual decommissioning.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oxS6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F256d7d32-8e46-4877-bbe8-604d7261f422_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oxS6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F256d7d32-8e46-4877-bbe8-604d7261f422_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!oxS6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F256d7d32-8e46-4877-bbe8-604d7261f422_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!oxS6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F256d7d32-8e46-4877-bbe8-604d7261f422_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!oxS6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F256d7d32-8e46-4877-bbe8-604d7261f422_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oxS6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F256d7d32-8e46-4877-bbe8-604d7261f422_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/256d7d32-8e46-4877-bbe8-604d7261f422_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:812460,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/195411777?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F256d7d32-8e46-4877-bbe8-604d7261f422_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!oxS6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F256d7d32-8e46-4877-bbe8-604d7261f422_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!oxS6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F256d7d32-8e46-4877-bbe8-604d7261f422_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!oxS6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F256d7d32-8e46-4877-bbe8-604d7261f422_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!oxS6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F256d7d32-8e46-4877-bbe8-604d7261f422_1536x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3><strong>Use case assessment and approval</strong></h3><p>Before an AI system is developed or procured, the proposed use case should go through an assessment that determines the level of governance rigour that will apply throughout its lifecycle. This assessment evaluates the business justification, the intended users and affected individuals, the types of data involved, the potential for harm if the system fails or produces biased outputs, and whether the use case falls within the organisation&#8217;s defined boundaries for acceptable AI use.</p><p>The assessment should produce a risk classification that determines what happens next. Low-risk use cases (internal productivity tools, summarisation of non-sensitive documents) may proceed with lightweight governance: a documented assessment, compliance with the acceptable use policy, and standard security controls. High-risk use cases (systems that make or influence decisions about individuals&#8217; access to services, employment, credit, insurance, or safety) should require governance committee or executive-level approval, a formal impact assessment, specific testing requirements for bias and fairness, human oversight design, and ongoing monitoring obligations.</p><p>The EU AI Act&#8217;s risk classification framework (prohibited, high-risk, limited, minimal) provides one reference model for this tiering. Organisations may define their own categories based on their risk appetite, regulatory context, and sector-specific obligations, but the principle of proportional governance, applying more rigour where the potential for harm is greater, should be consistent.</p><h3><strong>Ethics by design</strong></h3><p>Fairness, transparency, and human oversight are more effectively addressed during the design phase than evaluated after the system is built. A policy requiring ethics-by-design ensures that these considerations are part of the design specification rather than an afterthought discovered during a pre-deployment review.</p><p>The policy should require stakeholder identification (who is affected by this system and how their interests might be harmed), fairness criteria selection (which definition of fairness applies to this use case, acknowledging that different definitions can conflict), explainability requirements (what level of explanation is required for this system&#8217;s outputs, given its risk classification and regulatory obligations), and human oversight design (what mechanisms exist for a human to review, override, or shut down the system, and under what conditions those mechanisms should be activated).</p><p>For high-risk systems, the ethics-by-design assessment should be a documented deliverable that is reviewed by the governance committee and retained as part of the system&#8217;s governance record.</p><h3><strong>Development and testing standards</strong></h3><p>Policies governing how AI systems are built and validated should address documentation requirements at each development stage, testing requirements proportional to risk classification, peer review requirements for model development, and the criteria that must be met before a system can proceed from development to deployment.</p><p>Testing requirements are where the risk classification has the most practical impact. A minimal-risk system (a content recommendation engine for internal knowledge articles) may require standard functional testing and basic performance validation. A high-risk system (a credit scoring model) should require bias testing across protected characteristics, adversarial testing, interpretability analysis, and validation against holdout datasets that represent the population the model will serve. Part 4 of this series covers these testing disciplines in detail.</p><p>The relationship between AI testing standards and the organisation&#8217;s existing software development lifecycle (SDLC) and quality assurance (QA) processes should be explicitly defined. AI testing extends conventional software testing but does not replace it. Standard code review, unit testing, integration testing, and security testing all still apply. The additional AI-specific testing (bias, fairness, interpretability, adversarial robustness) sits alongside them.</p><h3><strong>Deployment and monitoring</strong></h3><p>Policies governing how AI systems are released into production and how they are monitored once operational cover three areas: readiness, documentation, and ongoing surveillance.</p><p>Production readiness criteria define the conditions that must be met before deployment: successful completion of all required testing, approval from the governance committee (for high-risk systems), completion of all documentation requirements, establishment of monitoring infrastructure, and confirmation that incident response procedures are in place. Model cards or system documentation should accompany every deployed system, recording the model&#8217;s purpose, training data description, known limitations, performance metrics, and the conditions under which it should not be used.</p><p>Continuous monitoring requirements should specify what metrics are tracked (performance, fairness, drift, safety), how frequently they are evaluated, what thresholds trigger intervention, and who is responsible for responding. Model drift (where the model&#8217;s performance degrades over time because the data distribution changes) is a risk that has no direct parallel in conventional software and requires dedicated monitoring. Part 5 of this series covers monitoring and production governance in detail.</p><h3><strong>Incident management</strong></h3><p>AI-related incidents should be managed within the organisation&#8217;s existing incident response framework, with AI-specific classification criteria and investigation procedures added to the existing process. Creating a separate AI incident management process would fragment operational response and create confusion about escalation paths.</p><p>What the existing framework needs to accommodate is the range of events that constitute an AI incident. These include biased outputs affecting a class of users, model failure causing operational disruption, data breach involving training data, adversarial attack on a deployed model (prompt injection, data poisoning, model extraction), an autonomous agent taking actions outside its defined boundaries, and regulatory non-compliance discovered in a deployed system.</p><p>Investigation procedures for AI incidents may differ from conventional IT incidents. Root cause analysis may require examining training data quality, model architecture decisions, testing gaps, or drift in input data distributions. The investigation may need to involve data scientists and ML engineers alongside the security and operations teams that typically lead incident response. The policy should define when these specialists are engaged and how their findings are documented.</p><p>Reporting obligations may also differ. AI-specific legislation may require notification to regulators when certain types of AI incidents occur, particularly for high-risk systems. The incident management policy should reference these obligations and define the notification workflow.</p><h3><strong>Documentation and reporting</strong></h3><p>Documentation serves both internal governance needs (accountability, institutional memory, audit readiness) and external obligations (regulatory compliance, transparency to affected individuals, third-party audit). The documentation policy should specify what documentation is required at each lifecycle stage and who is responsible for creating and maintaining it.</p><p><strong>Documentation requirements by lifecycle stage</strong></p><ul><li><p><strong>Design and approval:</strong> Use case assessment, risk classification, ethics-by-design assessment, impact assessment (for high-risk systems), governance committee approval records.</p></li><li><p><strong>Development:</strong> Training data description and provenance, model architecture documentation, testing plans and results (including bias and fairness testing), known limitations, peer review records.</p></li><li><p><strong>Deployment:</strong> Model card or system documentation, production readiness approval, monitoring configuration, incident response procedures, rollback plan.</p></li><li><p><strong>Operations:</strong> Monitoring reports, performance and fairness metrics over time, incident records, retraining records, drift analysis results, access and change logs.</p></li><li><p><strong>Governance:</strong> Policy exception records, risk acceptance documentation, audit findings and remediation records, regulatory correspondence.</p></li></ul><p>Documentation is one of the areas where governance programmes most frequently fail in practice. The policies are written, the templates are created, but the documentation is not completed or maintained because the people responsible for creating it (engineers, data scientists) view it as overhead rather than as part of the work. The governance programme needs to make documentation a required deliverable with the same enforcement as code review or security testing, built into the workflow rather than appended to it.</p><h2><strong>Third-Party AI Risk Management</strong></h2><p>For most organisations, the majority of their AI usage involves systems and services built by others: commercial LLM APIs, AI features embedded in SaaS platforms, pre-trained models from open-source repositories, and AI-powered tools used by employees. Third-party AI risk management is therefore the governance activity with the broadest day-to-day applicability.</p><p>The organisation deploying a third-party AI system is typically accountable for the outcomes that system produces in its environment, regardless of who built the model. This accountability gap, where the deployer bears the risk but the provider controls the system, is the central challenge of third-party AI governance.</p><h3><strong>Assessment during procurement</strong></h3><p>The procurement assessment for a third-party AI system extends the organisation&#8217;s existing vendor risk management process with AI-specific questions. The assessment should cover what data was used to train the model (and whether that data creates IP or bias risk), what testing the provider has performed for bias, safety, and security, what documentation is available (model cards, system cards, technical reports, known limitations), how the provider manages incidents and communicates them to customers, what data handling practices apply to inputs and outputs (whether customer data is used for training, whether it is retained after processing, and where it is processed geographically), and what the provider&#8217;s approach is to regulatory compliance (particularly under the EU AI Act, where providers of general-purpose AI models have specific obligations).</p><p>For AI features embedded within existing SaaS platforms, the assessment may be more targeted: what data does the AI feature access, can the feature be disabled if it does not meet governance requirements, does the vendor&#8217;s data processing agreement cover AI-specific processing, and what controls exist to prevent the AI feature from accessing data outside its intended scope.</p><h3><strong>Contractual considerations</strong></h3><p>AI-specific terms should be included in vendor contracts alongside standard security and data protection provisions. These include data handling commitments (no training on customer data without explicit consent, data residency requirements, retention and deletion policies for inference inputs and outputs), liability allocation for harm caused by AI outputs (who bears responsibility when the model produces biased, inaccurate, or harmful results), IP indemnification (protection against claims arising from the model&#8217;s training data), transparency obligations (notification of material model changes, disclosure of known limitations, communication of policy changes that affect data handling), audit rights (the ability to assess the provider&#8217;s AI governance practices, either directly or through third-party audit reports), incident notification (timely communication of AI-related incidents that may affect the organisation&#8217;s data or operations), and termination provisions (data portability, model access on contract termination, transition support).</p><h3><strong>Ongoing monitoring</strong></h3><p>The governance of third-party AI does not end at procurement. The organisation should periodically reassess the provider&#8217;s governance practices (annually at minimum, or when material changes are announced), monitor the performance and outputs of third-party AI systems within its own environment (using the same monitoring framework that applies to internally developed systems), track provider communications about model changes, updates, and incidents, and maintain the ability to switch providers or bring capabilities in-house if the provider&#8217;s governance practices deteriorate or the provider&#8217;s terms change in ways that are incompatible with the organisation&#8217;s requirements.</p><h3><strong>Supply chain risk</strong></h3><p>The AI supply chain extends beyond the model provider. It includes the data providers whose datasets were used for training, the cloud infrastructure providers that host the model, the tooling providers (MCP servers, agent frameworks, vector databases, embedding services) that form part of the delivery chain, and any intermediaries or resellers in the distribution path. Each layer introduces potential governance gaps.</p><p>A model may be developed by one organisation, fine-tuned by another, hosted by a third, and accessed through a fourth&#8217;s API. At each layer, data handling practices, security controls, and governance standards may differ. The organisation deploying the system needs visibility into the material components of the supply chain and assurance that governance practices at each layer meet its requirements. This does not require auditing every component in depth, but it does require identifying the components that materially affect the security, privacy, or fairness of the system and assessing their governance posture.</p><blockquote><p>Industry data shows that AI service secrets are the fastest-growing category of leaked credentials, with 81.5% year-over-year growth. Configuration files for AI infrastructure tools frequently contain hardcoded API keys, because quickstart guides and documentation often encourage this pattern. This is a supply chain governance issue as much as a security issue: the organisation&#8217;s exposure is determined by the credential hygiene practices of every component in the AI delivery chain.</p></blockquote><h2><strong>Connecting Policies to the Governance Programme</strong></h2><p>Policies are effective only if they are connected to the organisational structures, roles, and responsibilities established in the governance programme. A use case assessment policy is useful only if someone is responsible for performing the assessment, competent to perform it, and held accountable for the quality of the result. A testing policy that requires bias evaluation is useful only if the team performing the testing has the skills, tools, and time to conduct it meaningfully. A documentation policy is useful only if documentation is treated as a required deliverable with enforcement equivalent to code review or security sign-off.</p><p>The gap between written policies and operational practice is where governance programmes most commonly fail. Policies are adopted, templates are created, and governance committees are formed. The policies sit in a document management system. The templates are completed as a compliance exercise rather than as a genuine assessment. The governance committee meets quarterly and reviews dashboards that show process compliance (how many assessments were completed) rather than outcome quality (how many AI systems are operating within their defined risk parameters).</p><p>Closing that gap requires treating governance as an operational practice with the same operational discipline applied to security operations or software delivery. Policies need owners. Assessments need quality review. Documentation needs validation. Monitoring needs response. </p><p>The governance programme described in Part 1 provides the structure. The policies described in this post provide the content. The next post covers the legal and regulatory framework that shapes many of these policy requirements, including the EU AI Act&#8217;s risk classification, existing privacy and non-discrimination law as applied to AI, and the industry standards that provide additional governance structure.</p><p><strong>Series Navigation</strong></p><ul><li><p>Part 1 - Foundations</p></li><li><p>Part 2 - Policies and Lifecycle</p></li><li><p>Part 3 - Legal and Regulatory Framework</p></li><li><p>Part 4 - Developing AI Systems</p></li><li><p>Part 5 - AI in Production</p></li><li><p>Part 6 - Deploying and Using AI</p></li></ul>]]></content:encoded></item><item><title><![CDATA[AI Governance for the Enterprise: Part 1 - Foundations]]></title><description><![CDATA[AI Governance Series Part 1 of 6 - Most organisations already govern information security, data privacy, and risk. AI adds another layer of governance requirements.]]></description><link>https://ajiththamarakshan.substack.com/p/ai-governance-for-the-enterprise</link><guid isPermaLink="false">https://ajiththamarakshan.substack.com/p/ai-governance-for-the-enterprise</guid><dc:creator><![CDATA[Ajith Thamarakshan]]></dc:creator><pubDate>Thu, 14 May 2026 22:01:14 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!AfAb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172afb3a-9a21-40f9-97f1-4105d764ad1d_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AfAb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172afb3a-9a21-40f9-97f1-4105d764ad1d_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AfAb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172afb3a-9a21-40f9-97f1-4105d764ad1d_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!AfAb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172afb3a-9a21-40f9-97f1-4105d764ad1d_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!AfAb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172afb3a-9a21-40f9-97f1-4105d764ad1d_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!AfAb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172afb3a-9a21-40f9-97f1-4105d764ad1d_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AfAb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172afb3a-9a21-40f9-97f1-4105d764ad1d_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/172afb3a-9a21-40f9-97f1-4105d764ad1d_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2298800,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/195333616?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172afb3a-9a21-40f9-97f1-4105d764ad1d_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!AfAb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172afb3a-9a21-40f9-97f1-4105d764ad1d_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!AfAb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172afb3a-9a21-40f9-97f1-4105d764ad1d_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!AfAb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172afb3a-9a21-40f9-97f1-4105d764ad1d_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!AfAb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172afb3a-9a21-40f9-97f1-4105d764ad1d_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="callout-block" data-callout="true"><p>This is the first post in a six-part series on AI governance for the enterprise. The series structure is based on the <a href="https://iapp.org/certify/aigp/">AI Governance Professional (AIGP) Body of Knowledge</a> published by the IAPP, adapted for a practitioner audience focused on implementation.</p></div><p>Every large organisation has governance frameworks for information security. Most have frameworks for data privacy, for risk management, for change control, for vendor management. These frameworks are mature, well-understood, and auditable. The question that most organisations are now confronting is whether AI can be governed within these existing structures or whether it requires something additional.</p><p>The answer is that it requires something additional. AI systems have characteristics that existing governance frameworks were not designed to address. The opacity of a neural network&#8217;s decision-making process is different in kind from the opacity of a misconfigured access control list. The potential for a language model to generate discriminatory content at scale is different from the potential for a database query to return biased results. The speed at which an autonomous agent can take consequential actions across connected systems is different from the speed at which a human operator can make mistakes.</p><p>This does not mean existing frameworks are irrelevant. ISO 27001 still governs information security controls. Privacy legislation still governs personal data processing. Risk management frameworks still apply. AI governance sits alongside these, extending them where AI introduces new considerations and adding new controls where existing frameworks have no coverage. The goal is integration, ensuring that AI governance connects to what already exists rather than creating a parallel structure that operates in isolation.</p><h2><strong>What Makes AI Different from a Governance Perspective</strong></h2><p>Software systems have been governed for decades. What is it about AI that warrants a distinct governance approach? The answer lies in a set of characteristics that, while individually present in other systems, combine in AI to create governance challenges that existing frameworks do not adequately cover.</p><h4><strong>Characteristics that require dedicated governance</strong></h4><ul><li><p><strong>Opacity: </strong>Many AI models, particularly deep learning systems, produce outputs through processes that cannot be fully explained or audited at the individual decision level. A traditional software system can be traced through its code path. A neural network with billions of parameters cannot be traced in the same way. This creates challenges for accountability, auditability, and the ability to explain decisions to affected individuals, all of which are requirements under existing regulatory frameworks that assume explainability is technically achievable.</p></li><li><p><strong>Probabilistic outputs: </strong>Traditional software is deterministic: the same input produces the same output. AI systems are probabilistic: the same input may produce different outputs depending on model state, temperature settings, and stochastic processes within the inference pipeline. This means testing and validation cannot rely on the deterministic assumptions that underpin conventional software quality assurance. A system that passes testing today may produce different results tomorrow on the same inputs.</p></li><li><p><strong>Autonomy and agency: </strong>Agentic AI systems can plan, select tools, and execute actions across connected infrastructure with minimal human intervention. A traditional automated system follows a predefined script. An agentic system decides what to do based on its interpretation of a goal. This introduces governance questions about delegation of authority, accountability for autonomous decisions, and the boundaries within which an agent should be allowed to operate.</p></li><li><p><strong>Data dependency: </strong>AI system behaviour is determined as much by training data as by code. A model trained on biased data will produce biased outputs regardless of how well the surrounding code is written. This means data governance, data quality, data provenance, and the rights to use specific data for training are governance concerns that directly affect the safety and fairness of the system&#8217;s outputs. Traditional software governance focuses on code quality and configuration; AI governance must extend to data quality and lineage.</p></li><li><p><strong>Speed and scale of harm: </strong>An AI system making decisions at machine speed across millions of transactions can cause harm at a scale and velocity that manual processes cannot. A biased hiring algorithm that screens 10,000 applicants before the bias is detected causes more harm than a biased human recruiter who screens 50. A language model that generates misinformation can produce it faster than any human effort to correct it. The speed at which AI operates means that governance controls must be designed to detect and respond to problems in near real time.</p></li><li><p><strong>Emergent behaviour: </strong>Large AI systems can exhibit capabilities and behaviours that were not explicitly designed or anticipated by their developers. A model trained for one task may develop the ability to perform related tasks that were not part of its training objective. This makes comprehensive pre-deployment testing more difficult, because the full range of the system&#8217;s capabilities may not be known at the time of deployment.</p></li></ul><p>Each of these characteristics, taken individually, might be addressable within an existing governance framework. Taken together, they create a governance challenge that requires its own structure, its own policies, its own risk assessment methodology, and its own accountability model. An organisation that attempts to govern AI solely through its existing information security and privacy programmes will find gaps: the bias and fairness questions that information security does not address, the explainability requirements that privacy impact assessments are not designed to evaluate, the autonomous decision-making that change management processes do not cover.</p><h2><strong>Where AI Governance Sits in the Enterprise</strong></h2><p>AI governance does not replace existing governance structures. It integrates with them. Understanding where it overlaps with and where it extends existing frameworks is essential for building a programme that is effective without being redundant.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qYj3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe91cc542-de7d-4fb1-ad10-9cf5653439f3_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qYj3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe91cc542-de7d-4fb1-ad10-9cf5653439f3_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!qYj3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe91cc542-de7d-4fb1-ad10-9cf5653439f3_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!qYj3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe91cc542-de7d-4fb1-ad10-9cf5653439f3_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!qYj3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe91cc542-de7d-4fb1-ad10-9cf5653439f3_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qYj3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe91cc542-de7d-4fb1-ad10-9cf5653439f3_1536x1024.png" width="1536" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e91cc542-de7d-4fb1-ad10-9cf5653439f3_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1536,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1465080,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/195333616?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac09c145-65e0-4ba6-84e6-f1a0e1ae9bb6_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!qYj3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe91cc542-de7d-4fb1-ad10-9cf5653439f3_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!qYj3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe91cc542-de7d-4fb1-ad10-9cf5653439f3_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!qYj3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe91cc542-de7d-4fb1-ad10-9cf5653439f3_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!qYj3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe91cc542-de7d-4fb1-ad10-9cf5653439f3_1536x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3><strong>Relationship to information security governance</strong></h3><p>Information security governance (ISO 27001, NIST CSF, SOC 2) covers the confidentiality, integrity, and availability of information assets. AI systems are information assets, and the security controls that protect them (access control, encryption, logging, incident response) are governed by existing security frameworks. What security governance does not cover is the safety and fairness of AI system outputs, the governance of training data quality and provenance, the explainability of model decisions, or the ethical implications of deploying autonomous systems. AI governance extends security governance into these areas.</p><h3><strong>Relationship to data privacy governance</strong></h3><p>Privacy legislation (GDPR, the Australian Privacy Act, CCPA) governs how personal data is collected, processed, and shared. AI systems that process personal data are subject to these requirements. Where privacy governance and AI governance overlap most directly is in automated decision-making provisions: GDPR Article 22 provides rights related to solely automated decisions with legal or significant effects, and the Australian Privacy Act includes provisions on automated decisions that significantly affect individuals. AI governance extends privacy governance by addressing the broader question of how AI decisions are made, whether those decisions are fair across different groups, and how individuals can contest or understand AI-driven outcomes.</p><h3><strong>Relationship to risk management</strong></h3><p>Enterprise risk management frameworks cover operational, financial, strategic, and compliance risk. AI introduces risk categories that these frameworks need to accommodate: algorithmic bias risk, model drift risk, data quality risk, supply chain risk from third-party models, reputational risk from AI-generated content, and the legal liability risks that arise from autonomous systems making decisions that cause harm. AI governance provides the domain-specific risk assessment methodology (impact assessments, risk classification, harm evaluation) that feeds into the broader enterprise risk register.</p><h3><strong>Relationship to vendor and third-party risk management</strong></h3><p>Most organisations deploying AI are using models and services built by third parties. The governance of these third-party relationships falls partly within existing vendor risk management frameworks (security assessments, contractual obligations, SLA monitoring) and partly within AI-specific governance (evaluating model behaviour, understanding training data practices, assessing bias in vendor-supplied models, ensuring the vendor&#8217;s AI governance programme meets the organisation&#8217;s requirements). The third-party dimension is particularly important because the organisation deploying the AI system is typically accountable for its outcomes, regardless of whether the underlying model was built in-house or procured from a vendor.</p><p>According to the IAPP&#8217;s <a href="https://iapp.org/resources/article/ai-governance-profession-report">2025 AI Governance Profession Report</a>, 77% of organisations are actively developing AI governance programmes, with 47% ranking AI governance among their top five strategic priorities. The regulatory pressure is getting real: the EU AI Act&#8217;s high-risk AI system requirements take full effect in August 2026, with penalties up to &#8364;35 million or 7% of global annual turnover for non-compliance.</p><h2><strong>The Risk Taxonomy</strong></h2><p>AI governance requires a clear understanding of the types of risks and harms that AI systems can cause. These risks operate at multiple levels: harms to individuals, harms to the organisation, and harms to society. A governance programme that focuses only on compliance risk to the organisation misses the individual and societal harms that increasingly drive regulatory action and reputational consequences.</p><h3><strong>Harms to individuals</strong></h3><p>AI systems can cause direct harm to individuals through biased or discriminatory outputs (a hiring algorithm that systematically disadvantages certain demographic groups), through privacy violations (a model that memorises and reproduces personal data from its training set), through safety failures (an autonomous vehicle that misclassifies a pedestrian), and through loss of autonomy (decisions made by opaque systems that individuals cannot understand, contest, or override). These harms are the primary focus of AI-specific legislation such as the EU AI Act, which classifies AI systems by risk level based partly on the potential severity of harm to individuals.</p><h3><strong>Harms to the organisation</strong></h3><p>AI systems create organisational risk through legal liability (discrimination claims, product liability, contractual breaches), reputational damage (public incidents involving biased or harmful AI outputs), operational failures (model drift causing degraded performance, AI systems making incorrect decisions at scale), intellectual property exposure (training data that includes copyrighted material, model outputs that infringe third-party IP), and regulatory non-compliance (failure to meet the requirements of AI-specific legislation). These risks are more familiar to enterprise governance professionals and map more naturally to existing risk registers.</p><h3><strong>Harms to society</strong></h3><p>At the broadest level, AI systems can cause societal harm through the amplification of misinformation, the concentration of power in entities that control large-scale AI systems, environmental impact from the computational resources required for training and inference, the erosion of trust in institutions that deploy opaque AI decision-making, and the potential for AI to be used for surveillance, manipulation, or control. These societal risks are harder to govern at the individual organisation level but are increasingly reflected in regulatory frameworks and public expectations.</p><p>A governance programme that is aware of all three levels of harm is better positioned to identify risks early, design appropriate controls, and respond effectively when incidents occur. The risk assessment methodology should evaluate proposed AI use cases against all three levels, even where the organisation&#8217;s primary concern is its own liability.</p><h2><strong>The Principles of Responsible AI</strong></h2><p>Across regulatory frameworks, industry standards, and organisational AI ethics statements, a consistent set of principles has emerged. These principles are not prescriptive controls. They are the values that inform how controls are designed, how trade-offs are evaluated, and how the organisation communicates its approach to AI governance to stakeholders, regulators, and the public.</p><h4><strong>Common principles across frameworks</strong></h4><ul><li><p><strong>Fairness: </strong>AI systems should treat individuals and groups equitably and should not produce outcomes that discriminate on the basis of protected characteristics. Fairness in AI is technically complex because it requires defining what &#8220;fair&#8221; means in a specific context (equal outcomes, equal opportunity, calibrated predictions), and because different definitions of fairness can conflict with each other. The governance programme needs to establish which fairness criteria apply to each use case and how compliance with those criteria will be measured and monitored.</p></li><li><p><strong>Safety and reliability: </strong>AI systems should function as intended, should be robust against adversarial inputs and unexpected conditions, and should not cause physical, financial, or psychological harm. Safety requirements vary by context: a content recommendation system has different safety requirements from a medical diagnostic system. The governance programme should include risk classification that determines the level of testing, validation, and monitoring required based on the potential consequences of system failure.</p></li><li><p><strong>Privacy and security: </strong>AI systems should protect the privacy of individuals whose data is used in training, inference, or system outputs. Security controls should protect the AI system against adversarial attacks, data poisoning, model theft, and prompt injection. This principle connects AI governance directly to existing information security and privacy governance frameworks.</p></li><li><p><strong>Transparency and explainability: </strong>Organisations should be transparent about when and how AI is used, and AI systems should be able to provide explanations of their outputs that are meaningful to the people affected by them. The level of explainability required depends on the context: a music recommendation system may require minimal explanation, while an automated credit decision requires a detailed explanation of the factors that contributed to the outcome. Regulatory frameworks increasingly mandate both transparency (disclosing that AI is being used) and explainability (providing reasons for individual decisions).</p></li><li><p><strong>Accountability: </strong>There should be clear accountability for the outcomes produced by AI systems. This means identifiable individuals or roles are responsible for the design, deployment, and ongoing operation of each AI system. It also means that mechanisms exist for individuals affected by AI decisions to seek recourse, and that the organisation can demonstrate to regulators how decisions were made and who was responsible for them.</p></li><li><p><strong>Human-centricity: </strong>AI systems should be designed to augment human capabilities and serve human needs, with human oversight appropriate to the risk level of the system. For high-risk applications, this means maintaining the ability for a human to review, override, or shut down an AI system. The EU AI Act codifies this as a requirement for high-risk AI systems, mandating that such systems are designed to allow effective human oversight.</p></li></ul><p>These principles are broadly consistent across the <a href="https://oecd.ai/en/ai-principles">OECD AI Principles</a>, the <a href="https://www.industry.gov.au/publications/australias-artificial-intelligence-ethics-framework">Australian AI Ethics Principles</a>, the <a href="https://www.nist.gov/artificial-intelligence/executive-order-safe-secure-and-trustworthy-artificial-intelligence">NIST AI Risk Management Framework</a>, and the EU AI Act. The specific terminology varies, but the underlying values converge. A governance programme built on these principles can adapt to different regulatory requirements as they evolve because the principles provide a stable foundation even as specific regulatory obligations change.</p><h2><strong>Establishing the Governance Programme</strong></h2><p>Principles and risk taxonomies provide the conceptual foundation. The governance programme itself requires organisational structure, defined roles, cross-functional collaboration, and an approach that is calibrated to the organisation&#8217;s size, maturity, and risk profile.</p><h3><strong>Roles and responsibilities</strong></h3><p>AI governance cannot sit within a single function. The decisions involved span technology (model selection, architecture, security), legal (regulatory compliance, liability, IP), ethics (fairness, bias, societal impact), business (use case selection, cost-benefit, customer impact), and risk (enterprise risk integration, audit, reporting). A governance programme that is owned exclusively by the technology function will underweight legal and ethical considerations. One that is owned exclusively by legal will underweight technical feasibility and operational reality.</p><p>The typical organisational model involves an AI governance committee or council with representation from each relevant function, supported by subject matter specialists who perform the detailed assessment work. The committee provides strategic direction, sets policy, reviews high-risk use cases, and reports to executive leadership and the board. The specialists perform impact assessments, evaluate model behaviour, monitor deployed systems, and manage incidents.</p><p>Clear ownership is essential. For each AI system, there should be an identifiable owner who is accountable for its governance compliance, its ongoing performance, and the resolution of any issues that arise. This ownership should be documented and should persist through the system&#8217;s lifecycle, including after the individuals who originally deployed the system have moved to other roles.</p><h3><strong>Cross-functional collaboration</strong></h3><p>The cross-functional nature of AI governance is one of its defining characteristics. A decision about whether to deploy a customer-facing chatbot involves technology (can it be built safely), legal (does it comply with consumer protection and privacy law), marketing (how will customers perceive it), risk (what happens if it produces harmful outputs), and operations (who monitors it, who responds to incidents). No single function has the expertise to evaluate all of these dimensions.</p><p>Effective cross-functional collaboration requires shared terminology (all stakeholders need to understand what &#8220;bias&#8221; means in this context, what &#8220;explainability&#8221; means, what &#8220;high-risk&#8221; means), shared processes (a common impact assessment template, a common risk classification framework), and shared tools (a common registry of AI systems, a common incident management process). Without these, cross-functional governance becomes a series of disconnected reviews by functions that are each applying their own criteria and reaching their own conclusions.</p><h3><strong>Training and awareness</strong></h3><p>AI governance is effective only if the people building, deploying, and using AI systems understand what is expected of them. This requires training at multiple levels: awareness training for all employees who interact with AI systems (what AI is, how it works at a basic level, what the organisation&#8217;s AI policies require), technical training for engineers and data scientists (bias detection methods, security testing for AI systems, documentation requirements), and governance training for managers and executives (risk classification, regulatory obligations, accountability structures).</p><p>The training programme should be ongoing rather than a one-time exercise. AI capabilities, regulatory requirements, and organisational policies all evolve. A training programme that was current 12 months ago may not reflect the current state of the technology or the regulatory environment.</p><h3><strong>Scaling governance to the organisation</strong></h3><p>The governance approach should be proportional to the organisation&#8217;s AI maturity, size, and risk exposure. A 50-person company using a third-party chatbot for customer support requires a different governance structure from a 50,000-person financial institution building proprietary trading models. The principles remain the same, but the formality, resourcing, and depth of the governance programme should scale appropriately.</p><p>For organisations early in their AI adoption, the governance programme may be a set of policies, an impact assessment process for new AI use cases, and a small cross-functional review group. For organisations with mature AI programmes and significant regulatory exposure, the governance programme may include dedicated AI risk analysts, automated monitoring of deployed models, regular audit cycles, and board-level reporting on AI risk metrics.</p><p>The key distinction from a governance perspective is the role the organisation plays in the AI value chain. An organisation that develops its own AI models carries different responsibilities from one that deploys models built by third parties. A developer must govern the training data, the model architecture, the testing regime, and the documentation. A deployer must evaluate the vendor&#8217;s governance practices, perform its own impact assessment for the specific use case, govern the deployment configuration and monitoring, and maintain accountability for the outcomes the system produces. Many organisations occupy both roles simultaneously, developing some AI capabilities internally while deploying third-party models for others. The governance programme needs to account for both.</p><h2><strong>What This Series Covers</strong></h2><p>This post has established the foundations: why AI governance needs its own programme, where it sits relative to existing governance frameworks, the risk taxonomy, the common principles, and the organisational structure needed to make governance effective. The remaining five posts in this series cover the lifecycle of AI governance in practice.</p><ul><li><p><strong>Part 2</strong> covers the policies and procedures that apply across the AI lifecycle, including how to extend existing organisational policies for AI and how to manage third-party AI risk.</p></li><li><p><strong>Part 3</strong> covers the legal and regulatory framework: existing laws (privacy, IP, non-discrimination, consumer protection, product liability) that apply to AI, AI-specific legislation (the EU AI Act and emerging equivalents), and the industry standards and frameworks (OECD AI Principles, NIST AI RMF, ISO 42001) that provide the governance structure.</p></li><li><p><strong>Part 4</strong> covers governing AI development: design, data governance, training, and testing.</p></li><li><p><strong>Part 5</strong> covers governing AI in production: release readiness, continuous monitoring, incident management, and transparency obligations.</p></li><li><p><strong>Part 6</strong> covers governing AI deployment and use from the deployer&#8217;s perspective: model selection, impact assessment, vendor evaluation, and the ongoing governance of deployed systems.</p></li></ul><p>Together, these six posts provide a reference for building an AI governance programme that is grounded in established principles, aligned with the regulatory direction, and practical enough to implement within the constraints of a real organisation.</p>]]></content:encoded></item><item><title><![CDATA[Agentic AI in the Enterprise: Architecture, Protocols, and the Governance Gap]]></title><description><![CDATA[An early look at how autonomous AI agents are being built and deployed in the enterprise, the protocol stack that is forming around them, and the governance challenges that remain unresolved.]]></description><link>https://ajiththamarakshan.substack.com/p/agentic-ai-in-the-enterprise-architecture</link><guid isPermaLink="false">https://ajiththamarakshan.substack.com/p/agentic-ai-in-the-enterprise-architecture</guid><dc:creator><![CDATA[Ajith Thamarakshan]]></dc:creator><pubDate>Sun, 10 May 2026 22:00:46 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!oBwN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fef8453-479b-49fd-95e6-9be8dd3d6cf6_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oBwN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fef8453-479b-49fd-95e6-9be8dd3d6cf6_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oBwN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fef8453-479b-49fd-95e6-9be8dd3d6cf6_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!oBwN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fef8453-479b-49fd-95e6-9be8dd3d6cf6_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!oBwN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fef8453-479b-49fd-95e6-9be8dd3d6cf6_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!oBwN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fef8453-479b-49fd-95e6-9be8dd3d6cf6_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oBwN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fef8453-479b-49fd-95e6-9be8dd3d6cf6_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2fef8453-479b-49fd-95e6-9be8dd3d6cf6_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1780616,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/196490849?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fef8453-479b-49fd-95e6-9be8dd3d6cf6_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!oBwN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fef8453-479b-49fd-95e6-9be8dd3d6cf6_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!oBwN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fef8453-479b-49fd-95e6-9be8dd3d6cf6_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!oBwN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fef8453-479b-49fd-95e6-9be8dd3d6cf6_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!oBwN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fef8453-479b-49fd-95e6-9be8dd3d6cf6_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The deployment of autonomous AI agents in the enterprise has accelerated beyond what most governance and security teams anticipated. <a href="https://www.gartner.com/en/newsroom">Gartner</a> projects that 40% of enterprise applications will incorporate task-specific agents by the end of 2026, up from less than 5% in 2025. The <a href="https://modelcontextprotocol.io/">Model Context Protocol (MCP)</a> has crossed 97 million SDK downloads and 10,000 enterprise server implementations. The <a href="https://google.github.io/A2A/">Agent-to-Agent (A2A) protocol</a> has more than 150 organisations in production use within its first year. The infrastructure for a multi-agent enterprise is being built steadily.</p><p>The governance, identity, and security infrastructure has not kept pace. According to the <a href="https://www.gravitee.io/resource/state-of-ai-agent-security-2026">Gravitee State of AI Agent Security 2026 Report</a>, only 14.4% of organisations report their AI agents go live with full security and IT approval. <a href="https://www.nist.gov/caisi/ai-agent-standards-initiative">NIST launched the AI Agent Standards Initiative</a> in February 2026, the first federal programme dedicated to agent interoperability and security, and the comment periods have only recently closed. The first normative output, the AI Agent Interoperability Profile, is targeted for Q4 2026. The standards are being written while the systems are being deployed.</p><p>This post provides an early architectural map of the agentic AI enterprise: what is emerging, what is settling, and what remains unresolved. Some of these patterns will consolidate into lasting standards. Others may be superseded as the field matures. The post is written with that uncertainty in mind, focusing on the structural patterns and governance principles that are likely to persist regardless of which specific protocols or platforms prevail.</p><h2><strong>What Is Agentic AI?</strong></h2><p>An AI agent is a software system that receives a goal, reasons about how to achieve it, selects and executes actions, evaluates the results, and iterates until the goal is met or the system determines it cannot proceed. The defining characteristic is autonomy: the agent decides what to do based on its interpretation of the goal, rather than following a predefined script. A traditional automated workflow executes a fixed sequence of steps. An agent determines the steps at runtime.</p><p>Several properties distinguish agentic systems from conventional AI and automation. <strong>Goal-orientation</strong> means the agent works toward an outcome rather than responding to a single prompt. <strong>Planning</strong> means the agent decomposes complex goals into subtasks and determines the order of execution. <strong>Tool use</strong> means the agent interacts with external systems (APIs, databases, file systems, communication platforms) to take actions in the world. <strong>Memory</strong> means the agent retains context across interactions, within a session or across sessions, and uses that context to inform future decisions. <strong>Delegation</strong> means the agent can invoke other agents or services to handle subtasks it cannot or should not perform itself.</p><h3><strong>Core components</strong></h3><p>An agentic system is composed of several building blocks, each of which carries its own governance and security considerations.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XKsn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faca10e06-13b7-4bc4-8823-e69e8cea570e_1672x941.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XKsn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faca10e06-13b7-4bc4-8823-e69e8cea570e_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!XKsn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faca10e06-13b7-4bc4-8823-e69e8cea570e_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!XKsn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faca10e06-13b7-4bc4-8823-e69e8cea570e_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!XKsn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faca10e06-13b7-4bc4-8823-e69e8cea570e_1672x941.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XKsn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faca10e06-13b7-4bc4-8823-e69e8cea570e_1672x941.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aca10e06-13b7-4bc4-8823-e69e8cea570e_1672x941.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b7c0744b-7dcd-4964-b442-8acd3e583fe2_1672x941.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1763067,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/196490849?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7c0744b-7dcd-4964-b442-8acd3e583fe2_1672x941.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!XKsn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faca10e06-13b7-4bc4-8823-e69e8cea570e_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!XKsn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faca10e06-13b7-4bc4-8823-e69e8cea570e_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!XKsn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faca10e06-13b7-4bc4-8823-e69e8cea570e_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!XKsn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faca10e06-13b7-4bc4-8823-e69e8cea570e_1672x941.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h4><strong>Building blocks of an agentic system</strong></h4><ul><li><p><strong>Foundation model: </strong>The large language model (or other AI model) that provides the agent&#8217;s reasoning, language understanding, and generation capabilities. The foundation model is the cognitive core: it interprets goals, generates plans, constructs tool calls, and evaluates results. It may be a commercial API (GPT, Claude, Gemini), an open-source model (Llama, Mistral), or a domain-specific model fine-tuned for a particular industry. The choice of foundation model affects the agent&#8217;s capability, cost, explainability, and the organisation&#8217;s data handling obligations.</p></li><li><p><strong>System prompt and instructions: </strong>The instructions that define the agent&#8217;s role, constraints, personality, and operating boundaries. The system prompt shapes what the agent will and will not do. It is the primary mechanism for constraining agent behaviour, and its design is considered a governance activity. A poorly scoped system prompt can allow the agent to operate outside its intended boundaries.</p></li><li><p><strong>Tool definitions: </strong>Structured descriptions of the external capabilities available to the agent: what each tool does, what parameters it accepts, and what it returns. Tool definitions are provided to the agent as part of its context and determine what actions the agent can take. In the MCP ecosystem, tool definitions are served by MCP servers. The set of tools available to an agent defines its effective capability and its potential attack surface.</p></li><li><p><strong>Memory and context: </strong>The mechanisms by which the agent retains and retrieves information across interactions. Short-term memory (the conversation or task context within a session) is typically managed through the model&#8217;s context window. Long-term memory (information persisted across sessions) may be stored in vector databases, knowledge graphs, or conventional databases. Retrieval-Augmented Generation (RAG) pipelines allow the agent to search external knowledge bases at runtime, grounding its responses in organisational data. Memory and retrieval systems determine what information the agent can access, which has direct implications for data governance and access control.</p></li><li><p><strong>Orchestration layer: </strong>This is the logic that manages the agent&#8217;s execution loop: receiving a goal, invoking the model to generate a plan, executing tool calls, evaluating results, and deciding whether to continue, retry, escalate, or terminate. In single-agent systems, the orchestration layer is typically part of the agent framework (<a href="https://docs.langchain.com/">LangChain</a>, LangGraph, CrewAI, Autogen, or custom implementations). In multi-agent systems, the orchestration layer also manages which agents are involved, how tasks are delegated, and how results are aggregated.</p></li><li><p><strong>Guardrails and safety layer: </strong>The controls that regulate agent behaviour during execution: <strong>input validation</strong> (filtering harmful or manipulative inputs before they reach the model), <strong>output validation</strong> (checking that the agent&#8217;s planned actions fall within approved boundaries before execution), <strong>content filtering</strong> (blocking harmful, biased, or inappropriate outputs), <strong>rate limiting</strong> (preventing runaway execution), and <strong>human-in-the-loop gates</strong> (requiring approval for high-consequence actions). The guardrails layer is the enforcement layer for governance policies at runtime.</p></li></ul><h3><strong>The agent harness</strong></h3><p>The components described above do not operate independently. They are assembled into an <strong>agent harness</strong>. It refers to the complete runtime environment that wraps the foundation model and connects it to tools, data, memory, guardrails, and the orchestration logic that drives the agent&#8217;s execution loop. When an agent is deployed to production, the harness is what is deployed: the model, its system prompt, the tool definitions it can access, the memory stores it reads from and writes to, the guardrails that regulate its behaviour, and the orchestration logic that determines how it plans, executes, and evaluates.</p><p>From a security and governance perspective, the harness is the attack surface. A compromised system prompt, a poisoned tool definition, a manipulated memory store, or a misconfigured guardrail all sit within the harness. Auditing an agent means auditing the harness. This involves reviewing the prompt for scope creep, the tool definitions for unauthorised capabilities, the retrieval pipeline for data access violations, the guardrails for bypass conditions, and the orchestration logic for escalation and termination paths. The harness should be treated with the same configuration management rigour applied to any other production deployment and must be version-controlled, change-managed, and subject to security review before deployment and after any modification.</p><h3><strong>Integrations and connectors</strong></h3><p>An agent&#8217;s utility comes from its ability to interact with external systems. The integration layer connects the agent to the tools, data sources, and services it needs to accomplish its goals.</p><ul><li><p><strong>Tool connectors</strong> provide the agent with the ability to call external APIs: reading from and writing to databases, querying search engines, sending emails, creating tickets, modifying records in CRM and ERP systems, executing code, browsing the web, and interacting with any service that exposes an API. In the MCP ecosystem, each tool is exposed through an MCP server that the agent discovers and connects to. The number of available MCP servers has grown rapidly, covering major enterprise platforms (Salesforce, ServiceNow, Jira, Confluence, Slack, Google Workspace, Microsoft 365) as well as infrastructure services (AWS, Azure, GCP) and developer tools (GitHub, GitLab, databases, monitoring platforms).</p></li><li><p><strong>Data connectors</strong> provide the agent with access to organisational knowledge: document repositories, knowledge bases, databases, and data lakes. RAG pipelines are the most common pattern, where the agent queries a vector database to retrieve relevant documents and includes them in its context before generating a response or plan. The data connector layer is where data governance controls are critical: the agent should access only the data it is authorised to use for the current task, and the retrieval mechanism should respect the access controls that apply to the underlying data sources.</p></li><li><p><strong>Agent-to-agent connectors</strong>, standardised through the A2A protocol, allow agents to discover each other&#8217;s capabilities, delegate tasks, and coordinate workflows. These connectors enable the multi-agent architectures discussed later in this post, where specialised agents collaborate on complex workflows that exceed the capability of any single agent.</p></li><li><p><strong>Identity and authentication connectors</strong> provide the agent with the credentials it needs to access external services. These include OAuth 2.0 flows (on-behalf-of for delegated user permissions, client credentials for the agent&#8217;s own identity), token vaults (centralised credential management for multiple services), and workload identity federation (cross-platform authentication without stored secrets). The identity connector layer determines who the agent authenticates as, what permissions it holds, and how its actions are attributed in audit logs.</p></li></ul><h2><strong>From Assistants to Autonomous Agents</strong></h2><p>The evolution from chatbots to enterprise-grade autonomous agents has followed a trajectory that mirrors the broader history of distributed computing. Chatbots receive a prompt and return text. Single agents receive a goal, select tools, and execute actions against external systems. Multi-agent systems involve multiple specialised agents (planning, retrieval, execution, evaluation, escalation) collaborating on complex workflows, with delegation chains and orchestration patterns that resemble the shift from monolithic applications to microservices.</p><p>The analogy to microservices is useful because it highlights both the architectural benefits (specialisation, composability, independent scaling) and the operational challenges (observability, debugging, cascading failures, service mesh governance) that multi-agent systems inherit. Organisations that went through the microservices migration understand that distributing functionality across independent services creates coordination complexity that does not exist in a monolith. The same dynamic applies to distributing cognitive tasks across independent agents.</p><p>Understanding how agentic NHIs differ from traditional non-human identities (service accounts, API keys, managed identities) is important for determining what governance controls apply.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/2oVD9/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1626a68a-594a-4838-9484-268d5046d79d_1220x1228.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/15ee813c-e3f3-42db-9805-4297d7c12b42_1220x1228.png&quot;,&quot;height&quot;:620,&quot;title&quot;:&quot;Created with Datawrapper&quot;,&quot;description&quot;:&quot;&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/2oVD9/1/" width="730" height="620" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><p>Examples of enterprise use cases where multi-agent architectures are moving into production include supply chain optimisation (agents monitoring inventory levels, coordinating procurement, and adjusting logistics across multiple systems), customer service resolution (triage agents routing inquiries, knowledge retrieval agents searching documentation, resolution agents executing actions, escalation agents engaging human support), internal workflow automation (onboarding workflows spanning HR, IT, facilities, and security systems), and cross-system orchestration (agents coordinating processes across ERP, CRM, and legacy applications that were never designed to interoperate through AI).</p><h2><strong>The Emerging Protocol Stack</strong></h2><p>The communication infrastructure for agentic AI is forming around two primary protocols and a set of emerging extensions. This section describes what is settling and where the architecture remains experimental.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ep4v!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F950cb10c-267b-4732-98eb-4918250995f0_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ep4v!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F950cb10c-267b-4732-98eb-4918250995f0_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!ep4v!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F950cb10c-267b-4732-98eb-4918250995f0_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!ep4v!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F950cb10c-267b-4732-98eb-4918250995f0_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!ep4v!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F950cb10c-267b-4732-98eb-4918250995f0_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ep4v!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F950cb10c-267b-4732-98eb-4918250995f0_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/950cb10c-267b-4732-98eb-4918250995f0_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f2ed556f-2dc2-47a3-896d-77b0202dfb52_1536x1024.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1903059,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/196490849?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff2ed556f-2dc2-47a3-896d-77b0202dfb52_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ep4v!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F950cb10c-267b-4732-98eb-4918250995f0_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!ep4v!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F950cb10c-267b-4732-98eb-4918250995f0_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!ep4v!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F950cb10c-267b-4732-98eb-4918250995f0_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!ep4v!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F950cb10c-267b-4732-98eb-4918250995f0_1536x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3><strong>MCP: agent-to-tool connectivity</strong></h3><p>The <a href="https://modelcontextprotocol.io/">Model Context Protocol</a>, originally created by Anthropic and now governed by the Linux Foundation, standardises how agents discover, connect to, and interact with external tools, APIs, and data sources. MCP provides a universal connector that reduces integration cost: rather than building custom integrations for each tool, developers build an MCP server for the tool and any MCP-compatible agent can use it. The analogy to USB-C as a universal hardware connector captures the basic intent.</p><p>MCP is the most mature layer of the agentic protocol stack. With <a href="https://blog.modelcontextprotocol.io/posts/2025-12-09-mcp-joins-agentic-ai-foundation/">97 million SDK downloads</a> and implementations across Anthropic, OpenAI, Google, Microsoft, and AWS, it has achieved the critical mass needed for an ecosystem standard. MCP compliance is appearing in enterprise RFPs as organisations seek to prevent vendor lock-in in their agent infrastructure.</p><p>The security posture of the MCP ecosystem remains a concern. Research from Check Point and Wiz found that approximately 40% of the roughly 10,000 MCP servers reviewed contained security weaknesses. GitGuardian detected over 24,000 secrets exposed in MCP configuration files in the protocol&#8217;s first full year of mainstream adoption, driven partly by documentation that often encourages hardcoding API keys directly into configuration files. The Smithery.ai vulnerability documented by Wiz exposed an overprivileged token granting arbitrary code execution across all 3,000+ hosted MCP servers. MCP has achieved protocol maturity. Security maturity is lagging behind.</p><h3><strong>A2A: agent-to-agent communication</strong></h3><p>The <a href="https://google.github.io/A2A/">Agent-to-Agent protocol</a>, created by Google Cloud in April 2025 and transferred to Linux Foundation governance in June 2025, standardises how agents discover each other, delegate tasks, and coordinate workflows. A2A introduces agent cards (structured capability descriptions that agents publish for discovery), task delegation primitives, and workflow coordination mechanisms. Where MCP handles vertical connectivity (agent to tool), A2A handles horizontal connectivity (agent to agent).</p><p>A2A has more than 150 organisations in production use, with backing from Atlassian, Salesforce, SAP, ServiceNow, PayPal, and other enterprise SaaS providers. It is relatively less mature than MCP, but is gaining adoption rapidly in multi-agent enterprise scenarios.</p><h3><strong>The three-layer stack</strong></h3><p>The emerging consensus architecture positions MCP as the agent-to-tool layer, A2A as the agent-to-agent layer, and a set of commerce-oriented protocols (ACP, UCP) for transactional use cases that most enterprise implementations have not yet reached. For most organisations, the practical guidance is: start with MCP for single-agent tool connectivity, add A2A when multi-agent orchestration is required, and evaluate commerce protocols only when the use case involves autonomous transactional activity.</p><blockquote><p>The protocols define how agents communicate. They do not define how agents are governed. MCP standardises the communication between an agent and a tool. It does not enforce that the agent has appropriate permissions to use that tool, that the agent&#8217;s credentials are properly managed, or that the agent&#8217;s actions are logged with sufficient attribution. A2A standardises how agents discover and coordinate with each other. It does not establish trust between them, verify their identities, or enforce that delegation chains respect organisational access policies. <strong>The governance layer must be implemented above and below the protocols.</strong></p></blockquote><h2><strong>Architecture Patterns in Practice</strong></h2><p>The architectural patterns emerging in enterprise agent deployments reflect different levels of complexity and governance maturity. Most organisations are at the earliest stage, and the pattern they choose determines the governance challenges they will face.</p><h3><strong>Single agent with tools</strong></h3><p>The most common current pattern. One LLM-based agent connected to external tools via MCP. Well-understood, relatively containable from a governance perspective, and adequate for most current enterprise use cases. The core security controls for this pattern include dedicated agent identity, least-privilege scoping, human-in-the-loop controls for sensitive actions, comprehensive audit trails, and blast radius limitation.</p><h3><strong>Orchestrated multi-agent systems</strong></h3><p>Multiple specialised agents coordinated by a planner or router agent. This pattern introduces governance challenges that do not exist in single-agent deployments.</p><h4><strong>Multi-agent governance challenges</strong></h4><ul><li><p><strong>Delegation chain accountability :</strong>Agent A delegates to Agent B, which delegates to Agent C. Who authorised the full chain? The initiating user may have authorised Agent A, but did they implicitly authorise the downstream agents that Agent A chose to invoke? The authorisation model needs to account for multi-hop delegation, and the audit trail needs to record the full chain with attribution at each step.</p></li><li><p><strong>Privilege accumulation: </strong>Each agent in a delegation chain may have its own permission scope. When agents collaborate, the effective permission of the workflow may be the union of all participating agents&#8217; permissions, which can exceed what any individual agent or the initiating user was intended to have. This is the agent equivalent of privilege escalation, and it can occur without any agent individually exceeding its own permissions.</p></li><li><p><strong>Cascading failures: </strong>In a multi-agent workflow, one agent&#8217;s failure (a hallucinated output, a misinterpreted instruction, a compromised tool call) propagates through the chain. Downstream agents operate on the flawed output without the context to know it is flawed. The failure cascades before any monitoring or human oversight can intervene, particularly in workflows designed for speed.</p></li><li><p><strong>Attribution complexity: </strong>When a five-agent workflow produces a harmful output, which agent is responsible? The planning agent that decomposed the task? The retrieval agent that provided biased data? The execution agent that took the action? The evaluation agent that approved the result? Attribution in multi-agent systems requires end-to-end tracing of the reasoning and decision chain, which is technically demanding and not well supported by current observability tooling.</p></li></ul><h3><strong>Infrastructure patterns</strong></h3><p>Several infrastructure patterns are emerging alongside the agent architectures themselves. AI gateways are being deployed as governance enforcement points between agents and external services, analogous to API gateways in microservices architectures. These gateways can enforce policy (blocking agents from accessing unapproved services), manage credentials (rotating and injecting credentials so agents never hold long-lived secrets), and capture audit data (logging every tool call and agent interaction at the gateway layer).</p><p>Knowledge graphs are emerging as the semantic integration layer for multi-agent systems, providing shared context and truth boundaries that prevent agents from operating on stale, conflicting, or fabricated information. Dedicated observability layers are being built for agent-specific telemetry: reasoning traces, tool call sequences, delegation chains, and goal-state tracking, which are distinct from the API latency and error rate metrics that conventional application monitoring provides.</p><p>Design principles converging in production deployments include API-first, cloud-native architectures for composability and vendor portability, domain-specific models outperforming frontier models in regulated sectors where precision and auditability matter more than general capability, security-by-design as a prerequisite rather than a retrofit, and cost optimisation for AI resource management, because agent compute costs can spiral in multi-agent architectures where each step in a workflow incurs inference costs.</p><h2><strong>The Identity and Governance Gap</strong></h2><p>Agents are non-human identities, but they are NHIs with characteristics that existing NHI governance was not designed for. Standard NHI governance practices (inventory, ownership, credential hygiene, access reviews, monitoring) apply as the baseline, but the cadence and mechanisms need to be different for agents that are ephemeral, dynamic, and autonomous.</p><p>A recent post from the Identity Architecture series covered NHIs in detail.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;38f9a13a-3d42-41c0-9844-3632b6ef1f2e&quot;,&quot;caption&quot;:&quot;The first three parts of this series covered identity architecture for people: workforce users in Part 2, customers in Part 3. This post covers the identities that are not people. Service accounts, managed identities, application registrations, API keys, shared accounts, and the emerging category of AI agent identities collectively form the non-human id&#8230;&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;md&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Non-Human Identities: Service Accounts, Managed Identities, API Keys, and Agent Credentials&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:18460437,&quot;name&quot;:&quot;Ajith Thamarakshan&quot;,&quot;bio&quot;:&quot;Security architect with 25+ years across cloud, AI, identity, and payments security. CISSP since 2003. CCSP. Hundreds of assessments for banks, retailers, and government.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1a965688-2903-4375-86c3-1a3af5a261e8_896x896.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-04-30T22:00:50.032Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!VhDS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed7194c-7890-4f32-9339-10445d138eb7_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://ajiththamarakshan.substack.com/p/non-human-identities-service-accounts&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:194241163,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:8447946,&quot;publication_name&quot;:&quot;Ajith Thamarakshan&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!rm0D!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc2fa003-e017-4638-8857-46b58ee7b375_1254x1254.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><h3><strong>The NHI lifecycle adapted for agents</strong></h3><p>The lifecycle for agentic NHIs extends the conventional NHI lifecycle across five phases, each adapted for the characteristics that distinguish agents from traditional service accounts and API keys.</p><ul><li><p><strong>Discovery and provisioning: </strong>How agents are registered and catalogued in the organisation&#8217;s identity infrastructure. For persistent agents, this is similar to conventional NHI provisioning: an identity is created, an owner is assigned, and the purpose is documented. For ephemeral agents (spun up for a task, destroyed on completion), the provisioning must be automated and the catalogue must track agents that may exist for only minutes. Shadow agents (deployed without formal governance) need to be discovered through the same mechanisms used to detect shadow AI in the broader governance programme.</p></li><li><p><strong>Identity establishment: </strong>Every agent should have its own identity, distinct from the initiating user and distinct from generic service accounts. Platform implementations are emerging: <a href="https://learn.microsoft.com/en-us/entra/agent-id/identity-professional/microsoft-entra-agent-identities-for-ai-agents">Microsoft Entra Agent ID</a> introduces agent identity as a first-class object in Entra ID, and <a href="https://auth0.com/blog/announcing-auth0-for-ai-agents-powering-the-future-of-ai-securely/">Auth0 Auth for GenAI</a> provides developer-oriented agent identity with token vault management and fine-grained access control. For multi-agent systems, identity establishment extends to the relationships between agents: Agent A needs to verify Agent B&#8217;s identity before delegating a task, and the identity infrastructure needs to support this agent-to-agent authentication.</p></li><li><p><strong>Authentication and authorisation: </strong>Continuous verification under Zero Trust principles. For agents, this means evaluating the agent&#8217;s identity at every interaction, applying dynamic permission scoping based on the current task (the same agent may need different permissions for different tasks), and verifying that delegation chains are authorised. <a href="https://learn.microsoft.com/en-us/entra/workload-id/workload-identity-federation">Workload identity federation</a> provides one mechanism for cross-platform agent authentication without stored credentials.</p></li><li><p><strong>Runtime governance: </strong>Monitoring and controlling agent behaviour during execution. This includes observability (reasoning traces, tool call logs, delegation chain records), boundary enforcement (ensuring the agent operates within its defined scope), human-in-the-loop controls (requiring approval for high-consequence actions), and automated containment (terminating an agent that exhibits anomalous behaviour). Runtime governance is where the AI gateway pattern provides the most value, as a policy enforcement point that sits between the agent and the systems it interacts with.</p></li><li><p><strong>Decommissioning: </strong>Cleanup of credentials, revocation of permissions, termination of delegation chains, and preservation of audit records. For ephemeral agents, decommissioning should be automated as part of the agent&#8217;s lifecycle. For persistent agents, decommissioning follows the same process as conventional NHI decommissioning but with additional consideration for any downstream agents or workflows that depend on the decommissioned agent.</p></li></ul><h2><strong>The Threat Environment</strong></h2><p>The threat environment for agentic AI extends beyond conventional AI threats (prompt injection, data poisoning, model extraction) into territory that reflects the autonomous, connected, and delegating nature of agents.</p><h3><strong>NIST&#8217;s risk categories</strong></h3><p>NIST&#8217;s January 2026 RFI on AI agent security articulated three risk categories that now anchor the emerging control framework. Adversarial data interaction covers risks where adversary-controlled content manipulates agent behaviour, with prompt injection as the canonical example: malicious instructions embedded in data the agent retrieves as part of legitimate task execution. NIST&#8217;s framing treats prompt injection as a distinct vulnerability class where the agent&#8217;s own reasoning capability becomes the attack surface. Insecure model vulnerabilities covers compromise through the model itself, including data poisoning, backdoor attacks, and model extraction. Insecure deployment configuration covers excessive permissions, inadequate monitoring, and missing boundary controls.</p><h3><strong>Agent-specific vectors</strong></h3><p>Several threat vectors are specific to agentic architectures and do not have direct parallels in conventional AI or traditional software systems.</p><p>Autonomous exfiltration occurs when an agent with both data access and external communication capability can exfiltrate data without explicit instruction, either through manipulation (indirect prompt injection) or through goal misalignment (the agent interprets its objective in a way that leads it to transmit data externally). Privilege accumulation in delegation chains, as described earlier, allows the effective permission scope of a multi-agent workflow to exceed what any individual participant was intended to have. Cascading goal misalignment in multi-agent systems occurs when one agent&#8217;s subtly misaligned objective propagates through coordinated workflows, producing outcomes that no single agent intended.</p><p>Tool definition poisoning in the MCP ecosystem is a supply chain attack where compromised MCP servers provide altered tool definitions that redirect agent tool calls to attacker-controlled endpoints or modify the semantics of existing tools. <a href="https://atlas.mitre.org/">MITRE ATLAS</a> added &#8220;Publish Poisoned AI Agent Tool&#8221; as a specific technique in its February 2026 v5.4.0 update, reflecting the operational reality of this threat. The &#8220;Escape to Host&#8221; technique added in the same update catalogues how agent systems with code execution capabilities can break out of their intended operational context.</p><h3><strong>CSA MAESTRO</strong></h3><p>The <a href="https://cloudsecurityalliance.org/blog/2025/02/06/agentic-ai-threat-modeling-framework-maestro">Cloud Security Alliance&#8217;s MAESTRO framework</a> (Multi-Agent Environment, Security, Threat, Risk, and Outcome) provides the most comprehensive threat modelling framework purpose-built for agentic AI. MAESTRO defines a seven-layer reference architecture spanning Foundation Models, Data Operations, Agent Frameworks, Deployment Infrastructure, Agent Identity and Access, Agent Orchestration, and Agent Ecosystem. Each layer has its own threat profile, and the framework&#8217;s key insight is that the most dangerous attack paths chain across layers, starting at the foundation model and cascading through the orchestration and ecosystem layers.</p><p>MAESTRO has already been applied to real-world systems including OpenAI&#8217;s Responses API and Google&#8217;s A2A protocol, demonstrating its practical utility for threat identification. The CSA has indicated that MAESTRO v2, expected in 2026, will focus on practical implementation guidance. The <a href="https://owasp.org/www-project-top-10-for-agentic-applications/">OWASP Top 10 for Agentic Applications</a> and the OWASP Multi-Agentic System Threat Modeling Guide (which applies the MAESTRO framework) provide complementary practitioner-level resources for teams conducting threat assessments of their agent deployments.</p><h2><strong>Governance Frameworks Taking Shape</strong></h2><p>The governance infrastructure for agentic AI is being built in parallel with the systems it needs to govern. Several frameworks are developing, and while none is complete, together they are defining the shape of what mature agentic governance will require.</p><h3><strong>NIST AI Agent Standards Initiative</strong></h3><p>The <a href="https://www.nist.gov/caisi/ai-agent-standards-initiative">Initiative</a>, launched in February 2026, is organised around three pillars: facilitating industry-led technical standards with US leadership in international bodies such as ISO/IEC JTC 1, supporting community-led open-source protocol development co-invested with NSF, and conducting fundamental research in AI agent security, identity infrastructure, and interoperability evaluation.</p><p>The <a href="https://www.nist.gov/publications/accelerating-adoption-software-and-ai-agent-identity-and-authorization">NCCoE concept paper on agent identity and authorisation</a> is the most operationally relevant output for enterprise security teams. It directly addresses the gap where AI agents are commonly treated as generic service accounts with no dedicated identity, authorisation, or accountability controls. The COSAiS project is developing SP 800-53 control overlays for five AI deployment categories including single-agent and multi-agent systems. Sector-specific listening sessions in healthcare, finance, and education took place in April 2026. The AI Agent Interoperability Profile, targeted for Q4 2026, will be the initiative&#8217;s first comprehensive normative output.</p><p>The Foundation for Defense of Democracies&#8217; March 2026 response to the NIST RFI raised a concern worth noting: current threat frameworks do not model agentic attack patterns at sufficient granularity for purple-team exercises or detection engineering. Organisations should consider investing in threat modelling using emergent agentic attack taxonomies (MAESTRO, MITRE ATLAS agentic techniques, OWASP Agentic Top 10) as a parallel track to adopting official guidance, because the official guidance will take time to mature while the threat is present now.</p><h3><strong>Zero Trust for agents</strong></h3><p>Zero Trust principles (never trust, always verify, assume breach) apply to agents, but the implementation differs from conventional Zero Trust architectures. Continuous verification means evaluating agent behaviour at runtime, assessing whether the agent&#8217;s actions are consistent with its stated purpose and approved scope, which requires behavioural monitoring that goes beyond authentication. Micro-segmentation means scoping each agent&#8217;s access to the specific tools and data it needs for the current task, which requires dynamic permission boundaries that adjust per invocation. Least privilege means permission scoping that reflects the agent&#8217;s current task rather than a static role assignment that covers all possible tasks the agent might perform.</p><p>Research on Zero Trust for NHIs in IoT environments (<a href="https://www.mdpi.com/1424-8220/26/8/2392">Mthethwa et al., 2026</a>) proposes a five-step implementation framework: define NHI boundaries, implement robust identity and access management, establish continuous monitoring, develop threat detection capabilities, and create incident response protocols. This framework transfers to agentic AI with adaptation: the boundary definition must account for delegation chains, the access management must support dynamic scoping, the monitoring must include reasoning-layer observability, and the incident response must account for multi-agent cascading failures.</p><h3><strong>Governance gaps that remain open</strong></h3><p>Several governance challenges remain unresolved at the framework level. Multi-agent accountability (determining responsibility when a chain of agents produces a harmful outcome) has no established model. Cross-boundary trust (establishing trust between agents operating across organisational or jurisdictional boundaries) is an active research area with no standard solution. Ephemeral identity governance (governing identities that exist for minutes or hours and may never be reviewed by a human) challenges the periodic access review model that underpins most identity governance programmes. Behavioural verification (confirming that an agent is doing what it claims to be doing, given that its reasoning is opaque) is a fundamental limitation of current AI technology. These gaps do not prevent organisations from deploying agents, but they do require compensating controls and honest risk acceptance.</p><h2><strong>What Practitioners Should Do Now</strong></h2><p>The standards are developing, the protocols are maturing, and the governance frameworks are being written. Four actions apply regardless of which specific standards or protocols ultimately prevail.</p><h4><strong>Immediate actions for agentic AI governance</strong></h4><ol><li><p><strong>Inventory all agents currently deployed or being piloted</strong>. Include their purpose, the systems they access, the permissions they hold, and who owns them. Include agents embedded in SaaS platforms (Copilot features, workflow automation, AI assistants with tool access) that may not be formally classified as agents but have the characteristics of agents. You cannot govern what you cannot see.</p></li><li><p><strong>Apply the NHI governance baseline</strong>: every agent gets its own identity, permissions follow least privilege, credentials are short-lived and automatically managed, and all actions are logged with attribution to both the agent and the initiating user. For multi-agent systems, extend the audit trail to capture the full delegation chain.</p></li><li><p><strong>Audit MCP security posture</strong> for any agent-to-tool integrations. Check MCP server configurations for hardcoded credentials. Bring MCP infrastructure within scope of existing secrets management, vulnerability management, and asset inventory controls. Apply the same standards to MCP servers as to any other production service endpoint.</p></li><li><p><strong>Start threat modelling agent deployments</strong> using <a href="https://cloudsecurityalliance.org/blog/2025/02/06/agentic-ai-threat-modeling-framework-maestro">CSA MAESTRO</a>. Even as the framework continues to develop, the seven-layer model provides a structured approach to identifying threats that conventional threat models miss. Supplement with <a href="https://atlas.mitre.org/">MITRE ATLAS</a> agentic techniques and the <a href="https://owasp.org/www-project-top-10-for-agentic-applications/">OWASP Agentic Top 10</a> for specific attack patterns and mitigations.</p></li></ol><p>The NIST AI Agent Interoperability Profile (Q4 2026) and MAESTRO v2 are the next major milestones to watch. The <a href="https://csrc.nist.gov/projects/cosais">COSAiS SP 800-53 control overlays</a> will provide the first formal mapping of agent-specific controls to an established security control framework. Organisations with operational experience deploying agents have an opportunity to influence the direction of these standards through participation in NIST listening sessions, RFI responses, and industry working groups.</p><p>The agentic enterprise is arriving faster than the governance infrastructure designed to support it. That gap will close as standards mature, but the agents being deployed today will not wait for the standards to catch up. The practical approach is to apply the governance principles that are settled (<strong>dedicated identity, least privilege, auditability, Zero Trust</strong>), monitor the standards that are developing, and design agent architectures with sufficient modularity that they can adapt as the governance requirements solidify.</p><div class="callout-block" data-callout="true"><p>This post covers the architectural and protocol foundations for agentic AI. I will be posting a new series on AI Governance for the Enterprise, covering the full governance programme in six parts: why AI governance needs its own programme and where it integrates with existing frameworks, the policies and lifecycle governance mechanisms that operationalise it, the legal and regulatory environment across jurisdictions, governing AI development (design, data, and testing), governing AI in production (monitoring, incident management, and maintenance), and governing AI deployment from third parties (evaluation, selection, and ongoing oversight). The series will include practical checklists and templates for organisations building or maturing their AI governance programmes. Links to the specific posts will be updated once they are live.</p></div>]]></content:encoded></item><item><title><![CDATA[Workforce Identity Governance: Access Lifecycle, Reviews, and Compliance]]></title><description><![CDATA[Identity Architecture &#183; Part 5 of 5 : This post covers what happens after access is granted: how it is reviewed, how it changes when the person's role changes or is terminated.]]></description><link>https://ajiththamarakshan.substack.com/p/workforce-identity-governance-access</link><guid isPermaLink="false">https://ajiththamarakshan.substack.com/p/workforce-identity-governance-access</guid><dc:creator><![CDATA[Ajith Thamarakshan]]></dc:creator><pubDate>Thu, 07 May 2026 22:01:05 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!LByG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99080ead-7726-44b5-a780-63524caf4dcb_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LByG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99080ead-7726-44b5-a780-63524caf4dcb_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LByG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99080ead-7726-44b5-a780-63524caf4dcb_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!LByG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99080ead-7726-44b5-a780-63524caf4dcb_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!LByG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99080ead-7726-44b5-a780-63524caf4dcb_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!LByG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99080ead-7726-44b5-a780-63524caf4dcb_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LByG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99080ead-7726-44b5-a780-63524caf4dcb_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/99080ead-7726-44b5-a780-63524caf4dcb_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2031685,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/194263874?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99080ead-7726-44b5-a780-63524caf4dcb_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LByG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99080ead-7726-44b5-a780-63524caf4dcb_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!LByG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99080ead-7726-44b5-a780-63524caf4dcb_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!LByG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99080ead-7726-44b5-a780-63524caf4dcb_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!LByG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99080ead-7726-44b5-a780-63524caf4dcb_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Parts 2 through 4 of this series covered how identities are created, how they authenticate, and how their sessions and credentials are managed. This post covers what happens after access is granted: how it is reviewed, how it changes when the person&#8217;s role changes, and how it is removed when the relationship ends. Identity governance is the control layer that closes the gap between what access a person has and what access they should have.</p><p>Without active governance, permissions accumulate. A user who moves from finance to marketing retains their finance entitlements because no one explicitly revoked them. A contractor whose engagement ended six months ago still has an active guest account. An application role that was granted for a specific project remains assigned long after the project concluded. Over time, the gap between actual access and intended access widens, and with it the organisation&#8217;s exposure to both security risk and audit findings.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://ajiththamarakshan.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>This post covers two platforms in depth because the choice between them, or the decision to use both, is one of the more consequential architectural decisions in this space. Entra ID Governance is Microsoft&#8217;s native governance capability, tightly integrated with the Entra directory, Conditional Access, and PIM. SailPoint Identity Security Cloud is a cross-platform governance solution that aggregates identities and entitlements from Entra ID, on-premises AD, SaaS applications, and legacy systems into a unified governance model.</p><h2><strong>Access Packages</strong></h2><p>Access packages are Entra ID Governance&#8217;s mechanism for bundling related resources into a single requestable unit with defined lifecycle policies. Rather than granting individual group memberships, application role assignments, and SharePoint site permissions one at a time through separate processes, an access package combines them into a coherent set that can be requested, approved, assigned, and expired as a unit.</p><h3><strong>How they work</strong></h3><p>An access package is defined in the Entra admin centre or via Microsoft Graph. It contains one or more resource roles: Entra ID groups, application roles for enterprise applications registered in Entra, SharePoint Online sites, or Entra ID roles (in preview). An assignment policy controls who can request the package, whether approval is required (and how many approval stages), whether the requestor must provide a justification, how long the assignment lasts before automatic expiry, and whether the assignment can be renewed.</p><p>When a user requests an access package, the approval workflow fires. The designated approver (a manager, a resource owner, or a specific named approver) receives a notification, reviews the request and justification, and approves or denies it. If approved, the user receives all the resource roles in the package. When the assignment expires (or is revoked), all resource roles are removed automatically.</p><h3><strong>Connected organisations</strong></h3><p>Access packages can be made available to external users from connected organisations. A partner organisation is registered as a connected organisation in Entra ID Governance, and its users can request access packages through a self-service portal (myaccess.microsoft.com). This provides a governed alternative to ad hoc guest account creation: instead of an employee inviting a guest and manually assigning permissions, the external user requests the specific access they need, the request goes through an approval workflow, the access has a defined expiry, and the entire process is logged.</p><p>This directly addresses the stale guest account problem discussed in <a href="https://ajiththamarakshan.substack.com/p/workforce-identity-reference-architecture">Part 2</a>. Guest access is no longer open-ended; it is time-bound and reviewable by design.</p><h3><strong>Where access packages work well, and where they do not</strong></h3><p>Access packages are effective for project-based access (a consultant needs access to a SharePoint site, a Teams channel, and a specific application for 90 days), role-based onboarding bundles (new starters in the finance team receive a standard set of applications), and governed external collaboration. They are less effective for fine-grained entitlements within applications, because they operate at the group and application role level rather than at the level of individual permissions inside an application. They also do not natively cover on-premises AD groups or non-Microsoft SaaS applications without additional configuration through SCIM provisioning or custom connectors. For environments where governance needs to span these boundaries, SailPoint provides the broader coverage, which is addressed later in this post.</p><h2><strong>Access Reviews</strong></h2><p>Access reviews are the periodic recertification mechanism in Entra ID Governance. They ask a designated reviewer to confirm whether each user&#8217;s access to a specific resource is still appropriate, and they can be configured to automatically remove access when reviewers do not respond.</p><h3><strong>Configuration</strong></h3><p>An access review is created for a specific scope: members of a group, users assigned to an application, users with an Entra directory role, users with an Azure resource role, or users assigned to an access package. The reviewer can be the user&#8217;s manager (looked up from the reporting structure in Entra), the resource owner (the group or application owner), the users themselves (self-attestation), or a specific named reviewer.</p><p>Reviews can be one-time or recurring (weekly, monthly, quarterly, semi-annually, annually). The review period defines how long reviewers have to complete their decisions. When a reviewer does not respond within the period, the configuration determines what happens: the access is automatically approved (the least secure option), automatically denied and removed (the most secure), or left unchanged (which defers the decision but leaves potentially inappropriate access in place).</p><p>Multi-stage reviews add a second layer: the first stage might be self-attestation (the user confirms they still need the access), and the second stage is manager review (the manager confirms the user&#8217;s claim). This distributes the review burden while maintaining oversight.</p><h3><strong>Practical challenges</strong></h3><p>Access reviews are conceptually sound but operationally difficult to sustain. Three problems recur in most deployments.</p><p>Reviewer fatigue is the most common. A manager responsible for 30 direct reports, each with memberships in 10 or more groups, faces a review set of 300 or more individual decisions every quarter. Without tooling that highlights which memberships are unusual or risky, the review becomes a rubber-stamp exercise where the reviewer clicks &#8220;Approve&#8221; on everything to clear the queue. Mitigations include using machine learning-based recommendations (Entra ID Governance provides these, flagging users whose access patterns differ from their peers), reducing the review scope to high-risk resources rather than reviewing everything, and setting auto-deny on non-response to create a natural consequence for not completing the review.</p><p>Context deficit is the second problem. The reviewer sees a user name and a group name, but may not understand what the group provides access to. A group called &#8220;SG-Finance-ReadWrite&#8221; is somewhat self-explanatory. A group called &#8220;APP-PRD-XJ7-Users&#8221; is not. Governance teams can address this by maintaining descriptions on groups and applications, and by providing reviewers with supplementary information (when the access was granted, who approved it, when it was last used) to support informed decisions.</p><p>The third problem is the gap between group membership and effective permissions. A user may be a member of a group that grants access to a SharePoint site. Within that site, they may have been granted additional direct permissions by a site owner. The access review covers the group membership but not the direct permissions, which means the review provides an incomplete picture of the user&#8217;s actual access. This is one of the areas where a cross-platform governance tool like SailPoint provides additional value, because it can aggregate both group-based and direct entitlements into a single review.</p><h3><strong>Guest user reviews</strong></h3><p>Access reviews for guest users deserve specific attention because of the stale account problem described in <a href="https://ajiththamarakshan.substack.com/p/workforce-identity-reference-architecture">Part 2</a>. A review scoped to all users with <code>userType = Guest</code> can be configured with the sponsor or inviting user as the reviewer and auto-removal on non-response. This creates a recurring cleanup mechanism: if the person who invited the guest cannot confirm the guest still needs access (or does not respond at all), the guest&#8217;s access is removed automatically. Combined with access packages that have defined expiry periods, this provides a two-layer defence against guest account accumulation.</p><h2><strong>Lifecycle Workflows</strong></h2><p>Lifecycle workflows automate the joiner-mover-leaver process by executing predefined tasks in response to identity lifecycle events. The trigger is typically an attribute change in the HR system (Workday, SAP SuccessFactors, or a custom source connected via the inbound provisioning API), which propagates to Entra ID and fires the appropriate workflow.</p><h4><strong>Workflow categories</strong></h4><ul><li><p><strong>Joiner: </strong>Triggered when a new employee record appears. Tasks include: enable the Entra account, add the user to groups based on department and job title, assign access packages for the user&#8217;s role, generate a Temporary Access Pass for initial credential setup, and send a welcome notification with onboarding instructions.</p></li><li><p><strong>Mover: </strong>Triggered when an employee&#8217;s department, job title, or location changes. Tasks include: add the user to groups for the new role, trigger an access review for entitlements from the previous role, and assign new access packages. Mover workflows are the most complex to design because &#8220;what should change&#8221; depends heavily on the organisation&#8217;s role model and whether the previous entitlements should be retained, reviewed, or immediately removed.</p></li><li><p><strong>Leaver: </strong>Triggered when an employee&#8217;s termination date is reached or their employment status changes. Tasks include: disable the account, revoke all active sessions, remove all access package assignments, remove the user from groups, block sign-in, transfer the user&#8217;s OneDrive content to their manager, and delete the account after a retention period (typically 30 to 90 days).</p></li></ul><p>The effectiveness of lifecycle workflows depends entirely on the reliability of the HR integration. If the HR system does not communicate terminations promptly, the leaver workflow fires late and the departed employee retains access in the gap. A compensating control is to run a scheduled workflow that queries for accounts whose employment end date has passed but whose accounts are still enabled, and disable them regardless of whether the HR event has propagated.</p><p>Lifecycle workflows can also be extended with custom tasks via Azure Logic Apps or Azure Functions, which allows organisations to integrate non-Microsoft systems into the workflow. For example, a leaver workflow could call a ServiceNow API to create a ticket for hardware retrieval, or call a SaaS application&#8217;s user management API to deprovision the account.</p><h2><strong>SailPoint Identity Security Cloud</strong></h2><p>Entra ID Governance covers provisioning, access packages, reviews, and lifecycle workflows for resources within the Entra ecosystem. For organisations whose governance requirements extend beyond that boundary, SailPoint Identity Security Cloud provides cross-platform identity governance by connecting to multiple identity sources and target systems, aggregating identities and entitlements into a unified model, and running governance processes across the full estate.</p><h3><strong>The identity warehouse</strong></h3><p>SailPoint&#8217;s core differentiator is the identity warehouse: an aggregated view that correlates user accounts from Entra ID, on-premises AD, ServiceNow, SAP, Workday, Salesforce, Oracle, mainframe systems, and other connected sources into a single identity record. Each identity has a consolidated list of entitlements gathered from all connected systems. This aggregated view is what enables cross-platform governance. A certification campaign in SailPoint can present a reviewer with a single view of a user&#8217;s access across Entra, AD, SAP, and ServiceNow, rather than requiring separate reviews in each system.</p><p>The warehouse model also enables analytics that are not possible when governance data is fragmented across systems. SailPoint can identify users who have entitlements that differ significantly from their peers in the same department (potential over-provisioning), entitlements that have not been used within a defined period (candidates for removal), and accounts that exist in a target system but are not correlated to an identity in the warehouse (orphaned accounts).</p><h3><strong>Role mining and role modelling</strong></h3><p>Role mining analyses the existing entitlement data across the user population to identify patterns. If 95% of users in the finance department hold the same five entitlements across three systems, SailPoint can suggest formalising that pattern as a &#8220;Finance&#8221; role. Role modelling allows administrators to define roles based on business function and assign entitlements to those roles. When a user is assigned a role (either manually or automatically based on HR attributes), they receive all the entitlements associated with it. When the role is revoked, the entitlements are removed.</p><p>Role-based access is the primary mechanism for reducing entitlement creep. Instead of accumulating ad hoc permissions over time through individual requests, users receive structured, role-based access that is easier to review and easier to revoke. The practical challenge is building and maintaining the role model: roles need to reflect actual business functions, they need to be updated when those functions change, and the number of roles needs to remain manageable (role explosion, where hundreds of narrow roles are created, undermines the simplification that roles are supposed to provide).</p><h3><strong>Certification campaigns</strong></h3><p>A certification campaign is SailPoint&#8217;s equivalent of an access review, with broader scope. Where Entra access reviews operate on individual resources (a group, an application, an Entra role), SailPoint certifications can span the user&#8217;s entire entitlement set across all connected systems in a single review cycle. The campaign can be configured with escalation rules (if the primary reviewer does not respond within a defined period, the review is escalated to their manager or to a security team member), auto-revocation policies for unresponded items, and exception handling (certain entitlements can be flagged as requiring additional justification rather than a binary approve/deny decision).</p><p>Certifications can also be targeted. A campaign can focus on a specific population (all users in a department that recently restructured), a specific entitlement (all users with access to a sensitive system), or a specific risk signal (all users flagged as having entitlements inconsistent with their peers). This targeting reduces reviewer fatigue by focusing the review on the access that is most likely to be inappropriate.</p><h3><strong>Separation of duties</strong></h3><p>Separation of duties (SoD) policies define combinations of entitlements that should not be held by the same person. The canonical example is financial controls: a user should not have both &#8220;create purchase order&#8221; and &#8220;approve purchase order&#8221; permissions in the ERP system, because that combination enables fraud. SoD is a regulatory requirement in many industries (SOX compliance, banking regulations) and a security best practice in all environments.</p><p>SailPoint evaluates SoD policies at two points: during provisioning (blocking a conflicting entitlement before it is granted, or flagging it for a risk-aware approval) and during certification (surfacing existing SoD violations to reviewers for remediation). Entra ID Governance does not provide native SoD enforcement, which is one of the primary reasons organisations adopt SailPoint alongside Entra. Without SoD controls, conflicting entitlements can be granted through separate access packages or manual assignments without any system flagging the conflict.</p><h2><strong>When to Use Each, and When to Use Both</strong></h2><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/8QXrS/2/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9085880b-c65b-4ebb-911c-09ad47180bf5_1220x1568.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/776612da-43aa-41c0-9c02-07f582d36e1b_1220x1568.png&quot;,&quot;height&quot;:795,&quot;title&quot;:&quot;Created with Datawrapper&quot;,&quot;description&quot;:&quot;&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/8QXrS/2/" width="730" height="795" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><p>Entra ID Governance is the right choice for Microsoft-centric environments where the majority of applications are cloud-based and integrated with Entra ID, the identity lifecycle is driven by a single HR source, and the governance requirements are met by access packages, access reviews, and lifecycle workflows. It is included in certain Microsoft licensing tiers, reducing the incremental cost for organisations already invested in the Microsoft ecosystem.</p><p>SailPoint is the right choice when the environment includes significant non-Microsoft systems (SAP, Oracle, mainframe, custom applications), when cross-platform certification campaigns are required, when SoD policies need to be enforced across multiple systems, or when role mining and modelling capabilities are needed to rationalise a complex entitlement structure. SailPoint requires dedicated implementation effort, ongoing operational investment (connector configuration, role modelling, campaign design), and its own licensing.</p><p>Many organisations use both. The typical pattern is Entra ID Governance handling provisioning, access packages, and lifecycle workflows for cloud applications (because it is natively integrated and already licensed), while SailPoint provides the aggregated governance view, cross-platform certifications, and SoD enforcement across the full estate. The integration between the two works through SailPoint reading Entra&#8217;s directory and audit data as one of its connected sources, and optionally provisioning access back to Entra via SCIM or Graph API.</p><h2><strong>Incorporating Non-Human Identities</strong></h2><p>Part 4 of this series covered the non-human identity population: service accounts, managed identities, application registrations, API keys, and AI agent identities. Governance for these identities should not be treated as a separate programme. Access reviews and certification campaigns should include non-human identities alongside human identities, and the same lifecycle management discipline (creation with an owner, periodic review, decommissioning when the purpose is served) should apply.</p><p>In Entra ID Governance, access packages can now be assigned to agent identities as discussed in Part 4, with the same approval workflows and automatic expiry policies used for human identities. Service principals can be included in access review scopes for application role assignments. SailPoint&#8217;s newer connectors support aggregating service principal entitlements from Entra ID into the identity warehouse, allowing them to appear in certification campaigns alongside human user entitlements.</p><p>The coverage is not yet complete. Most governance tooling was designed for human identities and is being extended to NHIs incrementally. The practical step is to include NHIs in the governance programme now, using whatever coverage the current tooling provides, rather than waiting for full feature parity before starting.</p><h2><strong>Logging, Audit, and Reporting</strong></h2><p>Governance reporting is often the interface between the identity team and the compliance or risk function. The reports need to answer specific questions: who has access to this system and why, when was that access last reviewed, who approved it, and is there a documented business justification. If the governance platform cannot produce these reports reliably, the compliance value of the entire programme is reduced.</p><p>Entra ID audit logs capture access package assignments and removals, access review decisions (approve, deny, no response with auto-action), lifecycle workflow executions (which tasks ran, which succeeded, which failed), and PIM role activations and deactivations. These logs can be exported to Azure Monitor (Log Analytics), Microsoft Sentinel, or a third-party SIEM via Entra diagnostic settings. Retention in Entra&#8217;s native logs is limited (30 days for sign-in logs, 30 days for audit logs in free tier, longer with premium licensing), so archival to a separate store is necessary for compliance obligations that require longer retention.</p><p>SailPoint provides certification completion reports (which reviewers completed their reviews, which did not, what the approval rate was), SoD violation reports (current violations, remediation status, exceptions), entitlement change audit trails (what changed, when, by whom), and identity risk analytics (users with anomalous entitlement profiles, orphaned accounts, unused entitlements). These reports can be exported and integrated with the organisation&#8217;s GRC (governance, risk, and compliance) tooling.</p><p>Both log streams should feed into the same SIEM used for authentication and security monitoring. An access review that removes a user&#8217;s access should correlate with the absence of subsequent authentication events from that user for the revoked application. A lifecycle workflow that disables a departed employee&#8217;s account should correlate with a session revocation event. When these events do not correlate (access was revoked in the governance system but the user is still authenticating), it indicates a gap in the provisioning chain that needs investigation.</p><h2><strong>Series Conclusion</strong></h2><p>This post completes the five-part series on identity architecture for the modern enterprise. <a href="https://ajiththamarakshan.substack.com/p/workforce-identity-and-customer-identity">Part 1</a> established the distinction between workforce and customer identity and mapped the architectural divergences between them. <a href="https://ajiththamarakshan.substack.com/p/workforce-identity-reference-architecture">Part 2</a> provided a reference architecture for workforce identity, covering directory design, Conditional Access, authentication, session management, and external collaboration. Part 3 provided the equivalent for customer identity, covering registration flows, passkey adoption, session management, privacy controls, and fraud detection. Part 4 covered non-human identities, from legacy service accounts to AI agent credentials, and the governance gap that exists across the NHI population. This final part covered the governance layer that ensures access remains appropriate over time, using both Entra ID Governance for Microsoft-centric environments and SailPoint for cross-platform governance.</p><p>The thread that runs through all five posts is that identity architecture is not a single discipline. Workforce identity, customer identity, and non-human identity each operate under different constraints, serve different populations, and are subject to different regulatory and operational requirements. Building an architecture that serves all three well requires understanding those differences and making deliberate design decisions for each domain, rather than applying a single set of patterns across all of them.</p><p></p><blockquote><p><strong>Identity Architecture for the Modern Enterprise: </strong></p><p>A five-part series covering workforce and customer identity architecture, phishing-resistant MFA, and identity governance.</p><ul><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-and-customer-identity">Part 1: Why Two Architectures</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-reference-architecture">Part 2: Workforce Reference Architecture</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/customer-identity-reference-architecture">Part 3: Customer Reference Architecture</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/non-human-identities-service-accounts">Part 4: Non-Human Identities in the Workforce</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-governance-access">Part 5: Workforce Identity Governance</a></strong></p></li></ul></blockquote><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://ajiththamarakshan.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Non-Human Identities: Service Accounts, Managed Identities, API Keys, and Agent Credentials]]></title><description><![CDATA[Identity Architecture &#183; Part 4 of 5 : A guide to managing non-human identities in the workforce.]]></description><link>https://ajiththamarakshan.substack.com/p/non-human-identities-service-accounts</link><guid isPermaLink="false">https://ajiththamarakshan.substack.com/p/non-human-identities-service-accounts</guid><dc:creator><![CDATA[Ajith Thamarakshan]]></dc:creator><pubDate>Thu, 30 Apr 2026 22:00:50 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!VhDS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed7194c-7890-4f32-9339-10445d138eb7_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VhDS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed7194c-7890-4f32-9339-10445d138eb7_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VhDS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed7194c-7890-4f32-9339-10445d138eb7_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!VhDS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed7194c-7890-4f32-9339-10445d138eb7_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!VhDS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed7194c-7890-4f32-9339-10445d138eb7_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!VhDS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed7194c-7890-4f32-9339-10445d138eb7_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VhDS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed7194c-7890-4f32-9339-10445d138eb7_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8ed7194c-7890-4f32-9339-10445d138eb7_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1758306,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/194241163?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed7194c-7890-4f32-9339-10445d138eb7_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!VhDS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed7194c-7890-4f32-9339-10445d138eb7_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!VhDS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed7194c-7890-4f32-9339-10445d138eb7_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!VhDS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed7194c-7890-4f32-9339-10445d138eb7_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!VhDS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed7194c-7890-4f32-9339-10445d138eb7_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The first three parts of this series covered identity architecture for people: workforce users in <a href="https://ajiththamarakshan.substack.com/p/workforce-identity-reference-architecture">Part 2</a>, customers in Part 3. This post covers the identities that are not people. Service accounts, managed identities, application registrations, API keys, shared accounts, and the emerging category of AI agent identities collectively form the non-human identity (NHI) population that underpins every integration, automation, and service-to-service communication in an enterprise environment.</p><p>NHIs tend to receive less attention than human identities, despite often outnumbering them. The risks they introduce are different in character. NHI credentials are frequently long-lived or non-expiring. They are often over-privileged because they were created for a specific integration during initial setup and never scoped down. They are commonly exempt from the MFA and Conditional Access policies that protect human accounts. And when compromised, they provide persistent, quiet access that does not trigger the behavioural anomaly detections designed for human sign-in patterns. An attacker using a compromised service principal at 3am looks the same as the scheduled job that runs at 3am every night.</p><h2><strong>The Inventory Problem</strong></h2><p>Before addressing individual NHI types, it is worth acknowledging the foundational challenge: most organisations do not have a complete inventory of their non-human identities. NHIs are created by different teams (developers, platform engineers, IT operations, security) through different mechanisms (Azure portal, CLI, Terraform, application registration UIs, manually created AD service accounts) and tracked in different systems, or not tracked at all.</p><p>A service principal created by a developer three years ago for a proof-of-concept integration may still have Contributor-level access to a production subscription. An on-premises service account created during a 2015 server migration may still hold domain admin privileges. An API key embedded in a CI/CD pipeline configuration may have been copied into a wiki, a Slack message, and three developers&#8217; local environments.</p><p>The first step in any NHI programme is discovery: enumerating all non-human identities, their credential types, their permission scopes, their last usage timestamps, and who owns them. In Entra ID, this means querying application registrations, service principals, managed identity assignments, and key/certificate expiry dates via Microsoft Graph. Microsoft Defender for Cloud&#8217;s identity posture assessment provides some of this visibility. Third-party NHI platforms (Astrix, Oasis Security, Clutch Security) offer discovery across multi-cloud environments, correlating identities across Entra ID, AWS IAM, GCP, and SaaS applications into a unified inventory.</p><p>Without this inventory, every subsequent governance decision is built on incomplete information.</p><h2><strong>Managed Identities</strong></h2><p>Managed identities are the preferred pattern for workload-to-service authentication because they eliminate stored credentials entirely. The identity is assigned to the Azure resource (VM, App Service, Function App, AKS pod) and the platform handles token issuance and rotation. There is no client secret to store, no certificate to rotate, and no credential to accidentally commit to a code repository.</p><p>Azure provides two types. System-assigned managed identities have a one-to-one relationship with the resource: the identity is created when the resource is created and deleted when the resource is deleted. User-assigned managed identities are standalone identity objects that can be shared across multiple resources, which is useful when several services need the same access (e.g. multiple Function Apps reading from the same storage account).</p><p>The equivalent patterns in other clouds are AWS IAM Roles (attached to EC2 instances, Lambda functions, or ECS tasks via instance profiles or execution roles) and GCP service accounts attached to Compute Engine instances or Cloud Run services.</p><p>The common mistakes with managed identities are worth noting. First, assigning overly broad roles. A managed identity given Contributor or Owner on a resource group can modify or delete any resource within it. A custom role scoped to the specific operations the workload needs (read from a storage container, write to a queue, query a database) is almost always appropriate. Second, not reviewing managed identity permissions as part of regular access reviews. The identity is managed by the platform, but the permissions are managed by you, and they can drift over time as requirements change. Third, treating managed identity access as inherently safe because the credential is platform-managed. The identity still has whatever permissions you assigned to it, and a compromised workload can exercise those permissions freely.</p><h2><strong>Application Registrations and Service Principals</strong></h2><p>For scenarios where managed identities are not available (cross-tenant access, third-party SaaS integrations, on-premises applications calling cloud APIs), Entra ID application registrations with service principals are the standard pattern. An application registration defines the identity and configuration of the application. The service principal is the instance of that application in a specific tenant.</p><h3><strong>Credential types</strong></h3><p>Two credential types are available for service principals: client secrets (passwords) and certificates.</p><p>Client secrets are simpler to configure but carry well-documented risks. The default maximum expiry in Entra ID is two years, and many organisations accept the default. Secrets are frequently stored in application configuration files, environment variables, or key-value stores where they can be leaked through misconfigured access controls, log output, or source code commits. Rotation is often manual, and when a secret expires, the integration breaks until someone notices and generates a new one.</p><p>Certificates are more secure because the private key does not leave the client. Authentication uses the certificate&#8217;s private key to sign an assertion, which means the secret material is never transmitted. The trade-off is operational complexity around certificate lifecycle management: issuance, distribution, renewal, and revocation all need to be handled, ideally through an automated PKI or through Azure Key Vault.</p><h3><strong>Operational practices</strong></h3><p>Several practices reduce the risk associated with application registrations. Set short expiry periods on client secrets (90 days or less) and automate rotation through Azure Key Vault or a secrets management platform (HashiCorp Vault, AWS Secrets Manager). Monitor for secrets approaching expiry before they cause outages. Alert on new credential additions to existing application registrations, which is a common persistence technique after an attacker compromises a service principal (adding a new secret gives them a credential that the legitimate application owner does not know about).</p><h3><strong>Workload identity federation</strong></h3><p>For workloads running outside Azure (GitHub Actions workflows, applications on other cloud providers, Kubernetes clusters), <a href="https://learn.microsoft.com/en-us/entra/workload-id/workload-identity-federation">workload identity federation</a> allows the workload to authenticate to Entra ID using a token issued by its own identity provider, without needing a stored client secret. The external identity provider (GitHub, AWS STS, a Kubernetes OIDC issuer) issues a token, and Entra ID trusts that token based on a configured trust relationship. This eliminates client secrets from CI/CD pipelines entirely, which is a significant improvement given that CI/CD credentials are a frequent target for supply chain attacks.</p><h2><strong>Service Accounts in Active Directory</strong></h2><p>On-premises service accounts in Active Directory are among the oldest and most poorly governed NHIs in most environments. They were created years or decades ago to run Windows services, scheduled tasks, or batch processes. They often hold domain-wide privileges that were granted during initial setup and never scoped down. Their passwords are frequently set to never expire because rotating them would require updating every service that uses the credential, and the documentation for which services use which accounts has often been lost.</p><p>The result is a population of highly privileged, effectively unmanaged identities with static credentials. If an attacker gains access to one of these accounts, they inherit whatever privileges it holds, and there is no MFA, no Conditional Access, and often no monitoring on service account sign-in activity.</p><h3><strong>Group Managed Service Accounts (gMSAs)</strong></h3><p>gMSAs are the recommended replacement for traditional service accounts in AD. The domain controller manages the password automatically (rotating it on a 30-day cycle by default), and the hosts authorised to use the account retrieve the current password through a secure channel. There is no manual password management, no password stored in a script or configuration file, and no risk of the password being shared or leaked through documentation.</p><p>gMSAs can be restricted to specific hosts, which limits the account&#8217;s exposure if one machine is compromised. They support services, scheduled tasks, and IIS application pools on the authorised hosts. The migration path from a traditional service account to a gMSA involves identifying all services that use the account, verifying gMSA compatibility, creating the gMSA, updating the service configurations to use it, and then disabling the original account.</p><h3><strong>Accounts that cannot be migrated</strong></h3><p>Some legacy applications do not support gMSAs (applications that require storing the password locally, or that hard-code the credential format). For these, compensating controls are necessary: restrict the account&#8217;s logon rights to the specific machines that need it (using the &#8220;Log on as a service&#8221; and &#8220;Deny log on locally&#8221; user rights assignments), monitor for any interactive logon attempts (which should never happen for a service account), and integrate the credential into a privileged access management (PAM) vault that enforces checkout/check-in, rotation, and audit logging.</p><h2><strong>Shared Accounts</strong></h2><p>Shared accounts are accounts used by multiple people: a shared mailbox account that someone logs into directly, a generic admin account for a SaaS application, a &#8220;team&#8221; account used to access a vendor portal. They break the auditability model that identity governance depends on. When an action is taken under a shared account, it cannot be attributed to a specific individual, which undermines both security investigation and compliance reporting.</p><p>The preferred alternatives depend on the scenario. For shared mailboxes, delegate access to named user accounts rather than sharing a credential for the mailbox account. For SaaS applications, configure SSO and provision named accounts with role-based permissions rather than sharing a single admin login. For vendor portals that only support a single account, some organisations create a named account for each individual and work with the vendor to accommodate that model.</p><p>For shared accounts that cannot be eliminated (and there are usually some), compensating controls should include vaulting the credential in a PAM solution, requiring checkout and check-in for each use, recording which individual checked out the credential for each session, and rotating the credential after each use or on a short schedule. The goal is to reconstruct individual attribution even when the account itself does not provide it.</p><h2><strong>API Keys</strong></h2><p>API keys are bearer tokens: whoever possesses the key can authenticate as the identity it represents. They are widely used for service-to-service communication and developer access because they are simple to implement and supported by virtually every API. They are also among the most dangerous credential types in an organisation&#8217;s environment.</p><p>API keys tend to be long-lived (months or years), broadly scoped (full API access rather than specific endpoints), and poorly tracked (created by a developer, stored in a config file, copied into other environments). They frequently end up in source code repositories, CI/CD pipeline definitions, documentation wikis, Slack messages, and support tickets. Once leaked, they provide immediate, unauthenticated access to whatever the key is authorised to reach.</p><h4><strong>API key hygiene</strong></h4><ul><li><p><strong>Store keys in a secrets manager: </strong>Never embed API keys in source code, configuration files, or environment variables directly. Use Azure Key Vault, HashiCorp Vault, AWS Secrets Manager, or the platform&#8217;s native secret store. Applications retrieve the key at runtime from the vault.</p></li><li><p><strong>Rotate on a schedule: </strong>Set a maximum key lifetime (90 days is a reasonable starting point) and automate rotation. Most cloud APIs support having two active keys simultaneously, allowing rotation without downtime: generate a new key, update the consuming application, then revoke the old key.</p></li><li><p><strong>Scope to minimum permissions: </strong>If the API supports scoped keys (read-only, specific endpoints, specific resources), use the narrowest scope that satisfies the use case. A key that can only read from a single storage container is less useful to an attacker than a key with full administrative access.</p></li><li><p><strong>Monitor usage: </strong>Track API key usage patterns. Alert on anomalies: requests from unexpected IP addresses, unusual call volumes, access to endpoints the key has not historically been used for. These are indicators of key compromise.</p></li><li><p><strong>Prefer OAuth where available: </strong>Where the consuming service supports it, replace static API keys with short-lived tokens issued through the OAuth 2.0 client credentials flow. This provides expiring tokens, revocability, and integration with the identity provider&#8217;s audit logging. The key distinction is that OAuth tokens expire and must be refreshed, while API keys remain valid until explicitly revoked.</p></li></ul><h2><strong>AI Agent Identities</strong></h2><p>AI agents are the newest and least mature category of NHI. Coding agents, research agents, scheduling assistants, customer service bots, and workflow automation agents all need identities that allow them to authenticate to APIs, access data, and take actions within defined boundaries. The identity requirements are more complex than traditional service-to-service authentication because agents often act on behalf of a specific user, need access to multiple services simultaneously, and may operate autonomously over extended periods.</p><h3><strong>The current problem</strong></h3><p>In most deployments today, agent authentication follows one of two ad hoc patterns, neither of which is adequate. In the first, the agent authenticates using a human user&#8217;s OAuth token. This means the agent inherits the user&#8217;s full permissions rather than a scoped subset, its actions appear in audit logs as if the user performed them directly, and if the token is long-lived, the agent retains access even after the user&#8217;s session ends. In the second, the agent authenticates using a service principal with broad API access. This provides no attribution to the user who initiated the agent&#8217;s task, and the service principal&#8217;s permissions are typically set once and never reviewed.</p><p>Both approaches create governance gaps. The identity platforms are responding with purpose-built agent identity constructs.</p><h3><strong>Microsoft Entra Agent ID and Agent 365</strong></h3><p><a href="https://learn.microsoft.com/en-us/entra/agent-id/identity-professional/microsoft-entra-agent-identities-for-ai-agents">Entra Agent ID</a>, currently in public preview and available through the Microsoft 365 Frontier programme, introduces agent identity as a first-class object type in Entra ID, alongside users, groups, and devices. Each AI agent receives its own identity with several properties that distinguish it from a standard service principal.</p><p>Agent identities authenticate via OAuth 2.0 and OIDC using the same protocols as other Entra workload identities, but they are subject to agent-specific Conditional Access policies that can evaluate risk signals tied to agent behaviour (anomalous API call patterns, access from unexpected locations, actions inconsistent with the agent&#8217;s defined purpose). Identity Protection generates risk reports specific to agents, and Conditional Access can block or challenge agents flagged as high-risk.</p><p>On the governance side, agent identities can be assigned access through <a href="https://learn.microsoft.com/en-us/entra/id-governance/agent-id-governance-overview">access packages in Entra ID Governance</a>, using the same approval workflows and automatic expiry policies used for human identities. When creating an access package assignment policy, administrators can now target agent identities alongside users and service principals. This means agent access is requestable, approvable, time-limited, and reviewable through the same governance mechanisms covered in Part 5 of this series.</p><p><a href="https://www.microsoft.com/en-us/security/business/identity-access/microsoft-entra-agent-id">Agent 365</a> sits above Entra Agent ID as the management plane. It provides a centralised inventory of all agents deployed across the organisation, regardless of whether they were built on Microsoft platforms, open-source frameworks, or third-party tools. Agents can be organised into collections with governance policies applied at the collection level. The agent registry, initially accessible in the Entra admin centre, is moving to the Microsoft 365 admin centre under Agent 365 as of May 2026.</p><p>The architecture supports three agent types that map to different governance profiles: assistive agents (Copilot-style, operating within a human session with delegated permissions), autonomous agents (operating independently with their own scoped permissions), and user-like agents (representing a persistent digital worker with its own identity lifecycle). Licensing currently requires Microsoft 365 Copilot and the Frontier programme, which positions this as an early-access capability at the time of writing.</p><h3><strong>Auth0 and Okta</strong></h3><p>Auth0&#8217;s approach to agent identity, <a href="https://auth0.com/blog/announcing-auth0-for-ai-agents-powering-the-future-of-ai-securely/">Auth for GenAI</a>, has been generally available since November 2025 and takes a developer-oriented approach focused on embedding identity controls into the agent&#8217;s application code. It provides user authentication for agents (so the agent can confirm the identity of the user it is acting on behalf of), a Token Vault for secure third-party API access (allowing agents to connect to services like Google Drive, Slack, and GitHub on behalf of users using managed OAuth 2.0 tokens rather than embedded credentials), asynchronous authorisation for long-running tasks (allowing the agent to request human approval for actions that should not be fully automated), and fine-grained authorisation for controlling what data the agent can retrieve based on the user&#8217;s permissions.</p><p>Okta has also introduced Cross App Access (XAA), a new open protocol extending OAuth for agent-to-app and app-to-app access at scale, with out-of-the-box support in Auth0. XAA is in early access as of January 2026.</p><p>The two approaches reflect different positioning. Entra Agent ID treats agent identity as an enterprise governance problem: the agent is a directory object subject to Conditional Access, identity protection, and lifecycle governance. Auth0 treats it as a developer integration problem: the agent is an application that needs to authenticate users and access APIs securely, and the SDK handles the identity layer. For organisations using Entra ID as their workforce identity provider and deploying Microsoft-ecosystem agents, Entra Agent ID provides the tighter integration with existing governance controls. For organisations building custom agents on diverse frameworks or deploying them in customer-facing applications, Auth0&#8217;s model may be more practical.</p><h3><strong>Principles that apply regardless of platform</strong></h3><p>Agent identity is the least mature area covered in this series. Both platforms are evolving quickly, and current implementations will change. The architectural principles, however, are stable: every agent should have its own identity rather than sharing a human user&#8217;s credentials; permissions should follow least privilege and be scoped to the specific actions the agent needs to perform; actions should be auditable with attribution to both the agent and the initiating user; and credentials should be short-lived and automatically managed. These are the same principles that apply to any other NHI, extended to a new category of workload.</p><h2><strong>Governance and Lifecycle</strong></h2><p>NHIs should be subject to the same lifecycle management discipline as human identities. In practice, they rarely are. Human identities have HR-driven provisioning and de-provisioning, regular access reviews, and established governance workflows. NHIs are typically created on demand by whoever needs them, with no standard process for documenting the owner, purpose, or intended lifetime, and no mechanism for reviewing or revoking access once the original purpose has been served.</p><p>The tooling for NHI governance is improving but is less mature than human identity governance. Entra ID provides <a href="https://learn.microsoft.com/en-us/entra/workload-id/workload-identities-faqs">workload identity Conditional Access policies</a> that can restrict service principal sign-ins by location or risk. SailPoint and other IGA platforms are extending their coverage to include application registrations and service principals in access reviews and certification campaigns. The third-party NHI platforms mentioned earlier (Astrix, Oasis, Clutch) provide discovery, posture assessment, and lifecycle management across multiple clouds.</p><p>Regardless of which tools are used, the governance model should cover the full NHI lifecycle: creation with an assigned owner and documented purpose, permission assignment following least privilege, credential management with enforced expiry and automated rotation, periodic review (quarterly for high-privilege identities, annually for standard), monitoring for anomalous behaviour, and decommissioning when the identity&#8217;s purpose has been served.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UqdY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13f062c4-b57a-447f-b984-dece945e422b_1153x1364.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UqdY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13f062c4-b57a-447f-b984-dece945e422b_1153x1364.png 424w, https://substackcdn.com/image/fetch/$s_!UqdY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13f062c4-b57a-447f-b984-dece945e422b_1153x1364.png 848w, https://substackcdn.com/image/fetch/$s_!UqdY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13f062c4-b57a-447f-b984-dece945e422b_1153x1364.png 1272w, https://substackcdn.com/image/fetch/$s_!UqdY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13f062c4-b57a-447f-b984-dece945e422b_1153x1364.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UqdY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13f062c4-b57a-447f-b984-dece945e422b_1153x1364.png" width="1153" height="1364" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/13f062c4-b57a-447f-b984-dece945e422b_1153x1364.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6b8630cb-ea95-411c-b782-29bef9151c97_1153x1364.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1364,&quot;width&quot;:1153,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1091997,&quot;alt&quot;:&quot;NHI Governance Checklist&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/194241163?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b8630cb-ea95-411c-b782-29bef9151c97_1153x1364.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="NHI Governance Checklist" title="NHI Governance Checklist" srcset="https://substackcdn.com/image/fetch/$s_!UqdY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13f062c4-b57a-447f-b984-dece945e422b_1153x1364.png 424w, https://substackcdn.com/image/fetch/$s_!UqdY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13f062c4-b57a-447f-b984-dece945e422b_1153x1364.png 848w, https://substackcdn.com/image/fetch/$s_!UqdY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13f062c4-b57a-447f-b984-dece945e422b_1153x1364.png 1272w, https://substackcdn.com/image/fetch/$s_!UqdY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13f062c4-b57a-447f-b984-dece945e422b_1153x1364.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h4><strong>NHI Governance Checklist</strong></h4><ol><li><p>Maintain an inventory of all NHIs with owner, purpose, credential type, permission scope, and expiry date.</p></li><li><p>Prioritise migration from static credentials (client secrets, API keys) to managed identities or federated tokens wherever possible.</p></li><li><p>Set maximum credential lifetimes (90 days for client secrets, shorter for high-privilege service principals) and automate rotation.</p></li><li><p>Replace on-premises service accounts with Group Managed Service Accounts (gMSAs) where the application supports them.</p></li><li><p>Eliminate shared accounts where possible. For those that remain, vault the credential and enforce checkout/check-in with individual attribution.</p></li><li><p>Include NHIs in regular access reviews. Query last-used timestamps and flag identities that have not authenticated within a defined window.</p></li><li><p>Alert on new credential additions to existing application registrations (a common persistence technique after compromise).</p></li><li><p>Monitor NHI sign-in activity for anomalies: sign-ins from unexpected locations, unusual API call patterns, activity outside expected hours.</p></li><li><p>Assign every AI agent its own identity with scoped permissions. Do not allow agents to operate using human user tokens or broadly privileged service principals.</p></li><li><p>Document the decommissioning process for each NHI type and execute it when the identity&#8217;s purpose has been fulfilled.</p></li></ol><h2><strong>Where NHIs Connect to the Rest of the Architecture</strong></h2><p>NHI governance does not exist in isolation from the workforce and customer identity architectures described in Parts 2 and 3. Service principals access the same cloud resources that workforce users access, and they should be subject to equivalent (or stricter) access controls. Managed identities running in production environments interact with customer data stores that are governed by privacy and consent requirements. AI agents may operate across both workforce and customer identity systems, accessing internal resources through Entra ID and customer-facing APIs through the customer identity platform.</p><p>The logging and monitoring infrastructure should treat NHI authentication events as part of the same event stream as human identity events. An attacker who compromises a service principal will use it alongside compromised human credentials, and detecting the attack requires correlating activity across both identity types in the same SIEM. The detection patterns are different (NHI anomaly detection focuses on API call patterns, IP address changes, and credential operations rather than impossible travel or unfamiliar device signals), but they feed into the same investigation workflow.</p><p>Part 5 of this series covers workforce identity governance with Entra ID Governance and SailPoint, including how NHIs are beginning to be incorporated into access review and certification processes alongside human identities.</p><p></p><blockquote><p><strong>Identity Architecture for the Modern Enterprise: </strong></p><p>A five-part series covering workforce and customer identity architecture, phishing-resistant MFA, and identity governance.</p><ul><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-and-customer-identity">Part 1: Why Two Architectures</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-reference-architecture">Part 2: Workforce Reference Architecture</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/customer-identity-reference-architecture">Part 3: Customer Reference Architecture</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/non-human-identities-service-accounts">Part 4: Non-Human Identities in the Workforce</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-governance-access">Part 5: Workforce Identity Governance</a></strong></p></li></ul></blockquote>]]></content:encoded></item><item><title><![CDATA[2026 Cybersecurity Threat Reports: A Meta-Analysis of 15 Vendor Reports and What Defenders Should Prioritise]]></title><description><![CDATA[A cross-vendor analysis of 15 major threat intelligence reports covering 2025 observations, identifying convergent risks and strategic priorities for defenders.]]></description><link>https://ajiththamarakshan.substack.com/p/2026-cybersecurity-threat-reports</link><guid isPermaLink="false">https://ajiththamarakshan.substack.com/p/2026-cybersecurity-threat-reports</guid><dc:creator><![CDATA[Ajith Thamarakshan]]></dc:creator><pubDate>Sun, 26 Apr 2026 22:01:30 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!9Ppf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6776d201-75e3-463a-b2fb-d58199cc0f9a_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9Ppf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6776d201-75e3-463a-b2fb-d58199cc0f9a_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9Ppf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6776d201-75e3-463a-b2fb-d58199cc0f9a_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!9Ppf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6776d201-75e3-463a-b2fb-d58199cc0f9a_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!9Ppf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6776d201-75e3-463a-b2fb-d58199cc0f9a_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!9Ppf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6776d201-75e3-463a-b2fb-d58199cc0f9a_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9Ppf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6776d201-75e3-463a-b2fb-d58199cc0f9a_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6776d201-75e3-463a-b2fb-d58199cc0f9a_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1847429,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/195298015?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6776d201-75e3-463a-b2fb-d58199cc0f9a_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!9Ppf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6776d201-75e3-463a-b2fb-d58199cc0f9a_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!9Ppf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6776d201-75e3-463a-b2fb-d58199cc0f9a_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!9Ppf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6776d201-75e3-463a-b2fb-d58199cc0f9a_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!9Ppf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6776d201-75e3-463a-b2fb-d58199cc0f9a_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>These 15 cybersecurity threat and vulnerability reports, published between October 2025 and April 2026, collectively represent one of the most comprehensive datasets available on the current state of enterprise security. The reports span tens of thousands of incident response engagements, analysis of nearly one trillion AI/ML transactions (<a href="https://www.zscaler.com/campaign/threatlabz-ai-security-report">Zscaler</a>), over 500,000 hours of incident investigations (<a href="https://cloud.google.com/blog/topics/threat-intelligence/m-trends-2026">Mandiant</a>), firmware-level telemetry from hundreds of millions of endpoint devices (<a href="https://www.absolute.com/resources/research-reports/2026-resilience-risk-index">Absolute Security</a>), and direct frontline SOC observations from Australian customer environments (<a href="https://www.fortian.com.au/blog/2025-cyber-threats-a-frontline-perspective.html">Fortian</a>).</p><p>When reports built on different methodologies, different client populations, and different observation points converge on the same findings, those findings carry more analytical weight than any single vendor&#8217;s dataset. This post synthesises the convergent themes across all 15 reports and translates them into the priorities that matter most for defenders.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/m8QV2/2/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ff76008e-4f18-4a65-8bfd-60a222839645_1220x1866.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5fd5f239-517e-4523-a7d8-a80c5b668792_1220x1990.png&quot;,&quot;height&quot;:971,&quot;title&quot;:&quot;2026 Cybersecurity Threat Reports&quot;,&quot;description&quot;:&quot;List of vendor reports included in this meta-analysis.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/m8QV2/2/" width="730" height="971" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><h2><strong>1. Attackers Have Moved Inside the Trust Boundary</strong></h2><p>The single most consistent finding across all 15 reports is that traditional perimeter-based security assumptions have been operationally invalidated. The mechanism differs by context, but the finding converges from multiple independent data sources.</p><p><a href="https://www.crowdstrike.com/en-us/global-threat-report/">CrowdStrike</a> reported that 82% of all detections in 2025 were malware-free, up from 51% in 2020. Adversaries rely on legitimate credentials, native administrative tools (LOLBins), and trusted software to blend into normal user behaviour. <a href="https://blackpointcyber.com/resources/2026-annual-threat-report/">Blackpoint</a> characterised 2025 as &#8220;The Year of Trusted Compromise,&#8221; observing that attackers no longer need zero-days, bespoke malware, or elite tradecraft. They repurpose the tools organisations already trust. The Blackpoint SOC disrupted 56% of all incidents before a payload could be deployed, and detected and responded before traditional EDR agents alerted in 72% of cases.</p><p>Fortian, observing Australian customer environments, found that phishing emails produced zero successful infostealer infections in 2025. Threat actors have fully migrated to less-governed channels: ClickFix social engineering (42% of observed infostealer infections), SEO poisoning (27%), and malicious YouTube videos (25%). Email security controls are working, but adversaries have moved to channels where those controls do not apply.</p><p><a href="https://www.paloaltonetworks.com/resources/research/unit-42-incident-response-report">Palo Alto Networks Unit 42</a> found that 87% of intrusions spanned multiple attack surfaces simultaneously, with evidence drawn from endpoints, networks, cloud, SaaS, and identity systems in parallel. Nearly 48% of incidents included browser-based activity, which Unit 42 describes as the new corporate desktop. Mandiant documented adversaries weaponising Group Policy Objects to create scheduled tasks across thousands of endpoints, executing immediately, turning the domain&#8217;s own management fabric into a mass-distribution engine for ransomware.</p><p>SSL VPN compromise was the most consistently abused initial access vector in Blackpoint&#8217;s dataset, with over 60% of SSL VPN abuse incidents assessed as pre-ransomware activity. A single compromised VPN credential provides trusted access to the internal network, enabling discovery, credential theft, lateral movement, and staging with minimal detection friction. Blackpoint&#8217;s observation: the attacker does not need to break in when they can log in.</p><p>The practical consequence is not that perimeter controls are without value. They remain relevant against technical exploit-driven attacks. The consequence is that a perimeter-first security model is structurally insufficient against an adversary who arrives via valid credentials, a trusted tool installation, or a stolen session token. The model of &#8220;assume compromise&#8221; that ASD/ACSC recommends for Australian organisations reflects this reality.</p><h3><strong>Defender priority: detection for machine-speed timelines</strong></h3><p>The temporal data across reports reinforces the urgency. CrowdStrike reported that the average eCrime breakout time dropped to 29 minutes in 2025, with the fastest observed breakout at 27 seconds. Mandiant found that the handoff time between initial access brokers and secondary threat groups collapsed to under 30 seconds, down from over 8 hours in 2022. Unit 42 documented the fastest 25% of intrusions reaching data exfiltration in just 72 minutes, four times faster than the prior year.</p><p>According to <a href="https://www.sophos.com/en-us/blog/2026-sophos-active-adversary-report">Sophos</a>, 37.1% of attacks occur between 11 pm and 3 am, with the four quietest hours falling between 6 am and noon. Exfiltration occurs only 1.87 hours before detection on average. Organisations with daytime-only security operations provide an unmonitored attack window during the hours adversaries prefer.</p><p>Automated containment, including identity isolation, network segmentation, and session revocation, must be capable of activating within minutes without requiring analyst approval. The interval between initial access and analyst engagement is now an interval in which an adversary will have already achieved significant objectives.</p><div><hr></div><h2><strong>2. Identity Is the Primary Attack Surface</strong></h2><p>Across frontline incident response data (Unit 42, Mandiant, Sophos), SOC observations (Fortian, Blackpoint), and credential management research (<a href="https://www.gitguardian.com/state-of-secrets-sprawl-report-2026">GitGuardian</a>), identity emerges as the single most reliable entry point for adversaries.</p><p>Unit 42 found that identity weaknesses played a material role in nearly 90% of all investigations. Identity served as the way in, the path to privilege escalation, and the mechanism for lateral movement. Sophos reported that MFA was either not enabled or not fully configured in 59.46% of incidents in 2025, the worst year for identity-related root causes in the report&#8217;s history. The Sophos data also showed compromised credentials (with nothing further known about the means of compromise) accounting for 42.06% of root causes, with brute-force attacks (15.58%) nearly tied with exploitation of vulnerabilities (16.04%).</p><p>Fortian&#8217;s Australian SOC data found that 100% of infostealer infections involved theft of browser credentials, with 70% involving theft or attempted theft of API keys and finance-related documents. Infostealers emerged as the dominant enabler of modern attack chains, with 59% of all malware infections observed by Fortian relating to infostealers. This represents a broader shift toward scalable, low-friction identity compromise.</p><p>Mandiant documented attackers exploiting misconfigured AD Certificate Services templates to issue certificates and create MFA-exempt impersonator admin accounts. In multiple investigations, attackers dumped entire AD databases, compromising every user credential in the domain. GitGuardian found that 64% of secrets confirmed valid in 2022 remained valid and exploitable in early 2026, representing four years of durable access paths that detection alone has not closed.</p><p>Blackpoint&#8217;s observation on AiTM phishing is particularly relevant: MFA was never bypassed or broken in the attacks they documented. It worked exactly as designed. The problem is that once MFA succeeds, trust shifts to the session itself, and AiTM attacks are built specifically to steal and reuse that trust. This aligns with the session token defence model covered in my earlier posts on <a href="https://ajiththamarakshan.substack.com/p/defending-against-adversary-in-the">AiTM session token attacks</a> and <a href="https://ajiththamarakshan.substack.com/p/the-end-of-traditional-mfa-the-case">the case for passkeys</a>.</p><h3><strong>The non-human identity dimension</strong></h3><p>A critical nuance from multiple reports is the expansion of the identity problem to non-human identities. Unit 42 noted that service accounts, automation roles, API keys, and emerging AI agents often outnumber human users, are frequently over-privileged, rely on long-lived credentials, and are inconsistently monitored. <a href="https://www.wiz.io/reports/cloud-threat-retrospective-2026">Wiz</a> found that compromising a service account can be higher leverage and quieter than compromising a person. GitGuardian detected 28.65 million new hardcoded secrets in public GitHub commits in 2025, a 34% increase and the largest single-year jump ever recorded. AI service secrets are the fastest-growing leak category, up 81.5% from 2024.</p><p>GitGuardian poses three questions every organisation must be able to answer about their non-human identities: what exists in the environment, who owns it, and what can it access. If all three cannot be answered, AI adoption is outpacing security posture.</p><h3><strong>Defender priority: identity governance as primary security infrastructure</strong></h3><p>Based on cross-report consensus: phishing-resistant MFA (FIDO2/WebAuthn passkeys) as the minimum standard for privileged roles. Session lifetime reduction for sensitive applications. Conditional access that continuously evaluates device health and risk during active sessions. Just-in-time privileged access replacing standing admin rights. Automated credential revocation and rotation with SLAs measured in hours, not weeks. MFA alone is insufficient when AiTM phishing steals the session token post-authentication; session binding and continuous access evaluation are the necessary additional layers.</p><div><hr></div><h2><strong>3. AI: Accelerant, Attack Surface, and Governance Gap</strong></h2><p>All 15 reports address AI, making it the most universally discussed topic across the dataset. The findings separate into three distinct dimensions, each with different implications for defenders.</p><h3><strong>AI as offensive accelerant</strong></h3><p>CrowdStrike reported an 89% year-over-year increase in AI-enabled adversary activity. Named adversary groups have operationalised AI across social engineering, influence operations, and technical intrusion: FAMOUS CHOLLIMA used GenAI to generate fake personas for fraudulent employment schemes; PUNK SPIDER executes AI-generated scripts during attacks; FANCY BEAR uses LAMEHUG malware implementing AI for discovery and collection. <a href="https://research.checkpoint.com/2026/cyber-security-report-2026/">Check Point</a> observed that by 2025, AI use has faded into the background of attack operations, underpinning software development, social engineering, data mining, and post-exploitation without remaining visible in malicious outputs.</p><p>Zscaler documented the first credible case of a state-sponsored actor automating 80-90% of an intrusion chain with agentic AI, with human operators intervening only for escalating decisions. Fortian observed ClickFix and infostealer campaigns using AI-generated content to scale social engineering in Australian environments. Check Point documented RENAISSANCE SPIDER using GenAI to translate ClickFix lures into Ukrainian, and Chinese intelligence services using AI to create credible consulting firms targeting former US government employees on job recruitment platforms.</p><h3><strong>AI as attack surface</strong></h3><p>Zscaler&#8217;s red team testing found critical vulnerabilities in 100% of enterprise AI systems tested, with a median time to first critical failure of just 16 minutes and some systems breached in under one second. Enterprise AI/ML transactions grew 83% year-over-year, approaching one trillion total transactions across approximately 9,000 organisations, with 18,033 terabytes of enterprise data transferred to AI/ML applications in 2025. Engineering teams accounted for 48.9% of all AI usage within organisations.</p><p>Check Point and Wiz found that 40% of approximately 10,000 MCP servers reviewed contained security weaknesses. GitGuardian detected 24,008 unique secrets exposed in MCP configuration files in their first full year of mainstream adoption, noting that MCP documentation itself often encourages unsafe patterns by recommending API keys be placed directly in configuration files. The Smithery.ai vulnerability documented by Wiz exposed an overprivileged token granting arbitrary code execution on all 3,000+ hosted MCP servers and access to API keys across hundreds of services, illustrating how centralised AI infrastructure creates catastrophic single points of failure.</p><p>GitGuardian found that AI service secrets are the fastest-growing leak category (up 81.5% year-over-year), with 8 of the 10 fastest-growing types of leaked secrets tied to AI services. LLM infrastructure leaks (retrieval APIs, orchestration layers, vector storage) are growing 5x faster than core model providers. Wiz described shadow AI, where employees and teams use AI tools outside formal governance, as creating visibility gaps that security teams cannot address with legacy tooling.</p><p><strong>A note on the AI divergence: </strong>An important analytical divergence exists across reports on the transformative nature of AI&#8217;s current operational impact. Mandiant explicitly states that they do not consider 2025 to be the year where breaches were the direct result of AI, with the vast majority of successful intrusions still stemming from human and systemic failures. Sophos concurs, noting that AI has not delivered a sea change for practical defence, and identifying the structural multi-year rise in identity-related root causes as the more consequential below-the-radar development. CrowdStrike and Zscaler characterise AI&#8217;s role as more structurally transformative, emphasising democratised capability and autonomous attack chains.</p><p>Both positions are empirically grounded in different observation layers. At the tactical level, AI amplifies existing attack categories rather than creating new ones. At the strategic level, it is changing who can execute what at what cost. The Sophos and Mandiant datasets are weighted toward SME and commercial incident response; CrowdStrike and Zscaler observe nation-state and enterprise-tier activity where AI integration is more operationally mature.</p><h3><strong>Defender priority: govern AI infrastructure before attackers exploit it</strong></h3><p>Inventory all AI tools, models, APIs, embedded features, and MCP configurations. Apply secrets management standards to AI infrastructure with the same rigour as any other production system. Never hardcode credentials in MCP configuration files or agent harnesses. Apply adversarial security testing to AI systems, using the Zscaler red team findings as a benchmark for what attackers can achieve. Enterprises blocked 39% of overall AI/ML transactions in 2025 (Zscaler), reflecting growing awareness, but leaving the majority of transactions unsanctioned or unreviewed. The governance gap between AI adoption velocity and security oversight is widening.</p><div><hr></div><h2><strong>4. Ransomware Has Evolved Structurally</strong></h2><p>Ransomware data across reports consistently reflects a maturing, evolving ecosystem rather than a declining one. Check Point reported 7,960 ransomware victims named on data leak sites in 2025, a 53% year-over-year increase. Q1 2025 recorded 2,289 published victims (134% year-over-year increase), driven substantially by Cl0p&#8217;s exploitation of zero-day vulnerabilities. Q4 subsequently surpassed this record with 2,473 victims. In Australia, <a href="https://www.cyber.gov.au/about-us/view-all-content/reports-and-statistics/annual-cyber-threat-report-2024-2025">ASD/ACSC</a> responded to 138 ransomware incidents in FY2024-25, and the mandatory ransomware reporting regime for businesses with annual turnover above $3 million took effect on 30 May 2025.</p><p>Three structural shifts are consistent across reports. First, the ecosystem has decentralised into smaller, faster-moving groups resistant to single-point law enforcement disruption. Sophos tracked 51 unique ransomware brands across their cases in 2025. CrowdStrike named 24 new adversaries in the year, bringing the total tracked to 281+. The ransomware ecosystem remained remarkably resilient despite law enforcement disruptions and internal criminal strife.</p><p>Second, encryption is declining as a tactic. Unit 42 found that encryption appeared in only 78% of extortion cases, down from over 92% in prior years. Data theft and exposure is now the primary leverage for sophisticated groups that value operational speed and stealth over the operational complexity of encryption. Median ransom demands rose from $1.25M to $1.5M.</p><p>Third, backup infrastructure is now a primary pre-encryption target. Mandiant documented ransomware operators shifting their primary objective from data theft to deliberate recovery denial: systematically targeting backup infrastructure, identity services (Active Directory Certificate Services), and virtualisation management planes, destroying the ability to recover and forcing ransom payment. Check Point reconstructed a documented Qilin attack on a European electric utility where the backup server was tampered with on 9 September, with Qilin deployed at 00:20 on 10 September. The attack was not detected until employees arrived at 08:20.</p><p>Sophos found that 49.77% of ransomware cases included confirmed data exfiltration (53.92% including potential exfiltration). In most cases where exfiltration was uncertain, a lack of firewall logs contributed to the uncertainty, highlighting telemetry gaps as a root cause of incomplete incident scoping. 84.47% of data exfiltration cases had no defined threat actor attribution, as actors quietly entered, exfiltrated, and exited without identifying themselves.</p><p>PRESSURE CHOLLIMA (North Korea), tracked by CrowdStrike, stole $1.46 billion USD in cryptocurrency via a supply chain compromise of Safe{Wallet}, the largest single financial theft ever reported. Blackpoint observed that RMM (Remote Monitoring and Management) tool abuse made up 30.3% of all identifiable incidents their SOC triaged in 2025, with attackers installing rogue RMM tools alongside legitimate ones to exploit the trusted status of the software category.</p><h3><strong>Defender priority: rebuild ransomware response for 2025 threat realities</strong></h3><p>Backup infrastructure must be protected as a Tier-0 asset, architecturally separated from production. Organisations must have a data theft extortion response plan that does not assume encryption has occurred. Tabletop exercises should test scenarios where identity services, virtualisation management, and backup infrastructure have all been compromised simultaneously. The <a href="https://www.ivanti.com/resources/research-reports/state-of-cybersecurity-report">Ivanti</a> finding that only 30% of organisations describe themselves as &#8220;very prepared&#8221; for ransomware, despite 63% rating it as a high or critical threat, quantifies the gap between perception and readiness.</p><div><hr></div><h2><strong>5. The Governance Gap: Deployed Does Not Mean Functioning</strong></h2><p>A theme cutting across endpoint, identity, AI, and credential domains is the gap between perceived and actual security posture. The evidence from multiple independent sources suggests this gap is systemic and widening.</p><p>Absolute Security&#8217;s firmware-level telemetry found that approximately 20% of enterprise endpoints are outside a fully protected state at any given time, despite tools being deployed and licensed. Devices spend an average of 76 days per year outside a protected state. The overall share of endpoints in a fully protected and enforceable state improved by only one percentage point year-over-year. One endpoint management vendor saw protected-state integrity drop from 64% to 55% year-over-year without any change in security tool investment. Absolute Security describes this as the &#8220;Downtime Era&#8221;: the most significant impact of cyber incidents is no longer the breach itself, but the operational disruption that follows.</p><p>Ivanti surveyed 1,215 cybersecurity professionals and found a structural preparedness gap: 63% of organisations rate ransomware as a high or critical threat, but only 30% describe themselves as &#8220;very prepared&#8221; to defend against it. One in four organisations is experiencing a critical cybersecurity skills shortage. 42% identify lack of skilled talent as the primary barrier to cybersecurity excellence, a structural constraint that compounds every other preparedness deficit.</p><p>ASD/ACSC data reveals a detection gap in Australian environments: 37% of all significant incidents were discovered via proactive ASD notification rather than by the organisation&#8217;s own security systems. ASD proactively notified critical infrastructure entities more than 190 times in FY2024-25, up 111% from the prior year, indicating both growing proactive capability from ASD and the degree to which Australian organisations cannot self-detect sophisticated intrusions.</p><p>GitGuardian&#8217;s credential data illustrates the remediation gap: detection has occurred for millions of exposed secrets, but remediation has not followed. 64% of credentials exposed in 2022 remain valid in 2026. Until revocation and rotation become routine and automated, a leaked secret is not a short-lived mistake but a durable access path. Zscaler found that many organisations lack a basic inventory of active AI models and embedded AI features, making governance impossible by definition.</p><h3><strong>Defender priority: continuous control validation</strong></h3><p>Implement continuous assessment of whether security controls are actually functioning, not just installed. Include endpoint health metrics (percentage of endpoints in protected state, percentage recoverable remotely, mean time to recover) in board-level security reporting alongside traditional coverage metrics. Address the talent constraint as an operational risk: introduce automation for triage and response tasks, distribute workload across engineering functions, and monitor fatigue. Ivanti&#8217;s best-in-class organisations (Level 4) share three characteristics: significant investment in exposure management, leadership fully invested in effective cybersecurity, and operationalised AI and automation as defence multipliers rather than experimental capabilities.</p><p><a href="https://kineticit.com.au/whitepaper/2026-australian-cyber-security-outlook/">Kinetic IT</a>, analysing the Australian regulatory environment, notes that by the end of 2026, breaches caused by blatant negligence, such as ignoring critical patches, will face zero tolerance from regulators and partners. The Cyber Security Act 2024&#8217;s &#8220;limited use&#8221; provision, which ensures information voluntarily shared with ASD/ACSC cannot be used against the reporting organisation in regulatory proceedings, removes a key barrier to proactive engagement with national threat intelligence. Australian organisations should treat this as an opportunity to close the detection gap identified in the ASD data.</p><div><hr></div><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/jiNR3/2/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/13cf8a74-af41-4b18-ad10-6c39b710021c_1220x1110.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/298ef92b-587e-4510-906d-b5b598d1946d_1220x1234.png&quot;,&quot;height&quot;:608,&quot;title&quot;:&quot;Theme convergence&quot;,&quot;description&quot;:&quot;3 = Primary finding; 2 = Significant coverage; 1 = Minor mention; 0 = Not addressed&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/jiNR3/2/" width="730" height="608" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><div><hr></div><h2><strong>What to Do First</strong></h2><p>The five themes above converge into four immediate priorities with the strongest cross-report consensus and the highest practical impact.</p><ul><li><p><strong>Priority 1: Deploy phishing-resistant MFA on all privileged accounts and enforce session token binding.</strong> This addresses the identity theme directly and is the single control with the most consistent support across all five independent IR datasets. Sophos&#8217;s 59.46% MFA gap, Blackpoint&#8217;s AiTM session theft findings, and Mandiant&#8217;s AD Certificate Services exploitation cases all point to the same conclusion: standard MFA is necessary but insufficient, and session-layer defences must accompany it.</p></li><li><p><strong>Priority 2: Extend detection and response coverage to 24/7 across all attack surfaces.</strong> The temporal data from Sophos (37.1% of attacks between 11pm and 3am) and the multi-surface data from Unit 42 (87% of intrusions across multiple surfaces) both indicate that daytime-only, endpoint-only coverage creates exploitable gaps. Build automated containment that can activate within minutes for the fastest attack timelines documented by CrowdStrike (29-minute breakout) and Mandiant (under-30-second handoff).</p></li><li><p><strong>Priority 3: Inventory and govern AI infrastructure.</strong> The gap between AI adoption velocity and security oversight is the fastest-widening governance gap identified across reports. Start with a complete inventory of AI tools, models, APIs, embedded features, and MCP configurations. Apply secrets management standards. Test AI systems under adversarial conditions. Zscaler&#8217;s finding that 100% of tested systems failed, combined with 40% of MCP servers containing weaknesses (Check Point/Wiz) and 24,008 secrets in MCP configurations (GitGuardian), establishes the current baseline.</p></li><li><p><strong>Priority 4: Test ransomware response plans against the current threat model.</strong> If the current plan assumes the attacker encrypted files and the backups are intact, it does not reflect the 2025 threat data. Test for data theft without encryption (22% of extortion cases, Unit 42). Test for backup infrastructure targeted before encryption (Mandiant). Test for identity services compromised simultaneously (Mandiant, Sophos). Test for multiple attack surfaces engaged in parallel (Unit 42). Test for off-hours execution (Sophos).</p></li></ul><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/qM9H3/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2a01b213-adbf-445f-86c1-4baca2f876a7_1220x3700.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5798358e-431d-47d9-96fd-2899d2940f09_1220x3858.png&quot;,&quot;height&quot;:1983,&quot;title&quot;:&quot;Defender Priorities: The Complete List&quot;,&quot;description&quot;:&quot;The full recommendation set, synthesised from convergent guidance across the 15 source reports, is presented below.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/qM9H3/1/" width="730" height="1983" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><p><em>Footnote: This post is based on a cross-vendor meta-analysis of 15 primary-source threat intelligence reports covering 2025 observations, compiled April 2026. All statistics and characterisations reflect the language and findings of the original publications.</em></p><p><em>References:</em></p><ul><li><p><em>CrowdStrike: <a href="https://www.crowdstrike.com/en-us/global-threat-report/">2026 Global Threat Report</a></em></p></li><li><p><em>Mandiant / Google Cloud: <a href="https://cloud.google.com/blog/topics/threat-intelligence/m-trends-2026">M-Trends 2026</a></em></p></li><li><p><em>Palo Alto Networks (Unit 42): <a href="https://www.paloaltonetworks.com/resources/research/unit-42-incident-response-report">2026 Global Incident Response Report</a></em></p></li><li><p><em>Sophos: <a href="https://www.sophos.com/en-us/blog/2026-sophos-active-adversary-report">2026 Active Adversary Report (Nowhere, man)</a></em></p></li><li><p><em>Check Point: <a href="https://research.checkpoint.com/2026/cyber-security-report-2026/">Cyber Security Report 2026</a></em></p></li><li><p><em>Zscaler ThreatLabz: <a href="https://www.zscaler.com/resources/industry-reports/threatlabz-ai-security-report-2026.pdf">2026 AI Security Report</a></em></p></li><li><p><em>Wiz Research: <a href="https://www.wiz.io/reports/cloud-threat-retrospective-2026">2026 Cloud Threats Retrospective</a></em></p></li><li><p><em>GitGuardian: <a href="https://www.gitguardian.com/state-of-secrets-sprawl-report-2026">2026 State of Secrets Sprawl</a></em></p></li><li><p><em>Fortian: <a href="https://www.fortian.com.au/blog/2025-cyber-threats-a-frontline-perspective.html">2025 Cyber Threats: A Frontline Perspective</a></em></p></li><li><p><em>ASD / ACSC: <a href="https://www.cyber.gov.au/about-us/view-all-content/reports-and-statistics/annual-cyber-threat-report-2024-2025">Annual Cyber Threat Report 2024&#8211;25</a></em></p></li><li><p><em>Kinetic IT: <a href="https://kineticit.com.au/whitepaper/2026-australian-cyber-security-outlook/">2026 Australian Cyber Security Outlook</a></em></p></li><li><p><em>Absolute Security: <a href="https://www.absolute.com/resources/research-reports/2026-resilience-risk-index">2026 Resilience Risk Index</a></em></p></li><li><p><em>Ivanti: <a href="https://www.ivanti.com/resources/research-reports/state-of-cybersecurity-report">2026 State of Cybersecurity: Bridging the Divide</a> </em></p></li><li><p><em>Blackpoint Cyber: <a href="https://blackpointcyber.com/resources/2026-annual-threat-report/">2026 Annual Threat Report</a></em></p></li><li><p><em>CyberCX: <a href="https://cybercx.com.au/resource/dfir-threat-report-2026/">2026 Cyber Threat Report</a></em></p></li></ul>]]></content:encoded></item><item><title><![CDATA[Customer Identity Reference Architecture]]></title><description><![CDATA[Identity Architecture &#183; Part 3 of 5 : A technical reference for building customer-facing identity system.]]></description><link>https://ajiththamarakshan.substack.com/p/customer-identity-reference-architecture</link><guid isPermaLink="false">https://ajiththamarakshan.substack.com/p/customer-identity-reference-architecture</guid><dc:creator><![CDATA[Ajith Thamarakshan]]></dc:creator><pubDate>Thu, 23 Apr 2026 22:01:26 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!bheN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa928ad03-d2f5-4342-a35a-084d50a0b4ff_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bheN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa928ad03-d2f5-4342-a35a-084d50a0b4ff_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bheN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa928ad03-d2f5-4342-a35a-084d50a0b4ff_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!bheN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa928ad03-d2f5-4342-a35a-084d50a0b4ff_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!bheN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa928ad03-d2f5-4342-a35a-084d50a0b4ff_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!bheN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa928ad03-d2f5-4342-a35a-084d50a0b4ff_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bheN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa928ad03-d2f5-4342-a35a-084d50a0b4ff_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a928ad03-d2f5-4342-a35a-084d50a0b4ff_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1908468,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/194135667?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa928ad03-d2f5-4342-a35a-084d50a0b4ff_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!bheN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa928ad03-d2f5-4342-a35a-084d50a0b4ff_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!bheN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa928ad03-d2f5-4342-a35a-084d50a0b4ff_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!bheN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa928ad03-d2f5-4342-a35a-084d50a0b4ff_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!bheN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa928ad03-d2f5-4342-a35a-084d50a0b4ff_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-reference-architecture">Part 2</a> of this series provided a reference architecture for workforce identity, built around managed devices, enforceable authentication policies, and HR-driven lifecycle management. This post covers the customer side, where none of those assumptions hold. The user population is unknown until it self-registers. Devices are unmanaged. Authentication policy must balance security against conversion and retention. And the regulatory obligations around data collection, consent, and deletion apply differently than they do for employee data.</p><p>The primary reference platform is <a href="https://learn.microsoft.com/en-us/entra/external-id/external-identities-overview">Microsoft Entra External ID</a>, which replaced Azure AD B2C for new deployments as of May 2025. Where patterns differ meaningfully in <a href="https://auth0.com/docs">Auth0</a> (Okta Customer Identity Cloud) and <a href="https://docs.aws.amazon.com/cognito/">AWS Cognito</a>, those differences are noted. The architecture is organised into seven layers, reflecting the additional complexity that privacy, consent, and fraud introduce in the customer domain.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!CboG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9755c3-20bd-4426-80f4-f0ab430062cb_1182x1330.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CboG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9755c3-20bd-4426-80f4-f0ab430062cb_1182x1330.png 424w, https://substackcdn.com/image/fetch/$s_!CboG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9755c3-20bd-4426-80f4-f0ab430062cb_1182x1330.png 848w, https://substackcdn.com/image/fetch/$s_!CboG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9755c3-20bd-4426-80f4-f0ab430062cb_1182x1330.png 1272w, https://substackcdn.com/image/fetch/$s_!CboG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9755c3-20bd-4426-80f4-f0ab430062cb_1182x1330.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!CboG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9755c3-20bd-4426-80f4-f0ab430062cb_1182x1330.png" width="1182" height="1330" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2c9755c3-20bd-4426-80f4-f0ab430062cb_1182x1330.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1330,&quot;width&quot;:1182,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:975485,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/194135667?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9755c3-20bd-4426-80f4-f0ab430062cb_1182x1330.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!CboG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9755c3-20bd-4426-80f4-f0ab430062cb_1182x1330.png 424w, https://substackcdn.com/image/fetch/$s_!CboG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9755c3-20bd-4426-80f4-f0ab430062cb_1182x1330.png 848w, https://substackcdn.com/image/fetch/$s_!CboG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9755c3-20bd-4426-80f4-f0ab430062cb_1182x1330.png 1272w, https://substackcdn.com/image/fetch/$s_!CboG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9755c3-20bd-4426-80f4-f0ab430062cb_1182x1330.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>Layer 1: Tenant and Directory Configuration</strong></h2><h3><strong>Tenant separation</strong></h3><p>Customer identities belong in a dedicated tenant, separate from the workforce directory. In Entra, this means creating an <a href="https://learn.microsoft.com/en-us/entra/external-id/customers/concept-supported-features-customers">external tenant</a>, which is a distinct Entra ID instance configured specifically for customer-facing scenarios. This separation keeps customer personal information out of the workforce directory, allows different data residency and retention policies for each population, and avoids licensing conflicts (Entra External ID uses a monthly active user billing model, while workforce Entra ID uses per-user licensing).</p><p>In Auth0, the equivalent separation is achieved through a dedicated Auth0 tenant for customer authentication, with the workforce using a separate Okta Workforce Identity Cloud instance or Entra ID. In Cognito, customer identities live in a User Pool, which is inherently separate from any workforce IAM configuration.</p><h3><strong>Directory schema and progressive profiling</strong></h3><p>Workforce directories have rich, pre-populated attribute schemas driven by HR data. Every user record includes job title, department, manager, office location, and group memberships, all provisioned before the user&#8217;s first login. Customer directories are the opposite. At registration, you may have nothing more than an email address and a consent record. The profile fills in over time as the customer engages with the application.</p><p>In Entra External ID, <a href="https://learn.microsoft.com/en-us/entra/external-id/customers/concept-user-attributes">custom user attributes</a> are defined at the tenant level and assigned to sign-up user flows. Built-in attributes cover the basics (display name, email, city, country). Custom attributes extend the schema for application-specific data (loyalty tier, account type, consent version). These are stored as directory extension attributes on the user object and are accessible via Microsoft Graph.</p><p>In Auth0, user data is split between two metadata stores: <code>user_metadata</code> (data the user can edit, such as display preferences) and <code>app_metadata</code> (data controlled by the application, such as subscription tier or internal flags). <a href="https://auth0.com/docs/manage-users/user-accounts/user-profiles/progressive-profiling">Progressive profiling</a> is implemented through Auth0 Actions, which are JavaScript functions that execute at specific points in the authentication flow. A post-login Action can check whether required attributes are missing and redirect the user to a form that collects them, storing the results in the user&#8217;s metadata on completion.</p><p>In Cognito, custom attributes are defined on the User Pool at creation time (up to 50 custom attributes). Once defined, custom attributes cannot be removed, which makes schema planning important upfront.</p><p>The guiding principle across all platforms is to collect only what is needed at registration and defer additional data collection to later interactions. This reduces registration abandonment, supports data minimisation requirements under privacy regulations, and produces higher-quality data because the customer provides information at the point where it is contextually relevant rather than as part of a long initial form.</p><h3><strong>Data residency</strong></h3><p>Where customer identity data is stored geographically matters for regulatory compliance. Entra External ID stores data in the region selected at tenant creation (options include Australia, Europe, the United States, and Asia-Pacific). Auth0 offers regional deployments (US, EU, AU, and JP). Cognito stores data in the AWS region where the User Pool is created. For organisations subject to data localisation requirements or cross-border transfer restrictions (GDPR Article 46, Australian Privacy Principles APP 8, or sector-specific rules), the choice of region at provisioning time is a design decision that is difficult to change later.</p><h2><strong>Layer 2: Registration and Onboarding</strong></h2><p>Registration is the customer identity equivalent of workforce provisioning, with one critical difference: the user drives it, not IT. The design of the registration flow directly affects conversion rates, data quality, and the security posture of the account from its first moment.</p><h3><strong>Self-service registration flows</strong></h3><p>In Entra External ID, registration is configured through <a href="https://learn.microsoft.com/en-us/entra/external-id/customers/how-to-define-custom-attributes">user flows</a> that define the sign-up steps, the attributes collected, the identity providers available, and the page layout (including branding, field ordering, and required/optional field configuration). User flows can be customised with custom authentication extensions, which are API endpoints called during the authentication process that can validate input, enrich the user profile, or enforce business logic.</p><p>In Auth0, registration flows are controlled through the Universal Login experience, with customisation via Auth0 Actions (for logic) and Auth0 Forms (for custom UI within the login flow). Actions execute at specific triggers (pre-registration, post-registration, post-login) and can modify user data, call external APIs, or redirect the user to additional forms.</p><p>In Cognito, registration is configured on the User Pool with Lambda triggers that fire at specific lifecycle events (pre sign-up, post confirmation, pre token generation). These triggers provide the equivalent extensibility but require writing and hosting Lambda functions.</p><h3><strong>Social identity provider integration</strong></h3><p>Most customer identity platforms support federation with social identity providers: Google, Apple, Facebook, and Microsoft accounts are the most common. The technical integration is OIDC-based and follows a consistent pattern across platforms, but several practical considerations affect the architecture.</p><p>First, the claims returned by each social IdP vary. Google returns email and name. Apple returns email on first login but may not on subsequent logins. Facebook&#8217;s available claims depend on which permissions the application requests and Facebook&#8217;s current API policies, which change periodically. The platform needs to handle cases where expected claims are not returned.</p><p>Second, account linking is a design decision. When a customer registers with an email address and later tries to sign in with a Google account that uses the same email, the platform needs a policy: should it link the two accounts automatically, prompt the user to confirm the link, or treat them as separate accounts? Each option has security implications. Automatic linking is convenient but can enable account takeover if an attacker controls a social account with the target&#8217;s email address. Prompting for verification (require the user to authenticate with both methods) is safer but adds friction.</p><p>Third, social IdP availability introduces a dependency. If Google&#8217;s authentication service has an outage, customers who registered exclusively through Google sign-in cannot access their accounts. The architecture should either support multiple authentication methods per account or provide a recovery path that does not depend on the social IdP.</p><h3><strong>Bot protection</strong></h3><p>Registration endpoints are targets for automated abuse: mass account creation, credential stuffing against existing accounts, and enumeration attacks that test whether an email address is registered. The registration flow should include CAPTCHA integration (or equivalent bot detection), rate limiting per IP and per email domain, and email or phone verification before the account is activated. All three platforms support these controls natively or through integration with third-party services.</p><h2><strong>Layer 3: Authentication</strong></h2><p>Customer authentication serves the same purpose as workforce authentication (proving the user&#8217;s identity) but operates under different constraints. The organisation cannot mandate a specific authentication method, training is not available, and friction in the authentication flow has a direct impact on business metrics.</p><h3><strong>Passwords</strong></h3><p>Passwords remain the baseline authentication method for most customer identity deployments. This is not because they are secure (they are not, particularly against credential stuffing) but because they are universally understood and do not require the customer to take any additional setup steps. The platform should enforce reasonable password complexity requirements, check new passwords against known breached credential databases, and implement rate limiting and IP-based blocking to slow automated attacks.</p><h3><strong>Passkeys for customers</strong></h3><p>Passkeys (FIDO2/WebAuthn credentials) offer phishing-resistant authentication without requiring a managed device or hardware security key. Platform authenticators built into iOS, Android, macOS, and Windows allow customers to create and use passkeys with a biometric scan. Synced passkeys (via iCloud Keychain or Google Password Manager) provide cross-device availability without the customer needing to understand the underlying technology.</p><p>The deployment model for customer passkeys follows a staged adoption path. In the first stage, passkeys are offered as an optional login method alongside passwords. The registration prompt can be shown after a successful password login, during a security settings review, or at the next login after account creation. In the second stage, passkeys become the default authentication method, with password login still available as a fallback. In the third stage, passkeys are required for all access and passwords are retired. Most consumer-facing services are currently in the first or early second stage.</p><p>The metrics that indicate readiness to advance to the next stage include: passkey registration rate (what percentage of active users have enrolled a passkey), authentication success rate for passkey logins (should be above 95%), fallback usage rate (how often users who have enrolled a passkey still fall back to password login), and account recovery volume (whether passkey-related recovery requests are manageable). These metrics need to be tracked per platform (iOS, Android, desktop) because adoption rates and success rates vary across operating systems.</p><h3><strong>Risk-based step-up authentication</strong></h3><p>In workforce environments, Conditional Access can require MFA on every login because managed devices and hardware keys make re-authentication fast. In customer environments, requiring MFA on every login drives abandonment. The alternative is risk-based step-up: the session runs with a long duration for low-risk actions, and an MFA prompt is triggered only when the risk profile changes or the user attempts a sensitive action.</p><h4><strong>When to trigger step-up authentication</strong></h4><ul><li><p><strong>New device or location: </strong>The user is signing in from a device or IP address not previously associated with their account. Prompt for a second factor (passkey, OTP, or email verification) before granting full session access.</p></li><li><p><strong>Sensitive account changes: </strong>The user is changing their password, updating their email address or phone number, modifying payment methods, or managing linked social accounts. These actions should require re-authentication regardless of how recently the user logged in.</p></li><li><p><strong>High-value transactions: </strong>For financial services and e-commerce, transactions above a configurable threshold should trigger step-up. The threshold and the required factor can be tuned based on the user&#8217;s history and risk profile.</p></li><li><p><strong>Anomalous session behaviour: </strong>The user&#8217;s session exhibits behaviour inconsistent with their profile: rapid navigation through account settings, bulk data export, or API access patterns that suggest automated tooling rather than human interaction.</p></li></ul><p>In Entra External ID, step-up logic is implemented through custom authentication extensions that evaluate risk signals and conditionally require additional factors. In Auth0, <a href="https://auth0.com/docs/secure/multi-factor-authentication/adaptive-mfa">Adaptive MFA</a> evaluates risk based on device, location, and behavioural signals, and can be supplemented with custom Actions that enforce step-up for specific application-level events. In Cognito, step-up is implemented through Lambda triggers that evaluate context and conditionally challenge the user.</p><h3><strong>SMS and email OTP</strong></h3><p>SMS and email one-time passwords remain widely used as a second factor in customer identity, particularly in markets where passkey adoption is early or where the user population includes older devices that do not support WebAuthn. They are not phishing-resistant and are vulnerable to SIM-swap and email compromise, but they provide a second factor that is familiar to most users and does not require any setup beyond providing a phone number or email address. The architecture should support them as a transitional measure while tracking the metrics that indicate when they can be replaced by passkeys for a given user segment.</p><h2><strong>Layer 4: Session Management</strong></h2><p>Session management in customer identity lacks the controls available in workforce environments. There is no device compliance enforcement, no Token Protection (which requires managed, enrolled devices), and no compliant network policy. The session controls available are limited to token lifetimes, refresh token rotation, and application-level session validation.</p><h3><strong>Session duration</strong></h3><p>In workforce environments, session durations can be short because re-authentication is fast on a managed device with Windows Hello or a hardware key. In customer environments, short sessions create friction. A customer who is forced to re-authenticate while browsing a product catalogue or completing a checkout may abandon the interaction.</p><p>The design pattern is tiered session duration. Low-risk actions (browsing, viewing order history, reading content) operate within a long-lived session (days or weeks, depending on the application&#8217;s risk profile). Sensitive actions (modifying account settings, initiating payments, accessing personal data) require a more recent authentication, either by checking the session&#8217;s authentication time or by triggering a step-up prompt. This is implemented at the application layer rather than at the identity provider layer, because the application understands which actions are sensitive in its specific context.</p><h3><strong>Refresh token rotation</strong></h3><p>In customer identity, the client device is unmanaged, which means tokens stored on the device are more exposed than in a workforce environment. Refresh token rotation mitigates this by issuing a new refresh token with each access token refresh and invalidating the previous one. If an attacker steals a refresh token and uses it, the legitimate client&#8217;s next refresh attempt will fail (because its token has been consumed), which serves as both a detection signal and a containment mechanism.</p><p>All three platforms support refresh token rotation. The trade-off is that rotation can cause issues with concurrent requests: if two browser tabs or two devices attempt a token refresh simultaneously using the same refresh token, one will succeed and the other will fail. The platform configuration should account for this by allowing a short grace period (a few seconds) during which the previous token remains valid.</p><h3><strong>Session revocation</strong></h3><p>When compromise is detected, the platform needs to be able to invalidate all of a customer&#8217;s active sessions. The mechanisms available include revoking all refresh tokens for the user (forcing re-authentication on the next token refresh), invalidating the user&#8217;s account (blocking all access until the account is re-enabled), and rotating the signing key for the application (which invalidates all sessions for all users, a last resort). Detection signals that should trigger revocation are covered in Layer 7.</p><h2><strong>Layer 5: Account Recovery</strong></h2><p>In workforce identity, a user who loses access can visit the helpdesk, present identification, and receive a Temporary Access Pass or a replacement credential. Customer identity has no equivalent. Recovery must be entirely self-service, and the design of the recovery flow determines both the security of the account and the customer&#8217;s ability to regain access after a lost device, forgotten password, or compromised email.</p><h3><strong>Email-based recovery</strong></h3><p>The most common pattern is a time-limited, single-use recovery link sent to the customer&#8217;s registered email address. This is adequate for low-to-medium value accounts but has an inherent weakness: if the customer&#8217;s email account is compromised, the attacker can initiate and complete recovery. For accounts where this risk is not acceptable, the recovery flow should require a second verification step: re-entering a second factor if one was enrolled, answering a device-bound challenge if the customer has a registered passkey on another device, or completing a remote identity verification.</p><h3><strong>Passkey recovery</strong></h3><p>A customer who enrolled a passkey on a device they no longer have faces a specific recovery challenge. If the passkey was synced (via iCloud Keychain or Google Password Manager), recovery is handled by the platform&#8217;s sync mechanism: the customer signs into their new device with their Apple or Google account, and the passkey is available automatically. If the passkey was device-bound (stored on a hardware key or on a device that was lost or destroyed), the customer needs an alternative recovery path.</p><p>The practical pattern is: allow email-based recovery, then require the customer to register a new passkey during the recovery session. This means the customer temporarily falls back to a less secure authentication method (email link) to regain access, then re-enrols with a phishing-resistant method. The alternative, requiring a second hardware key as a backup, works in workforce environments but is not realistic for consumer accounts.</p><h3><strong>Remote identity verification</strong></h3><p>For high-value accounts (financial services, government services, healthcare portals), email-based recovery may not provide sufficient assurance. Remote identity verification services (Onfido, Jumio, or government-provided digital identity APIs) can be integrated into the recovery flow to require document verification and liveness checks before granting access. These services add cost per verification (typically $1-5 USD per check) and latency (verification can take minutes rather than seconds), so they are usually reserved for accounts where the value at risk justifies the investment.</p><h2><strong>Layer 6: Privacy and Consent</strong></h2><p>Privacy controls are a structural component of customer identity in a way that they are not for workforce identity. Workforce data handling is governed by the employment relationship. Customer data handling requires explicit consent, and that consent must be technically actionable, not just a checkbox.</p><h3><strong>Consent collection and management</strong></h3><p>Consent should be captured as a versioned, auditable record. At registration, the customer agrees to a specific version of the privacy policy and terms of service. If the policy changes, the customer needs to be presented with the updated version and given the opportunity to accept or withdraw. The consent record should include: the version of the policy, the timestamp of acceptance, the method of acceptance (checkbox, click-through, API call), and the scope of processing covered by the consent.</p><p>In Auth0, consent versioning can be implemented through <a href="https://auth0.com/docs/customize/actions">Auth0 Actions and Forms</a>: a post-login Action checks the customer&#8217;s stored consent version against the current version, and if they differ, redirects the customer to a consent form before completing the login flow. In Entra External ID, custom authentication extensions provide equivalent functionality by calling an API endpoint that evaluates consent status and conditionally blocks or modifies the authentication flow.</p><h3><strong>Data minimisation</strong></h3><p>Data minimisation is both a regulatory requirement (under GDPR, the Australian Privacy Principles, and most modern privacy frameworks) and a practical security measure: data that is not collected cannot be breached. The architecture should enforce minimisation at two levels. First, the registration flow should collect only the attributes necessary for the account to function. Second, <a href="https://learn.microsoft.com/en-us/entra/architecture/deployment-external-tenant-design">sensitive attributes</a> that are needed for authorisation but not for identity (health data, financial data, personal preferences) should be stored in the application&#8217;s own data layer rather than in the identity directory, and retrieved at runtime via API calls using the customer&#8217;s authenticated session.</p><h3><strong>Right to deletion</strong></h3><p>When a customer requests account deletion, the identity platform needs to cascade that deletion across all downstream systems that received data from the identity platform: CRM, analytics, marketing automation, transactional databases, and support ticket systems. This is a technical orchestration problem. The identity platform can delete its own user record, but it cannot automatically know which other systems hold copies of that customer&#8217;s data.</p><p>The practical pattern is to maintain a data map that records which systems receive customer identity data, and to build a deletion workflow that calls each system&#8217;s deletion API (or flags the record for deletion if the system does not support automated deletion). This workflow should be tested regularly, because new integrations are frequently added without updating the deletion process.</p><p>The common tension is with sector-specific retention requirements. A financial services provider may be required to retain customer identification records for years after the relationship ends (for AML/KYC compliance), even while privacy law requires deletion of data no longer needed for its original purpose. These conflicts cannot be resolved at the technology layer. They require explicit policy decisions about what to retain, in what form (full record vs. anonymised record), and for how long, documented and implemented as automated workflows rather than left to ad hoc processes.</p><h3><strong>Account dormancy</strong></h3><p>Customer accounts that have been inactive for an extended period present both a security risk (the customer may not notice if the account is compromised) and a data management problem (retaining data for accounts that may never be used again). The architecture should include a dormancy policy that defines: the inactivity threshold (6 months, 12 months, or whatever is appropriate for the application), the notification sequence before action is taken (email at 90 days before disablement, again at 30 days), the action taken (account disablement followed by deletion after a further grace period), and the reinstatement path if the customer returns after their account has been disabled but before it is deleted.</p><h2><strong>Layer 7: Fraud Detection and Security Monitoring</strong></h2><p>Customer identity generates far higher volumes of authentication events than workforce identity, and the acceptable responses to suspicious activity are different. Locking a workforce account and requiring the user to contact the helpdesk is a reasonable response to a suspicious sign-in. Locking a customer account for a false positive creates a support burden and may permanently lose the customer.</p><h3><strong>Credential stuffing</strong></h3><p>Credential stuffing attacks use lists of username/password pairs from previous breaches to attempt logins at scale. Detection signals include: high-volume login failures from distributed IP addresses, login attempts using known breached credential pairs, and abnormal geographic distribution of login attempts. Response mechanisms should escalate progressively: CAPTCHA on the next attempt, temporary IP-based throttling, and account notification if a valid credential pair is used from an unrecognised device. Avoid hard lockouts on customer accounts unless there is strong evidence of compromise, because attackers can weaponise lockout policies to deny legitimate customers access to their own accounts.</p><h3><strong>Account takeover detection</strong></h3><p>Post-authentication indicators that an account has been compromised include: a new device being added immediately after a password reset, rapid changes to account settings (email, phone, password in quick succession), session activity from a geography inconsistent with the customer&#8217;s profile, and transaction patterns that deviate from the customer&#8217;s history. These signals should feed into a risk scoring system that can trigger step-up re-authentication, session termination, or account freeze depending on the severity.</p><h3><strong>Bot detection</strong></h3><p>Beyond credential stuffing, registration and authentication endpoints are targeted by bots for account creation abuse (creating accounts to exploit promotional offers or conduct fraud), enumeration attacks (testing whether email addresses are registered), and token harvesting. Bot detection can be implemented through CAPTCHA (with progressive escalation based on risk score), device fingerprinting, and behavioural analysis of interaction patterns (typing speed, mouse movement, navigation patterns).</p><h3><strong>SIEM integration</strong></h3><p>Customer identity authentication events should feed into the same SIEM as workforce identity events, enabling correlation across both systems. However, the alert thresholds and response playbooks need to be different. Customer identity systems may process millions of authentication events per day, and the false-positive tolerance for automated responses (CAPTCHA escalation, account lockout) is lower because each false positive affects a customer relationship rather than an employee who can be directed to the helpdesk. The SIEM integration should focus on aggregate pattern detection (credential stuffing campaigns, bot activity spikes) and targeted alerts for individual accounts that show strong indicators of compromise, rather than alerting on every anomalous login.</p><h2><strong>Connecting Customer Identity to the Workforce Architecture</strong></h2><p>Although the two identity systems are architecturally separate, they connect at three points that the architecture needs to handle cleanly.</p><p>First, workforce users who administer the customer identity platform (support agents, product managers, compliance officers) should authenticate through the workforce identity provider and access the customer identity platform through role-based access controls with audit logging. The customer identity system should not maintain separate administrative credentials for internal staff.</p><p>Second, B2B scenarios where a business customer&#8217;s employees need access to the application are handled through federation between the customer identity platform and the business customer&#8217;s workforce identity provider (SAML or OIDC). This allows enterprise employees to authenticate using their corporate credentials while the customer identity platform manages the session and authorisation.</p><p>Third, security monitoring should correlate events across both systems. An attacker who compromises a workforce account may attempt to access customer data through the customer identity platform&#8217;s administrative interface. Detecting that pattern requires visibility into authentication events from both tiers in the same SIEM.</p><h2><strong>Architecture Summary</strong></h2><p>The seven layers described in this post form a customer identity architecture that accounts for the constraints absent in workforce environments: unmanaged devices, self-service registration, voluntary authentication, and regulatory obligations around consent and data handling. The tenant and directory layer provides the structural separation from workforce identity. Registration and onboarding handle the self-service entry point. Authentication balances security against usability through staged passkey adoption and risk-based step-up. Session management compensates for the absence of device trust controls. Account recovery provides self-service paths for customers who lose access. Privacy and consent controls implement the regulatory obligations that apply specifically to customer data. Fraud detection addresses the higher-volume, higher-noise threat environment of customer-facing applications.</p><p></p><blockquote><p><strong>Identity Architecture for the Modern Enterprise: </strong></p><p>A five-part series covering workforce and customer identity architecture, phishing-resistant MFA, and identity governance.</p><ul><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-and-customer-identity">Part 1: Why Two Architectures</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-reference-architecture">Part 2: Workforce Reference Architecture</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/customer-identity-reference-architecture">Part 3: Customer Reference Architecture</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/non-human-identities-service-accounts">Part 4: Non-Human Identities in the Workforce</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-governance-access">Part 5: Workforce Identity Governance</a></strong></p></li></ul></blockquote>]]></content:encoded></item><item><title><![CDATA[Becoming Mythos-Ready: Updating Your Enterprise Vulnerability Management Process]]></title><description><![CDATA[AI-driven vulnerability discovery is collapsing the time between disclosure and exploitation. It is time to update your traditional vulnerability management processes to face these new challenges.]]></description><link>https://ajiththamarakshan.substack.com/p/becoming-mythos-ready-updating-your</link><guid isPermaLink="false">https://ajiththamarakshan.substack.com/p/becoming-mythos-ready-updating-your</guid><dc:creator><![CDATA[Ajith Thamarakshan]]></dc:creator><pubDate>Sun, 19 Apr 2026 22:01:18 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Lfd6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f80cf09-012e-4773-8e03-f70929de86d6_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="callout-block" data-callout="true"><p>The concept of a "Mythos-ready" security programme originates from <a href="https://labs.cloudsecurityalliance.org/mythos-ciso/">The AI Vulnerability Storm: Building a Mythos-ready Security Program</a>, published April 2026 by the Cloud Security Alliance CISO Community, SANS, [un]prompted, the OWASP Gen AI Security Project, and the wider community. That paper covers a broad security programme transformation. This post focuses specifically on the vulnerability management implications, drawing on internal enterprise risk analysis of how AI-driven vulnerability acceleration is reshaping defender requirements.</p></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Lfd6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f80cf09-012e-4773-8e03-f70929de86d6_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Lfd6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f80cf09-012e-4773-8e03-f70929de86d6_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!Lfd6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f80cf09-012e-4773-8e03-f70929de86d6_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!Lfd6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f80cf09-012e-4773-8e03-f70929de86d6_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!Lfd6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f80cf09-012e-4773-8e03-f70929de86d6_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Lfd6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f80cf09-012e-4773-8e03-f70929de86d6_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4f80cf09-012e-4773-8e03-f70929de86d6_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1808970,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/194468283?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f80cf09-012e-4773-8e03-f70929de86d6_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Lfd6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f80cf09-012e-4773-8e03-f70929de86d6_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!Lfd6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f80cf09-012e-4773-8e03-f70929de86d6_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!Lfd6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f80cf09-012e-4773-8e03-f70929de86d6_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!Lfd6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f80cf09-012e-4773-8e03-f70929de86d6_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Vulnerability management as it has been practised for the last two decades was designed for a particular environment. Vulnerabilities were discovered at human pace, by researchers working manually or through static scanning tools with known pattern libraries. Exploit development required weeks or months of skilled work. Patch cycles were measured in monthly release windows, and the time between a vulnerability being disclosed and a working exploit appearing in the wild was usually measured in days to weeks, sometimes longer.</p><p>That environment no longer exists. AI-assisted vulnerability discovery and exploit development have altered the balance between offensive and defensive cyber capabilities. AI systems can identify defects, generate exploits, and orchestrate attack chains with minimal human intervention. The biggest shift is in the shrinking of the exploit timeline. The interval between vulnerability discovery and exploitation has reduced significantly, in some cases to hours (See <a href="https://zerodayclock.com/">Zero Day Clock</a>). Defensive processes such as patching, validation, and change control remain constrained by operational and governance requirements.</p><p>This leaves defenders fighting a losing battle against the clock. Attackers benefit from automation and scale, while we must manage complexity, business risk, and system stability. Updating the vulnerability management process is not about adding a new tool to the existing workflow. It is about recognising that several of the assumptions underpinning that workflow are no longer valid.</p><h2><strong>The Structural Imbalance</strong></h2><p>The asymmetry between offence and defence in vulnerability management has always existed, but AI has widened it. AI reduces the effort required to discover and exploit vulnerabilities. Techniques that previously required specialised expertise are now accessible at scale. Exploit development increasingly follows vulnerability disclosure or patch release. Reverse engineering of fixes becomes faster, reducing the effective remediation window.</p><p>On the defensive side, the constraints have not changed. Patching a production system requires identifying the affected assets, assessing the impact of the patch on application behaviour, testing in a staging environment, scheduling the change window, executing the deployment, and validating that the patch has not introduced regressions. In regulated environments, each of these steps has governance requirements. In operational technology environments, patching may require physical access or planned downtime. None of these constraints respond to the fact that the exploit timeline has shortened.</p><p>The result is persistent exposure across systems where patching is delayed or infeasible. That exposure window, which was once a manageable risk accepted within the context of a monthly or quarterly patch cycle, is now a window that an automated attacker can discover and exploit within hours of the vulnerability becoming known.</p><h2><strong>Where Traditional Vulnerability Management Breaks Down</strong></h2><p>Four specific assumptions built into traditional vulnerability management are no longer reliable. Understanding where these assumptions fail is necessary before the process can be updated to account for the new environment.</p><h4><strong>Failed assumptions</strong></h4><ul><li><p><strong>Volume and cadence are manageable: </strong>Traditional vulnerability management assumes manageable volumes of disclosures and prioritisation based on severity scoring and threat intelligence. AI-driven discovery increases both the number and frequency of vulnerabilities. This creates sustained pressure on triage, prioritisation, and remediation workflows. Backlogs accumulate. Prioritisation becomes less effective under volume. Organisations rely more heavily on compensating controls, but those controls are often applied ad hoc rather than as part of a deliberate process.</p></li><li><p><strong>Detection and response can operate at human speed: </strong>Attack execution timelines now operate at machine speed. Detection and response functions often remain dependent on human triage and approval processes. This creates a gap between compromise and containment. Multi-stage attacks can progress through reconnaissance, initial access, lateral movement, and data access before defensive actions are executed. The effectiveness of response capabilities becomes a limiting factor in overall security posture.</p></li><li><p><strong>Threat intelligence leads exploitation:</strong> CVE-based prioritisation assumes that vulnerabilities are catalogued and contextualised before they need to be acted upon. AI-driven discovery outpaces that cataloguing process. When discovery rates increase by an order of magnitude, the intelligence pipeline lags behind the exploitation timeline. Detection that depends on known indicators misses what has not yet been published.</p></li><li><p><strong>Risk models reflect actual exposure: </strong>Risk models often rely on assumptions regarding exploit timelines, vulnerability rarity, and prioritisation signals. These assumptions are no longer reliable. Reduced time-to-exploit and increased vulnerability volume distort existing metrics. Governance processes built on those metrics may not respond at the required speed. Decision-making delays that were previously acceptable now translate directly into extended exposure.</p></li></ul><h2><strong>Updating the Process</strong></h2><p>The following updates address the specific failure modes described above. They are not a replacement for existing vulnerability management programmes. They are modifications to existing programmes that account for the changed environment.</p><h3><strong>Continuous vulnerability discovery and remediation</strong></h3><p>Replace periodic assessments with integrated, automated processes embedded within development and operational workflows. Embed AI-assisted code review and vulnerability scanning in development pipelines. Implement automated dependency scanning and integrate it with remediation workflows. The objective is to move from finding vulnerabilities during scheduled assessments to continuous discovery as code is written, tested, and deployed.</p><p>This includes pointing AI capabilities inward at your own code and dependencies. The same technology that enables AI-driven exploit development can be used for defensive vulnerability discovery.</p><h3><strong>Risk-based, continuous patching</strong></h3><p>Move toward risk-based, continuous patching models. Reduce reliance on fixed schedules. The traditional monthly or quarterly patch cycle assumes that the vulnerability is not being actively exploited during the window. With time-to-exploit measured in hours, this assumption is unsafe for any externally-exposed or high-value system.</p><p>Define emergency pathways for high-risk vulnerabilities that bypass the standard change control cadence. Balance remediation urgency with system stability through compensating controls: apply virtual patching and isolate exposed systems where full patching is delayed. The trade-off between stability risk from patching and exploitation risk from not patching has shifted. Organisations need to re-evaluate their risk tolerance for operational downtime caused by vulnerability remediation.</p><div class="callout-block" data-callout="true"><p>Each patch also becomes an exploit blueprint. AI accelerates patch-diffing and reverse engineering of fixes. The window between a patch being released and a working exploit being derived from the diff is collapsing. Delayed patch deployment now carries a compounding risk: the patch itself signals the vulnerability&#8217;s existence and location to anyone capable of reverse engineering the fix.</p></div><h3><strong>Compensating controls as a deliberate programme</strong></h3><p>When patching cannot keep pace with discovery, compensating controls become the primary defence for the affected systems. This is already happening in most organisations, but it is usually treated as an exception rather than a deliberate part of the programme.</p><p>Formalise the use of compensating controls such as isolation, filtering, and feature restriction. Track and validate their effectiveness until full remediation is complete. Treat compensating controls as first-class elements of the vulnerability management process with the same documentation, review, and expiry requirements as any other control. A compensating control that is applied, forgotten, and never validated is just a line item in a risk register creating a false sense of coverage.</p><h3><strong>Asset visibility as a prerequisite</strong></h3><p>Implement continuous asset discovery and maintain an accurate inventory. Map asset criticality and remove or isolate unused systems. Every other activity in the vulnerability management process depends on knowing what assets exist, what software they run, what dependencies they include, and whether they are exposed to the network.</p><p>Without continuously updated inventory, compensating controls have gaps, prioritisation decisions are made on incomplete data, and remediation efforts may miss the systems that matter most. Aggressively retire unneeded or unmaintained functionality. Phase out suppliers that do not comply with updated vulnerability management requirements. Isolate or air-gap systems that cannot be brought up to standard. You cannot patch, segment, or defend what you do not know exists.</p><h3><strong>Architectural containment</strong></h3><p>Assume compromise will occur and design systems to limit propagation. Enforce segmentation across systems and environments. Implement least privilege access and restrict outbound connectivity. Reduce standing privileges through time-bound access controls. The objective is to limit the blast radius when exploitation occurs, because the speed of exploitation now exceeds the speed of remediation for a significant proportion of vulnerabilities.</p><p>In an environment where patching was the primary defence and compensating controls were the exception, architectural containment was a secondary layer. Today, architectural containment is the primary control that determines whether a single vulnerability compromise becomes a full-environment incident.</p><h3><strong>Detection oriented toward behaviour</strong></h3><p>Shift detection toward behavioural analytics and internal telemetry. Supplement external intelligence with proactive scanning and anomaly detection. Implement behavioural detection and real-time telemetry correlation.</p><p>Pre-authorise containment actions such as credential revocation and system isolation. Reduce manual approval latency in response workflows. The gap between compromise and containment is where the damage occurs. Every approval step that requires human intervention during an active incident extends that gap. Identify the containment actions that can be safely pre-authorised (isolating a compromised endpoint from the network, revoking a compromised service account&#8217;s credentials, blocking a confirmed malicious IP) and automate their execution when detection thresholds are met.</p><h3><strong>Supply chain visibility</strong></h3><p>Modern software relies heavily on third-party components and open-source dependencies. AI accelerates the discovery of vulnerabilities across widely used libraries. Attackers can identify and exploit shared dependencies across multiple organisations simultaneously. A single vulnerability in a common library becomes a key that opens many doors at once.</p><p>Maintain software inventories and dependency visibility. Continuously monitor for vulnerabilities in third-party and open-source components. Reduce unused components. Enforce vendor patch obligations. Remediation is complicated by transitive dependencies and reliance on upstream maintainers, so visibility into the full dependency tree is necessary to understand where exposure exists and who is responsible for addressing it.</p><h2><strong>Governance and Risk Model Updates</strong></h2><p>Operational process changes will stall without corresponding updates to the governance and risk frameworks that govern them. If the risk model still assumes a 30-day remediation window is acceptable for critical vulnerabilities, the operational team remains constrained by outdated parameters.</p><p>Update risk models to reflect reduced time-to-exploit. Introduce operational metrics that measure responsiveness and resilience rather than compliance with a fixed schedule. Useful metrics include: mean time from disclosure to remediation, mean time from detection to containment, percentage of critical vulnerabilities remediated within the risk-based SLA, percentage of exposed systems covered by compensating controls while awaiting remediation, and the age and validation status of active compensating controls.</p><p>Streamline governance processes to enable timely security decisions, establishing pre-approved pathways for critical actions so that governance does not become a bottleneck that extends exposure.</p><h2><strong>AI Agents in the Vulnerability Management Process</strong></h2><p>AI agents and automation tooling are necessary to enable defenders to operate closer to the speed at which attacks now execute. However, they are also a new class of risk. AI agents introduced into scanning, triage, and remediation workflows are privileged entities interacting with code, data, and infrastructure.</p><p>The vulnerability management process should treat AI agents with the same rigour applied to any other privileged identity in the environment. Enforce least privilege on agent access, restrict integrations to approved toolchains, and monitor agent activity strictly. Validate third-party components used by agents, enforce governance over agent usage and human override mechanisms. The agents that help defend the environment need to be defended themselves.</p><h2><strong>The Workforce Dimension</strong></h2><p>None of the process changes described above are self-executing. They require people to implement, operate, and maintain them, and those people are already under pressure. The volume of vulnerability disclosures and the cognitive load of integrating AI tooling contribute to sustained fatigue, reduced effectiveness, and potential attrition. Loss of experienced personnel introduces additional operational risk at precisely the moment when experienced judgement is most needed.</p><p>Treat workforce capacity as a critical dependency. Introduce automation for triage and response tasks to keep the workload within sustainable bounds, not merely to replace headcount. Allocate surge capacity and monitor fatigue as an operational risk. <strong>The vulnerability management process is only as effective as the people operating it.</strong></p><h2><strong>The Shift in Posture</strong></h2><p>Being &#8216;Mythos-ready&#8217; isn&#8217;t about buying a flashy new tool or service. It is about accepting that our 30-day remediation cycles are an invitation to attackers. The overall shift must be toward a containment and resilience model rather than relying on prevention alone.</p><p>AI-driven vulnerability discovery alters the rate and scale at which security risk materialises. The vulnerability management process is no longer primarily about finding and fixing vulnerabilities on a predictable cadence. It is about reducing the time between discovery and remediation where possible, applying compensating controls where remediation is delayed, and architecting the environment so that exploitation has a limited blast radius.</p><blockquote><p><em>Note: This post draws on the concept of a "Mythos-ready" security programme introduced in <a href="https://labs.cloudsecurityalliance.org/mythos-ciso/">The AI Vulnerability Storm: Building a Mythos-ready Security Program</a> (April 2026), published by the Cloud Security Alliance CISO Community, SANS, [un]prompted, and the OWASP Gen AI Security Project. Lead authors: Gadi Evron (Knostic / CSA), <a href="https://substack.com/@robtlee2">Robert T. Lee</a> (SANS Institute), Rich Mogull (CSA).</em></p></blockquote>]]></content:encoded></item><item><title><![CDATA[Workforce Identity Reference Architecture]]></title><description><![CDATA[Identity Architecture &#183; Part 2 of 5 : A technical reference for building workforce identity on Microsoft Entra ID.]]></description><link>https://ajiththamarakshan.substack.com/p/workforce-identity-reference-architecture</link><guid isPermaLink="false">https://ajiththamarakshan.substack.com/p/workforce-identity-reference-architecture</guid><dc:creator><![CDATA[Ajith Thamarakshan]]></dc:creator><pubDate>Thu, 16 Apr 2026 22:00:44 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!YIIG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F190ac8d7-85b4-4d38-94e0-378c7ac1148d_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YIIG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F190ac8d7-85b4-4d38-94e0-378c7ac1148d_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YIIG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F190ac8d7-85b4-4d38-94e0-378c7ac1148d_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!YIIG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F190ac8d7-85b4-4d38-94e0-378c7ac1148d_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!YIIG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F190ac8d7-85b4-4d38-94e0-378c7ac1148d_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!YIIG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F190ac8d7-85b4-4d38-94e0-378c7ac1148d_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YIIG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F190ac8d7-85b4-4d38-94e0-378c7ac1148d_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/190ac8d7-85b4-4d38-94e0-378c7ac1148d_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1965120,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/194019635?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F190ac8d7-85b4-4d38-94e0-378c7ac1148d_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!YIIG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F190ac8d7-85b4-4d38-94e0-378c7ac1148d_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!YIIG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F190ac8d7-85b4-4d38-94e0-378c7ac1148d_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!YIIG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F190ac8d7-85b4-4d38-94e0-378c7ac1148d_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!YIIG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F190ac8d7-85b4-4d38-94e0-378c7ac1148d_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-and-customer-identity">Part 1</a> of this series established why workforce and customer identity need separate architectures. This post provides a concrete reference architecture for the workforce side, using Microsoft Entra ID as the primary platform. Where patterns differ meaningfully in Okta Workforce Identity Cloud, those differences are noted.</p><p>The architecture is organised into six layers: directory and hybrid identity, device trust and enrolment, authentication, Conditional Access policy, session management, and external collaboration. Each layer builds on the one below it, and the interactions between layers are where most of the design complexity sits. An organisation that deploys phishing-resistant MFA but does not enforce device compliance, for example, leaves the session token exposed to extraction from unmanaged endpoints. The architecture needs to be coherent across all six layers to be effective.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!uFEw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe88ef60d-dfae-4544-9feb-95dd248eb2d4_1196x1315.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!uFEw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe88ef60d-dfae-4544-9feb-95dd248eb2d4_1196x1315.png 424w, https://substackcdn.com/image/fetch/$s_!uFEw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe88ef60d-dfae-4544-9feb-95dd248eb2d4_1196x1315.png 848w, https://substackcdn.com/image/fetch/$s_!uFEw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe88ef60d-dfae-4544-9feb-95dd248eb2d4_1196x1315.png 1272w, https://substackcdn.com/image/fetch/$s_!uFEw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe88ef60d-dfae-4544-9feb-95dd248eb2d4_1196x1315.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!uFEw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe88ef60d-dfae-4544-9feb-95dd248eb2d4_1196x1315.png" width="1196" height="1315" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e88ef60d-dfae-4544-9feb-95dd248eb2d4_1196x1315.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1315,&quot;width&quot;:1196,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:889290,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/194019635?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe88ef60d-dfae-4544-9feb-95dd248eb2d4_1196x1315.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!uFEw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe88ef60d-dfae-4544-9feb-95dd248eb2d4_1196x1315.png 424w, https://substackcdn.com/image/fetch/$s_!uFEw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe88ef60d-dfae-4544-9feb-95dd248eb2d4_1196x1315.png 848w, https://substackcdn.com/image/fetch/$s_!uFEw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe88ef60d-dfae-4544-9feb-95dd248eb2d4_1196x1315.png 1272w, https://substackcdn.com/image/fetch/$s_!uFEw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe88ef60d-dfae-4544-9feb-95dd248eb2d4_1196x1315.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>Layer 1: Directory and Hybrid Identity</strong></h2><p>The directory is the foundation. Every other layer depends on how identities are structured, where they are mastered, and how they synchronise between on-premises and cloud environments.</p><h3><strong>Tenant structure</strong></h3><p>Most organisations should operate a single Entra ID tenant for their workforce. A single tenant provides a unified Conditional Access policy set, a single point of administration for identity governance, and consistent audit logging. Multi-tenant configurations are sometimes necessary for organisations with subsidiaries that require regulatory isolation, or following mergers and acquisitions where consolidation is not yet complete. In those cases, <a href="https://learn.microsoft.com/en-us/entra/identity/multi-tenant-organizations/overview">cross-tenant synchronisation</a> can automate the lifecycle of B2B collaboration users across tenants, creating and updating accounts as employees join, move, or leave.</p><p>Avoid creating separate tenants for non-production environments unless there is a specific compliance requirement. Development and test workloads can typically be isolated using separate subscriptions or resource groups within a single tenant, with Conditional Access policies scoped to production applications.</p><h3><strong>Hybrid identity with on-premises Active Directory</strong></h3><p>Organisations with existing on-premises Active Directory need to synchronise identities to Entra ID. Microsoft provides two tools for this: <a href="https://learn.microsoft.com/en-us/entra/identity/hybrid/connect/how-to-connect-install-prerequisites">Entra Connect Sync</a> (a self-hosted synchronisation engine) and <a href="https://learn.microsoft.com/en-us/entra/identity/hybrid/cloud-sync/what-is-cloud-sync">Entra Cloud Sync</a> (a lightweight, cloud-managed alternative). Entra Connect Sync remains the more capable option for complex environments with multiple forests, filtering requirements, or writeback scenarios. Entra Cloud Sync is suitable for simpler topologies and organisations that want to reduce on-premises infrastructure.</p><p>The choice of authentication method for hybrid users is one of the most consequential design decisions. Three options are available.</p><h4><strong>Hybrid authentication methods</strong></h4><ul><li><p><strong>Password Hash Synchronisation (PHS): </strong>Synchronises a hash of the user&#8217;s on-premises password hash to Entra ID. Authentication is handled entirely in the cloud with no dependency on on-premises infrastructure. <a href="https://learn.microsoft.com/en-us/entra/architecture/resilience-in-hybrid">Microsoft recommends PHS as the most resilient option</a> because cloud authentication continues to work even if on-premises connectivity is lost. PHS also enables Entra ID Protection&#8217;s leaked credentials detection, which compares synchronised hashes against known breached credential databases.</p></li><li><p><strong>Pass-through Authentication (PTA): </strong>Authentication requests are forwarded to on-premises agents that validate credentials against Active Directory in real time. Passwords are never stored in the cloud. PTA has a dependency on the availability of on-premises agents and domain controllers; if they are unreachable, cloud authentication fails. PTA is typically chosen by organisations with regulatory or policy constraints that prohibit storing password material outside their on-premises environment.</p></li><li><p><strong>Federation (AD FS or third-party IdP): </strong>Authentication is handled by an external identity provider, most commonly AD FS. This introduces the most infrastructure dependencies (federation servers, WAP proxies, certificates) and the most operational complexity. Microsoft is actively encouraging migration away from AD FS toward PHS or PTA. Federation remains necessary in some scenarios, such as smart card authentication against on-premises PKI, but for most organisations it is a legacy pattern that should be retired.</p></li></ul><p>Regardless of which authentication method is chosen, Microsoft recommends enabling PHS alongside PTA or federation as a fallback. This provides resilience against on-premises outages and enables leaked credential detection even when PHS is not the primary authentication method.</p><p>The Entra Connect server itself should be treated as a Tier 0 asset. It has write access to the cloud directory and, depending on configuration, write-back capability to on-premises AD. Administrative access should be restricted to domain administrators, the server should be hardened following Microsoft&#8217;s privileged access guidance, and its logs should be forwarded to the organisation&#8217;s SIEM.</p><h2><strong>Layer 2: Device Trust and Enrolment</strong></h2><p>Device trust is the control layer that determines whether a token should be issued to a given endpoint. In a workforce architecture, this layer enables the Conditional Access policies that block token issuance to unmanaged or non-compliant devices, which is the most effective defence against AiTM phishing attacks that use proxy infrastructure (as covered in earlier posts in this series).</p><p>Three device registration states exist in Entra ID, each providing a different level of trust.</p><h4><strong>Device registration states</strong></h4><ul><li><p><strong>Entra ID joined: </strong>The device is registered directly with Entra ID and has no relationship with on-premises AD. Used for cloud-only environments. The device receives a Primary Refresh Token (PRT) that enables SSO to cloud applications. Device compliance can be enforced via Intune.</p></li><li><p><strong>Hybrid Entra ID joined: </strong>The device is joined to both on-premises AD and Entra ID. Used in hybrid environments where the device needs access to both on-premises resources (file shares, printers, legacy applications) and cloud services. <a href="https://learn.microsoft.com/en-us/entra/identity/devices/how-to-hybrid-join">Configuration requires Entra Connect</a> and a service connection point in the on-premises forest.</p></li><li><p><strong>Entra ID registered: </strong>A lightweight registration for personal devices (BYOD). The device is associated with the user&#8217;s account but is not fully managed. Provides a PRT for SSO but does not satisfy &#8220;compliant device&#8221; or &#8220;hybrid joined&#8221; Conditional Access requirements unless additional controls are applied through an MDM enrolment.</p></li></ul><p>The target state for most organisations is that all corporate-owned devices are either Entra ID joined (cloud-only) or hybrid joined (hybrid environments), enrolled in Intune for compliance management, and subject to a Conditional Access policy that requires compliant or hybrid-joined devices for access to corporate applications. BYOD devices should be enrolled in Intune with a MAM (Mobile Application Management) policy at minimum, or routed through a restricted access path such as a virtual desktop or web-based portal with additional session controls.</p><h2><strong>Layer 3: Authentication</strong></h2><p>Authentication is the layer where the user proves their identity. The objective in a modern workforce architecture is to move toward phishing-resistant authentication for all users and to eliminate or restrict weaker methods. </p><h3><strong>Phishing-resistant MFA</strong></h3><p>The strongest available authentication methods are passkeys (FIDO2 credentials stored on a device&#8217;s platform authenticator or in a hardware security key) and certificate-based authentication (CBA) using smart cards or derived credentials. Both are considered phishing-resistant because they use asymmetric cryptography and are bound to specific origins, making them immune to AiTM proxy attacks.</p><p>See my earlier blog on this topic:</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;d49aaa65-b471-471e-a1ae-a400e4d1e78c&quot;,&quot;caption&quot;:&quot;For years, IT administrators and security teams have given the same advice: enable Multi-Factor Authentication to protect your accounts. It was reasonable guidance. Adding a second factor on top of a password raised the cost of a successful attack. But the threats have changed, and that advice alone is no longer sufficient.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;The End of Traditional MFA: The Case for Passkeys&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:18460437,&quot;name&quot;:&quot;Ajith Thamarakshan&quot;,&quot;bio&quot;:&quot;Security architect with 25+ years across cloud, AI, identity, and payments security. CISSP since 2003. CCSP. Hundreds of assessments for banks, retailers, and government. Honorary Life Member, AISA.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1a965688-2903-4375-86c3-1a3af5a261e8_896x896.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-03-29T22:19:33.090Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/539cbf6f-f1ba-44dd-9f2d-6ebf3a6a9dd1_1441x699.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://substack.com/home/post/p-192485279&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:192485279,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:8447946,&quot;publication_name&quot;:&quot;Ajith Thamarakshan&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!Q3-B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a965688-2903-4375-86c3-1a3af5a261e8_896x896.jpeg&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>In Entra ID, passkey support is configured through <a href="https://learn.microsoft.com/en-us/entra/identity/authentication/how-to-enable-passkey-fido2">passkey (FIDO2) authentication method policies</a>. Passkey profiles allow group-based configuration, so different policies can be applied to different user populations. For example, administrators and privileged roles can be required to use hardware security keys with attestation enforcement, while the broader workforce uses platform authenticators (Windows Hello, Touch ID, Face ID) stored on their managed devices.</p><p>The critical implementation detail is disabling fallback to weaker methods. If TOTP, SMS, or push notification MFA remains enabled as a fallback, an attacker can select the weaker method during a phishing attack. Conditional Access authentication strength policies should be used to require phishing-resistant methods for all cloud application access, with the only exception being break-glass emergency access accounts (which should use FIDO2 keys stored offline, not passwords).</p><h3><strong>Windows Hello for Business</strong></h3><p>For organisations with managed Windows devices, Windows Hello for Business provides phishing-resistant authentication using biometrics or a device-bound PIN, backed by a TPM-protected key pair. The credentials are bound to the device and cannot be extracted or replayed. Windows Hello for Business can function as the primary authentication method for Windows sign-in and SSO to cloud applications, reducing the need for separate hardware security keys for non-privileged users.</p><h3><strong>Okta considerations</strong></h3><p>In Okta Workforce Identity Cloud, phishing-resistant authentication is available through Okta FastPass (a device-bound passwordless authenticator built into the Okta Verify app) and through support for FIDO2 WebAuthn roaming and platform authenticators. FastPass provides cross-platform phishing resistance (Windows, macOS, iOS, Android) and can actively detect AiTM phishing proxies by validating the origin of the authentication request. The equivalent of Entra&#8217;s authentication strength policies is Okta&#8217;s authenticator assurance policies, which can be configured to require phishing-resistant factors for specific applications or user groups.</p><h2><strong>Layer 4: Conditional Access Policy</strong></h2><p>Conditional Access is the policy engine that evaluates signals (user identity, device state, location, risk level, application being accessed) and enforces access decisions (grant, block, or require additional controls). It is the layer that ties directory, device, and authentication decisions together into a coherent security posture.</p><p>A well-designed Conditional Access policy set typically includes the following baseline policies. These are not exhaustive but represent the minimum for a reasonably secured environment.</p><p><strong>Baseline policies</strong></p><ul><li><p><strong>Require phishing-resistant MFA for all users, all cloud apps.</strong> This is the foundational policy. Use an authentication strength that includes only FIDO2 and Windows Hello for Business. Exclude break-glass accounts (which should have their own dedicated policy requiring FIDO2 keys).</p></li><li><p><strong>Require compliant or hybrid-joined device for all users, all cloud apps.</strong> This blocks token issuance to unmanaged devices, including AiTM proxy servers. For organisations with BYOD populations, a companion policy can grant access from registered devices with additional session restrictions (app-enforced restrictions, limited session duration).</p></li><li><p><strong>Block legacy authentication protocols.</strong> Legacy protocols (IMAP, POP3, SMTP AUTH, Exchange ActiveSync with basic auth) do not support MFA and are a common attack vector. Block these for all users without exception.</p></li><li><p><strong>Require re-authentication for high-risk sign-ins.</strong> Integrate Entra ID Protection risk signals. When a sign-in is classified as medium or high risk (unfamiliar location, impossible travel, anomalous token), require interactive phishing-resistant re-authentication.</p></li></ul><p><strong>Privileged access policies</strong></p><ul><li><p><strong>Require phishing-resistant MFA every time for privileged role activation.</strong> Configure sign-in frequency to &#8220;every time&#8221; for PIM role activations and access to admin portals (Azure portal, Entra admin centre, Microsoft 365 admin centre). This prevents a stolen session token from being used to activate a privileged role.</p></li><li><p><strong>Restrict privileged access to compliant devices from named locations.</strong> Privileged roles should only be accessible from specific managed workstations and trusted network locations. This limits the attack surface for administrative operations.</p></li></ul><p><strong>Session controls</strong></p><ul><li><p><strong>Enable Continuous Access Evaluation (CAE).</strong> CAE is enabled by default for supported workloads but verify it has not been overridden. Consider enabling Strict Location Enforcement for applications that handle sensitive data.</p></li><li><p><strong>Deploy Token Protection.</strong> Enable the <a href="https://learn.microsoft.com/en-us/entra/identity/conditional-access/concept-token-protection">Token Protection session control</a> to bind PRTs to the device they were issued on. Start in report-only mode to identify compatibility issues, then move to enforcement. Note the current limitation: Token Protection covers native applications only, not browser sessions.</p></li><li><p><strong>Configure sign-in frequency for sensitive applications.</strong> For applications that handle financial data, HR records, or customer PII, set a sign-in frequency that requires periodic re-authentication (e.g. every 4 or 8 hours) rather than relying on the default token lifetime.</p></li></ul><p>In Okta, the equivalent of Conditional Access is the combination of authentication policies (per-application MFA and factor requirements), global session policies (session duration and re-authentication rules), and network zones (IP-based location restrictions). The conceptual model is similar but the configuration surface is different. Okta&#8217;s device trust integration works through Okta Verify device signals, Okta Device Assurance policies, and, for Microsoft-managed devices, through integration with Intune compliance data.</p><h2><strong>Layer 5: Session Management</strong></h2><p>Session management is the post-authentication layer that determines how long a token remains valid and under what conditions it should be revoked. This layer was covered in depth in the earlier <a href="https://ajiththamarakshan.substack.com/p/defending-against-adversary-in-the">session token post</a>, but is summarised here for architectural context.</p><p>The key controls are:</p><ul><li><p><strong>Token Protection: </strong>Binds the Primary Refresh Token to the device&#8217;s cryptographic material. A token replayed from a different device fails proof-of-possession and is rejected. Currently supports native applications on Windows and macOS only.</p></li><li><p><strong>Continuous Access Evaluation (CAE): </strong>Establishes a near real-time communication channel between Entra ID and resource providers (Exchange Online, SharePoint, Teams). When critical events occur (password reset, account disabled, high risk detected, location policy violation), the resource provider can reject the token immediately rather than waiting for expiry.</p></li><li><p><strong>Compliant network (Global Secure Access): </strong>Requires that access to cloud applications originates from a network connection verified by Microsoft&#8217;s Global Secure Access client. This prevents token replay from outside the organisation&#8217;s managed network perimeter, even for tokens that are otherwise valid.</p></li><li><p><strong>Sign-in frequency and persistent session controls: </strong>Configurable per-application. Controls how often users must re-authenticate and whether browser sessions persist across closure. For sensitive applications, set sign-in frequency to &#8220;every time&#8221; with phishing-resistant MFA required.</p></li></ul><p>These controls are most effective when layered. A compliant device policy prevents token issuance to untrusted endpoints. Token Protection prevents replay of tokens extracted from a managed device. CAE enables revocation when conditions change after the token was issued. Together, they cover the pre-authentication, post-authentication, and ongoing session evaluation stages.</p><h2><strong>Layer 6: External Collaboration</strong></h2><p>Workforce identity does not exist in isolation. Contractors, agency staff, suppliers, auditors, and partner organisation employees all need some form of access to internal resources. How that access is provisioned, controlled, and eventually removed is one of the more operationally complex aspects of workforce identity.</p><h3><strong>B2B guest accounts</strong></h3><p>The most common pattern in Entra ID is <a href="https://learn.microsoft.com/en-us/entra/external-id/what-is-b2b">B2B collaboration</a>, where an external user is invited as a guest in your tenant. The guest authenticates against their home identity provider and receives a user object in your directory with <code>userType = Guest</code>. You can then assign group memberships, application access, and SharePoint site permissions to that guest object.</p><p>The operational risk with guest accounts is accumulation. Guests are created for a specific project or engagement, but there is no built-in mechanism that removes them when the engagement ends. Over time, tenants accumulate hundreds or thousands of stale guest accounts with standing access to resources they no longer need. This is a governance problem that requires deliberate lifecycle management.</p><p>Mitigation options include access packages with automatic expiry (covered in Part 5), access reviews that periodically recertify guest access (with auto-removal if the reviewer does not respond), and automated stale account detection based on sign-in activity. Entra ID&#8217;s sign-in logs can be queried to identify guest accounts that have not authenticated within a defined window (90 or 180 days), and those accounts can be flagged for review or automatic disablement.</p><h3><strong>Cross-tenant access settings</strong></h3><p><a href="https://learn.microsoft.com/en-us/entra/external-id/cross-tenant-access-overview">Cross-tenant access settings</a> provide per-organisation control over inbound and outbound B2B collaboration. For each partner organisation, you can configure whether to trust their MFA claims and device compliance signals, which users and groups are allowed to collaborate, and which applications they can access. This is more granular than the default collaboration settings and allows you to apply different trust levels to different partners.</p><p>For close partnerships where bidirectional collaboration is frequent, cross-tenant trust (trusting the partner&#8217;s MFA and device compliance) reduces friction by allowing guest users to satisfy your Conditional Access policies using their home tenant&#8217;s MFA enrolment and device compliance state. Without cross-tenant trust, guest users must register MFA separately in your tenant, which creates confusion and increases helpdesk load.</p><h3><strong>Federation with external identity providers</strong></h3><p>For partners that do not use Entra ID, SAML or OIDC federation can be configured to allow their users to authenticate using their own identity provider. This is common when working with organisations that use Okta, Ping Identity, or other non-Microsoft identity platforms. Federation provides a better user experience than email one-time passcode (the default for guests without a Microsoft account) but introduces a dependency on the partner&#8217;s IdP configuration. If the partner rotates their signing certificate or changes their federation metadata without coordination, authentication can break.</p><p>Regardless of which collaboration pattern is used, external identities should be subject to Conditional Access policies that are at least as restrictive as those applied to internal users. Guest users should be required to use MFA (either trusted from their home tenant or registered in yours), access should be scoped to specific applications rather than granted broadly, and session durations should be shorter than those for internal users where the security posture of the partner&#8217;s environment is not verified.</p><h2><strong>Privileged Identity Management</strong></h2><p>Privileged access requires specific treatment in any workforce identity architecture. The principle is simple: no user should have standing administrative access. Instead, privileges should be activated on demand, scoped to a specific task, and automatically deactivated after a defined period.</p><p><a href="https://learn.microsoft.com/en-us/entra/id-governance/privileged-identity-management/pim-configure">Privileged Identity Management (PIM)</a> in Entra ID provides just-in-time role activation for both Entra directory roles (Global Administrator, User Administrator, etc.) and Azure resource roles. Activation can require approval from a designated approver, phishing-resistant MFA re-authentication, and a justification. Role assignments can be configured as eligible (the user must activate before using the role) rather than active (the role is permanently assigned), and activation durations can be limited (e.g. 4 or 8 hours).</p><p>For organisations that also use SailPoint for identity governance (covered in Part 5), PIM activation events can be integrated into SailPoint&#8217;s access certification workflows, providing a single governance view across both native Entra roles and cross-platform entitlements.</p><h2><strong>Logging and Monitoring</strong></h2><p>The identity architecture produces several categories of logs that should be forwarded to the organisation&#8217;s SIEM for correlation and alerting.</p><p>Entra ID sign-in logs capture every authentication event, including the user, device, application, location, risk level, Conditional Access policies evaluated, and the outcome (success, failure, interrupted). Audit logs capture directory changes: user creation and deletion, group membership changes, application assignment changes, Conditional Access policy modifications, and PIM role activations. These logs can be exported to Azure Monitor (Log Analytics), Microsoft Sentinel, or a third-party SIEM via the Entra diagnostic settings.</p><p>Key detection scenarios to configure include: sign-ins from impossible travel locations, sign-ins from unfamiliar devices that bypass device compliance (indicating a potential token theft), PIM role activations outside of business hours or without justification, bulk guest account creation, and changes to Conditional Access policies or authentication method configurations. Microsoft Defender XDR provides pre-built detections for many of these scenarios, including AiTM attack detection and automatic attack disruption.</p><p>The Entra Connect synchronisation server should also be monitored. Entra Connect Health provides dashboards and alerts for synchronisation errors, and the server&#8217;s operating system logs should be forwarded to the SIEM as a Tier 0 asset.</p><h2><strong>Architecture Summary</strong></h2><p>The six layers described in this post form a coherent workforce identity architecture when deployed together. The directory layer provides the identity foundation. Device trust establishes the boundary within which tokens can be issued. Authentication ensures the user proves their identity using phishing-resistant methods. Conditional Access ties these signals together into enforceable policy. Session management protects the tokens after they are issued. External collaboration extends the architecture to partners and contractors with appropriate controls.</p><p><a href="https://ajiththamarakshan.substack.com/p/customer-identity-reference-architecture">Part 3</a> of this series will cover the equivalent architecture for customer identity, where many of these assumptions (managed devices, enforceable MFA, known user population) do not hold, and a different set of design patterns is required.</p><p></p><blockquote><p><strong>Identity Architecture for the Modern Enterprise: </strong></p><p>A five-part series covering workforce and customer identity architecture, phishing-resistant MFA, and identity governance.</p><ul><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-and-customer-identity">Part 1: Why Two Architectures</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-reference-architecture">Part 2: Workforce Reference Architecture</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/customer-identity-reference-architecture">Part 3: Customer Reference Architecture</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/non-human-identities-service-accounts">Part 4: Non-Human Identities in the Workforce</a></strong></p></li><li><p><strong><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-governance-access">Part 5: Workforce Identity Governance</a></strong></p></li></ul></blockquote>]]></content:encoded></item><item><title><![CDATA[Workforce Identity and Customer Identity: Different Problems, Different Architectures]]></title><description><![CDATA[A five-part series on building identity systems that serve workforce and customer populations well. Identity Architecture &#183; Part 1 of 5]]></description><link>https://ajiththamarakshan.substack.com/p/workforce-identity-and-customer-identity</link><guid isPermaLink="false">https://ajiththamarakshan.substack.com/p/workforce-identity-and-customer-identity</guid><dc:creator><![CDATA[Ajith Thamarakshan]]></dc:creator><pubDate>Fri, 10 Apr 2026 07:08:32 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!NUwK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceff2030-3d81-488b-906c-f403f67f3dcc_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NUwK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceff2030-3d81-488b-906c-f403f67f3dcc_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NUwK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceff2030-3d81-488b-906c-f403f67f3dcc_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!NUwK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceff2030-3d81-488b-906c-f403f67f3dcc_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!NUwK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceff2030-3d81-488b-906c-f403f67f3dcc_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!NUwK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceff2030-3d81-488b-906c-f403f67f3dcc_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NUwK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceff2030-3d81-488b-906c-f403f67f3dcc_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ceff2030-3d81-488b-906c-f403f67f3dcc_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1957658,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/193767133?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceff2030-3d81-488b-906c-f403f67f3dcc_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!NUwK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceff2030-3d81-488b-906c-f403f67f3dcc_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!NUwK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceff2030-3d81-488b-906c-f403f67f3dcc_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!NUwK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceff2030-3d81-488b-906c-f403f67f3dcc_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!NUwK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceff2030-3d81-488b-906c-f403f67f3dcc_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Workforce identity and customer identity are often discussed as variations of the same discipline. Both involve authentication, authorisation, directory services, and token management. Both rely on protocols like OIDC, SAML, and SCIM. At the vendor level, the same companies often sell products for both: Microsoft offers Entra ID for workforce and Entra External ID for customers, Okta sells Workforce Identity Cloud and Customer Identity Cloud (Auth0), and AWS provides IAM for internal access and Cognito for customer-facing applications.</p><p>But the similarities are largely at the protocol layer. Above that layer, the two domains diverge in user population, device trust model, lifecycle management, regulatory exposure, and the way security trades off against usability. Getting the architecture right for each domain requires understanding those divergences in concrete terms, because the decisions you make about directory structure, authentication policy, session management, and data residency depend on which population you are serving.</p><p>This post maps those divergences and establishes the framing for the rest of the series, which will provide dedicated reference architectures for each domain (Parts 2 and 3), patterns for non-human identities in the workforce (<a href="https://ajiththamarakshan.substack.com/p/non-human-identities-service-accounts">Part 4</a>), and a detailed treatment of identity governance for workforce (Part 5).</p><h2><strong>The User Population Problem</strong></h2><p>The most obvious difference is the nature of the user population. In workforce identity, the set of users is known and bounded. Every identity corresponds to an employee, contractor, or partner whose relationship with the organisation is documented, usually through an HR system or a procurement process. The organisation controls the onboarding process: identities are provisioned by IT, credentials are issued through a managed workflow, and the user&#8217;s role and entitlements are determined by their position in the organisation.</p><p>In customer identity, the population is unknown until it self-registers. The organisation has no prior relationship with the user. Registration is self-service, credentials are chosen by the user (or inherited from a social identity provider like Google or Apple), and the user&#8217;s profile is built progressively over time rather than provisioned in advance. The user population can range from thousands to tens of millions, and usage patterns are unpredictable. A marketing campaign or seasonal event can produce traffic spikes that workforce systems are never designed to handle.</p><p>This difference in population characteristics drives different architectural choices at every level. Workforce directories (Active Directory, Entra ID) are optimised for tens of thousands of identities with rich attribute schemas, group memberships, and organisational unit structures. Customer directories need to handle millions of identities with sparse, gradually populated profiles, and they need to do so with sub-second response times during peak registration and login events. Using a workforce directory for customer identities introduces both a scaling problem and, in many jurisdictions, a data handling problem, since customer personal information is now stored in a system that was designed for a different purpose and may be governed by different retention and access policies.</p><h2><strong>Device Trust and the Authentication Boundary</strong></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!C4k0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02decc35-1542-48cd-9eea-b831a2f23a71_1168x784.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!C4k0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02decc35-1542-48cd-9eea-b831a2f23a71_1168x784.jpeg 424w, https://substackcdn.com/image/fetch/$s_!C4k0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02decc35-1542-48cd-9eea-b831a2f23a71_1168x784.jpeg 848w, https://substackcdn.com/image/fetch/$s_!C4k0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02decc35-1542-48cd-9eea-b831a2f23a71_1168x784.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!C4k0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02decc35-1542-48cd-9eea-b831a2f23a71_1168x784.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!C4k0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02decc35-1542-48cd-9eea-b831a2f23a71_1168x784.jpeg" width="1168" height="784" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/02decc35-1542-48cd-9eea-b831a2f23a71_1168x784.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:784,&quot;width&quot;:1168,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:200959,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/193767133?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02decc35-1542-48cd-9eea-b831a2f23a71_1168x784.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!C4k0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02decc35-1542-48cd-9eea-b831a2f23a71_1168x784.jpeg 424w, https://substackcdn.com/image/fetch/$s_!C4k0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02decc35-1542-48cd-9eea-b831a2f23a71_1168x784.jpeg 848w, https://substackcdn.com/image/fetch/$s_!C4k0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02decc35-1542-48cd-9eea-b831a2f23a71_1168x784.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!C4k0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02decc35-1542-48cd-9eea-b831a2f23a71_1168x784.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Workforce identity operates within a trust boundary that extends to the device. In a well-configured environment, the user&#8217;s laptop or phone is enrolled in an MDM solution (Intune, Jamf, VMware Workspace ONE), registered with the identity provider, and subject to Conditional Access policies that evaluate device compliance before issuing tokens. The organisation controls the endpoint: it can enforce encryption, require specific OS versions, deploy endpoint detection and response agents, and bind authentication tokens to the device&#8217;s cryptographic material. This device trust model is what makes controls like Token Protection and compliant device Conditional Access policies viable as noted in <a href="https://ajiththamarakshan.substack.com/p/defending-against-adversary-in-the">Part 2</a> of the Passkeys &amp; Session Security series.</p><p>Customer identity has no equivalent trust boundary. The customer authenticates from a personal phone, a shared family computer, a work laptop, or a public terminal. The organisation cannot require MDM enrolment, cannot verify device compliance, and cannot bind tokens to a managed device. Authentication policy has to work with whatever device the customer happens to be using, which means the entire Conditional Access framework that underpins workforce session security (compliant device requirements, Token Protection, managed device attestation) is unavailable.</p><p>This has practical consequences for session management. In workforce environments, you can enforce short session durations and frequent re-authentication for sensitive operations because the user is on a managed device and authentication is fast (a biometric scan or a tap on a hardware key). In customer environments, forcing re-authentication creates friction that directly affects conversion and retention. A customer who is asked to re-authenticate while completing a purchase may abandon the transaction. The equivalent control in customer identity is risk-based step-up authentication: the session runs with a long duration for low-risk actions (browsing, viewing order history) and triggers an MFA prompt only when the user attempts something sensitive (changing a payment method, initiating a transfer, updating account credentials).</p><h2><strong>Identity Lifecycle</strong></h2><p>The lifecycle of a workforce identity is driven by HR events. An employee is hired, and a provisioning workflow creates their account, assigns group memberships, and grants access to the applications required for their role. The employee changes roles, and an access review or automated workflow adjusts their entitlements. The employee leaves, and a de-provisioning workflow disables their account, revokes their sessions, and archives or deletes their data. This lifecycle can be automated end to end using SCIM provisioning, lifecycle workflows in Entra ID Governance, or an identity governance platform like SailPoint that connects to HR systems like Workday or SAP SuccessFactors.</p><p>The customer identity lifecycle has no equivalent driver. Customers self-register, manage their own profiles, and may go dormant for months or years before returning. There is no HR event that triggers de-provisioning. Instead, the organisation needs policies for dormant accounts (when to disable or delete them, and how to notify the customer before doing so), consent withdrawal (how to handle a customer revoking consent for specific data processing), and account deletion on request.</p><p>Under the <a href="https://www.oaic.gov.au/privacy/australian-privacy-principles">Australian Privacy Principles</a>, organisations are required to take reasonable steps to destroy or de-identify personal information once it is no longer needed for the purpose for which it was collected (APP 11.2). For customer identity systems, this means the platform needs a mechanism to identify accounts that no longer serve their original purpose and either delete or anonymise them. In practice, this obligation often conflicts with other regulatory requirements. A financial services provider subject to AML/KYC record-keeping obligations may be required to retain customer identification data for seven years after the relationship ends, even while the Privacy Act requires destruction of data no longer needed. These conflicts cannot be resolved at the technology layer alone; they require explicit policy decisions about what to retain, in what form, and for how long, and those decisions need to be implemented as automated workflows in the customer identity platform rather than left to manual processes.</p><h2><strong>Authentication and MFA: Same Goal, Different Constraints</strong></h2><p>Both workforce and customer identity need strong authentication. Both benefit from phishing-resistant MFA. But the deployment model differs because the organisation&#8217;s relationship with the user differs.</p><p>In workforce identity, the organisation can mandate authentication methods. It can require passkeys or FIDO2 hardware keys, disable fallback to SMS and TOTP, and issue hardware tokens to every employee. The <a href="https://www.cyber.gov.au/business-government/asds-cyber-security-frameworks/essential-eight/essential-eight-maturity-model-changes">Essential Eight Maturity Model</a> requires phishing-resistant MFA for workforce access at Maturity Level 2, and for organisations subject to this framework, the deployment decision is not optional. The user experience impact is manageable because the user is an employee who can be trained, issued equipment, and supported by a helpdesk when something goes wrong.</p><p>In customer identity, the organisation cannot mandate anything. It can offer passkeys, encourage their use, and make them the default, but it cannot force a customer to enrol. If the authentication flow is too complex or unfamiliar, the customer will abandon it. The Essential Eight&#8217;s November 2023 update requires that online customer services offer a phishing-resistant MFA option, but &#8220;offer&#8221; is not the same as &#8220;require.&#8221; The practical challenge is building an authentication experience that encourages passkey adoption while maintaining a functional fallback for customers who have not yet enrolled. The FIDO Alliance&#8217;s staged adoption model addresses this by defining progressive migration stages, from offering passkeys alongside passwords, to making passkeys the default with password fallback, to eventually requiring passkeys for all access. Most consumer-facing services are still in the first or second stage.</p><p>Account recovery further illustrates the gap. A workforce user who loses their security key can walk to the helpdesk, present identification, and receive a Temporary Access Pass or a replacement key. A customer who loses their device cannot. Recovery for customer accounts has to be self-service, which means it needs to be both secure enough to prevent account takeover and simple enough that a legitimate customer can complete it without assistance. Document verification, liveness checks, and email-based recovery flows each carry different trade-offs between security, usability, and cost.</p><h2><strong>Regulatory Exposure</strong></h2><p>The regulatory obligations that apply to workforce identity and customer identity overlap in some areas and diverge sharply in others. Understanding where they diverge matters because it affects data architecture decisions, cross-border data flows, and the logging and audit requirements that the identity platform needs to support.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/O0OhG/3/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3e55cea9-3ab7-4d3b-9dd6-9c77fc8198bd_1220x1782.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/22f50284-3924-4fc2-a32a-91bb3297b9cb_1220x1852.png&quot;,&quot;height&quot;:943,&quot;title&quot;:&quot;Australian Regulatory Exposure&quot;,&quot;description&quot;:&quot;&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/O0OhG/3/" width="730" height="943" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><p>The key takeaway from this regulatory comparison is that workforce identity and customer identity are subject to different compliance requirements, administered by different regulators (the ASD and ACSC for workforce security, the OAIC for privacy), and the identity architecture needs to support both without forcing data or controls from one domain into the other.</p><h2><strong>Platform Overview</strong></h2><p>The major identity platforms reflect this architectural separation. The following is not exhaustive but covers the platforms most commonly encountered in enterprise environments.</p><h4><strong>Workforce Identity Platforms</strong></h4><ul><li><p><strong>Microsoft Entra ID: </strong>The most widely deployed workforce identity platform in enterprise environments. Provides directory services, Conditional Access, PIM, and native governance capabilities (access packages, access reviews, lifecycle workflows). Integrates with on-premises Active Directory via Entra Connect for hybrid identity.</p></li><li><p><strong>Okta Workforce Identity Cloud : </strong>Cloud-native workforce IAM with SSO, adaptive MFA, and lifecycle management. Commonly used in organisations that are not primarily Microsoft-centric or that operate multi-cloud environments.</p></li><li><p><strong>SailPoint Identity Security Cloud: </strong>Identity governance platform that aggregates identities and entitlements across Entra ID, AD, ServiceNow, SAP, Workday, and legacy systems. Provides role mining, certification campaigns, and separation-of-duties enforcement. Covered in detail in Part 5 of this series.</p></li></ul><h4><strong>Customer Identity Platforms</strong></h4><ul><li><p><strong>Microsoft Entra External ID: </strong>Microsoft&#8217;s customer-facing identity service (formerly Azure AD B2C). Supports custom authentication flows, social identity provider integration, and progressive profiling. Shares underlying infrastructure with Entra ID but uses a separate tenant and configuration model.</p></li><li><p><strong>Auth0 (Okta Customer Identity Cloud): </strong>Developer-oriented CIAM platform with extensive customisation of authentication flows, social login, and consent management. Widely used in SaaS and e-commerce environments.</p></li><li><p><strong>AWS Cognito: </strong>AWS-native customer identity service. Provides user pools for authentication and identity pools for authorisation to AWS resources. Commonly used in applications built on AWS infrastructure.</p></li></ul><p>The important point is not which vendor to choose but the recognition that these products exist as separate offerings because the underlying requirements are different. Using a workforce platform for customer identity, or vice versa, introduces misalignment between the platform&#8217;s design assumptions and the actual operational requirements. The reference architectures in Parts 2 and 3 will cover how each platform type should be configured for its intended domain.</p><h2><strong>Where They Connect</strong></h2><p>Keeping workforce and customer identity architecturally separate does not mean keeping them entirely isolated. There are legitimate connection points between the two domains, and the architecture needs to handle them cleanly.</p><p>The most common connection is workforce users who need access to the customer identity system for administration, support, or analytics. A support agent may need to look up a customer&#8217;s account, a product manager may need to review authentication metrics, and a compliance officer may need to audit consent records. These workforce users should authenticate through the workforce identity provider and access the customer identity platform through role-based access controls with appropriate logging. The customer identity system should not maintain its own set of administrative credentials for internal staff.</p><p>Another connection point is B2B scenarios where a business customer&#8217;s employees need access to your services. This sits between the two domains: the users are external (not your employees) but they are part of a known organisation with its own identity provider. Federation (SAML or OIDC) between your customer identity platform and the business customer&#8217;s workforce identity provider allows their employees to authenticate using their existing corporate credentials. This is common in SaaS platforms that serve enterprise clients and is typically handled through the customer identity platform&#8217;s federation capabilities rather than through the workforce identity system.</p><p>A third connection point is reporting and security monitoring. Authentication events from both tiers should feed into the organisation&#8217;s SIEM for correlation and analysis. An attacker who compromises a workforce account may attempt to access customer data, and detecting that pattern requires visibility across both identity systems. The logging architecture should allow correlation without co-mingling the identity data itself.</p><h2><strong>What Follows in This Series</strong></h2><p>This post has established why workforce and customer identity need separate architectural treatment. The remaining posts in the series will go deeper into each domain.</p><ul><li><p><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-reference-architecture">Part 2</a> provides a technical reference architecture for workforce identity, covering directory design, Conditional Access, phishing-resistant MFA, session management, and federation for third-party access, with Entra ID as the primary platform. </p></li><li><p><a href="https://ajiththamarakshan.substack.com/p/customer-identity-reference-architecture">Part 3</a> does the same for customer identity, covering tenant configuration, authentication flow design, passkey adoption strategy, session management, and privacy compliance, with Entra External ID as the primary platform and comparisons to Auth0 and Cognito. </p></li><li><p><a href="https://ajiththamarakshan.substack.com/p/non-human-identities-service-accounts">Part 4</a> covers non-human identities in the workforce. These include service accounts, managed identities, API keys, and agent credentials.</p></li><li><p><a href="https://ajiththamarakshan.substack.com/p/workforce-identity-governance-access">Part 5</a> covers identity governance for workforce, including access packages, access reviews, and lifecycle automation in both Entra ID Governance and SailPoint.</p></li></ul>]]></content:encoded></item><item><title><![CDATA[Defending Against Adversary-in-the-Middle Attacks on Session Tokens]]></title><description><![CDATA[Phishing-resistant MFA stops credential theft at the front door. But once a session token is issued, the focus shifts to device binding, conditional access, and session management.]]></description><link>https://ajiththamarakshan.substack.com/p/defending-against-adversary-in-the</link><guid isPermaLink="false">https://ajiththamarakshan.substack.com/p/defending-against-adversary-in-the</guid><dc:creator><![CDATA[Ajith Thamarakshan]]></dc:creator><pubDate>Wed, 01 Apr 2026 23:55:36 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!2_sx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2c3a2fe-03e6-4662-9849-7c1939c46105_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2_sx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2c3a2fe-03e6-4662-9849-7c1939c46105_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2_sx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2c3a2fe-03e6-4662-9849-7c1939c46105_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!2_sx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2c3a2fe-03e6-4662-9849-7c1939c46105_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!2_sx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2c3a2fe-03e6-4662-9849-7c1939c46105_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!2_sx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2c3a2fe-03e6-4662-9849-7c1939c46105_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2_sx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2c3a2fe-03e6-4662-9849-7c1939c46105_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a2c3a2fe-03e6-4662-9849-7c1939c46105_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1851386,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/192907758?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2c3a2fe-03e6-4662-9849-7c1939c46105_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2_sx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2c3a2fe-03e6-4662-9849-7c1939c46105_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!2_sx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2c3a2fe-03e6-4662-9849-7c1939c46105_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!2_sx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2c3a2fe-03e6-4662-9849-7c1939c46105_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!2_sx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2c3a2fe-03e6-4662-9849-7c1939c46105_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em>Part 2 of the Passkeys &amp; Session Security series. See Part 1 <a href="https://ajiththamarakshan.substack.com/p/the-end-of-traditional-mfa-the-case">here</a>.</em></p><p>In my <a href="https://ajiththamarakshan.substack.com/p/the-end-of-traditional-mfa-the-case">previous post in this series</a>, we covered why traditional MFA methods are failing against Adversary-in-the-Middle (AiTM) phishing and why passkeys represent the strongest available countermeasure. This post picks up where that analysis left off. Deploying passkeys addresses the credential theft stage of an AiTM attack, but there is a second, equally important problem: what happens to session tokens after authentication succeeds?</p><p>Even in environments that use phishing-resistant MFA, session tokens and cookies remain a target. An attacker who obtains a valid session cookie through malware, a compromised browser extension, or a token extraction tool can replay that cookie from their own device and inherit the user&#8217;s authenticated session. This class of attack is often referred to as token theft or session hijacking, and it operates independently of how the user originally authenticated.</p><p>Microsoft <a href="https://learn.microsoft.com/en-us/entra/identity/devices/protecting-tokens-microsoft-entra-id">reported a 146% increase</a> in AiTM attacks over the past year, and the post-authentication phase is where attackers are increasingly focusing their effort. Defending against this requires a shift in thinking: from protecting the login process to protecting the session itself.</p><h2><strong>Why MFA Alone Does Not Protect Session Tokens</strong></h2><p>To understand the gap, it helps to trace what happens after a successful authentication. When a user logs into a service like Microsoft 365, the identity provider (Entra ID, formerly Azure AD) issues a set of tokens: an access token, a refresh token, and in many cases a Primary Refresh Token (PRT) that enables single sign-on across applications. These tokens are stored on the device, typically in the browser or in the operating system&#8217;s credential store.</p><p>MFA is evaluated at the point of authentication. Once that check passes and tokens are issued, the MFA layer is no longer involved in subsequent requests. The tokens themselves become the proof of identity. If an attacker can extract or intercept those tokens, they can present them from a different device, and the resource provider (Exchange Online, SharePoint, etc.) will accept them as valid. No further MFA challenge is triggered because the session has already been authenticated.</p><p>This is the core problem. Traditional session management assumes that once a token is issued to a trusted user, it will only be used from that user&#8217;s device. AiTM phishing proxies, info-stealer malware, and malicious browser extensions all violate that assumption by extracting tokens and delivering them to the attacker in real time.</p><blockquote><p><strong>146% </strong>increase in AiTM attacks observed by Microsoft over the past year, with attackers increasingly targeting session tokens rather than credentials alone.</p></blockquote><h2><strong>The Defence Layers: Token Binding, Device Compliance, and Continuous Evaluation</strong></h2><p>Addressing session token theft requires controls at three distinct points: preventing token issuance to untrusted devices, binding tokens to specific devices so they cannot be replayed elsewhere, and continuously evaluating sessions so that compromised tokens can be revoked in near real time. Each layer addresses a different failure mode, and they are most effective when deployed together.</p><h3><strong>1. Conditional Access: Require Compliant or Managed Devices</strong></h3><p>The most impactful control is a <a href="https://learn.microsoft.com/en-us/entra/identity/conditional-access/concept-conditional-access-conditions">Conditional Access policy</a> that requires sign-in requests to come from a device that is either Entra-joined, hybrid-joined, or marked as compliant by an MDM solution like Intune. This is a pre-authentication control: it evaluates the device state before a token is issued.</p><p>An AiTM phishing proxy cannot satisfy this requirement. The proxy server is not a managed device, does not have a valid device certificate, and cannot present a PRT. When a compliant device policy is enforced, the identity provider refuses to issue tokens to the proxy, and the attack chain breaks at the authentication stage rather than after it. <a href="https://learn.microsoft.com/en-us/answers/questions/5806049/token-protection-if-device-already-has-to-be-joine">Microsoft&#8217;s own documentation confirms</a> that requiring a compliant or hybrid-joined device is an effective mitigation against AiTM phishing because the attacker&#8217;s infrastructure cannot present a valid device identity.</p><p>For organisations that manage both corporate and BYOD environments, this may require different policy tiers. Corporate devices can be required to be fully compliant, while BYOD devices might be permitted with additional session controls (shorter token lifetimes, restricted application access). The key principle is that no token should be issued to an unmanaged endpoint without compensating controls.</p><h3><strong>2. Token Protection: Binding Tokens to Devices</strong></h3><p><a href="https://learn.microsoft.com/en-us/entra/identity/conditional-access/concept-token-protection">Token Protection</a> is a Conditional Access session control in Microsoft Entra ID that cryptographically binds sign-in session tokens to the device they were issued on. When a user registers a supported device with Entra ID, a Primary Refresh Token is issued and bound to that device&#8217;s cryptographic material. If an attacker extracts the token and attempts to replay it from a different device, the proof-of-possession check fails and access is denied.</p><p>Token Protection addresses a scenario that compliant device policies do not fully cover: token theft from a legitimate, managed device. If an attacker compromises a compliant device through malware or a malicious browser extension and extracts the PRT, a compliant device policy would have already been satisfied at the time of issuance. Token Protection adds a second check by verifying that the token is still being used from the same device it was bound to.</p><p>There are limitations to be aware of. As of early 2026, Token Protection in Entra ID <a href="https://learn.microsoft.com/en-us/entra/identity/conditional-access/deployment-guide-token-protection-windows">supports native applications only</a> (Outlook, Teams, OneDrive via WAM-based authentication). Browser-based session cookies are not yet covered by this control, which is a significant gap given that most AiTM attacks steal browser cookies specifically. Token Protection should be treated as one layer in a defence-in-depth strategy rather than a standalone solution.</p><h3><strong>3. Continuous Access Evaluation (CAE)</strong></h3><p>Traditional token-based authentication has a fundamental timing problem. Once an access token is issued, it remains valid until it expires, which can be up to an hour for standard tokens or up to 28 hours for CAE-enabled sessions. If a user&#8217;s account is disabled, their password is reset, or their device falls out of compliance during that window, the existing token continues to work.</p><p><a href="https://learn.microsoft.com/en-us/entra/identity/conditional-access/concept-continuous-access-evaluation">Continuous Access Evaluation</a> addresses this by establishing a communication channel between the identity provider (Entra ID) and the resource provider (Exchange Online, SharePoint Online, Teams). When a critical security event occurs, such as an account being disabled, a password being changed, MFA being enabled, or a high-risk state being detected by Entra ID Protection, the resource provider is notified in near real time and can reject the token immediately rather than waiting for expiry.</p><p>CAE also supports location-based evaluation. If an organisation enforces a Conditional Access policy requiring access from specific IP ranges, and a token is replayed from an IP address outside those ranges, CAE can block the request without waiting for the token to expire. With <a href="https://learn.microsoft.com/en-us/entra/identity/conditional-access/concept-continuous-access-evaluation">Strict Location Enforcement</a> enabled, this becomes a near real-time check rather than an opportunistic one.</p><p>For Australian organisations aligning with the <a href="https://www.cyber.gov.au/business-government/asds-cyber-security-frameworks/essential-eight/essential-eight-maturity-model-changes">ASD Essential Eight</a>, CAE supports the maturity model&#8217;s requirements around restricting access to managed devices and logging authentication events. The Essential Eight&#8217;s November 2023 update requires phishing-resistant MFA at Maturity Level 2 and event log monitoring at higher maturity levels, both of which are complemented by CAE&#8217;s near real-time session evaluation and its integration with Entra ID sign-in logs.</p><h2><strong>Practical Implementation: Where to Start</strong></h2><p>Deploying these controls in sequence reduces risk incrementally while avoiding disruption to users. The following order reflects a practical rollout path based on impact and complexity.</p><h4><strong>Enforce compliant device policies for privileged accounts</strong></h4><ul><li><p>Start by creating a Conditional Access policy that requires Entra-joined or compliant devices for all administrator and privileged role sign-ins. This blocks AiTM token issuance for the highest-value accounts. </p></li><li><p>Extend to all users once device enrolment is complete across the workforce.</p></li></ul><h4><strong>Enable Continuous Access Evaluation</strong></h4><ul><li><p>CAE is enabled by default for tenants with supported Microsoft 365 workloads, but verify it has not been overridden by existing Conditional Access policies. </p></li><li><p>Consider enabling Strict Location Enforcement for high-risk applications. </p></li><li><p>Test revocation behaviour by disabling a test account and confirming that active sessions are terminated in near real time.</p></li></ul><h4><strong>Deploy Token Protection in report-only mode</strong></h4><ul><li><p>Enable the <a href="https://learn.microsoft.com/en-us/entra/identity/conditional-access/deployment-guide-token-protection-windows">Token Protection session control</a> in report-only mode first to identify which devices and applications are affected. Review sign-in logs for unbound token events. </p></li><li><p>Once you have confirmed compatibility across your supported device fleet, move the policy to enforcement.</p></li></ul><h4><strong>Tighten session durations for sensitive operations</strong></h4><ul><li><p>Configure sign-in frequency policies to require re-authentication for sensitive operations, such as PIM role activation, access to financial systems, or changes to authentication methods. Setting sign-in frequency to &#8220;every time&#8221; for these operations, combined with requiring phishing-resistant MFA, prevents a stolen token from being used to complete high-impact actions.</p></li></ul><h4><strong>Deploy phishing-resistant MFA across all accounts</strong></h4><ul><li><p>If you have not yet deployed passkeys or FIDO2 hardware keys, this remains the single most effective control against AiTM credential theft. Combine with the session controls above. </p></li><li><p>As <a href="https://blog.cloudflare.com/how-cloudflare-implemented-fido2-and-zero-trust/">Cloudflare&#8217;s experience demonstrated</a>, disabling fallback to weaker MFA methods (TOTP, push notifications) is critical, because attackers will use whatever fallback path is available.</p></li></ul><h4><strong>Monitor and respond to token theft signals</strong></h4><ul><li><p>Deploy <a href="https://learn.microsoft.com/en-us/entra/identity/devices/protecting-tokens-microsoft-entra-id">Microsoft Defender XDR</a> workloads to detect suspicious sign-in patterns, such as impossible travel, token replay from unfamiliar devices, or duplicate sessions. Configure automated session revocation in response to high-risk detections. </p></li><li><p>Review Entra ID sign-in logs for anomalous authentication patterns on a regular cadence.</p></li></ul><h2><strong>Known Limitations and Gaps</strong></h2><p>It is worth being direct about what these controls do not yet cover. Token Protection in Entra ID does not currently protect browser-based sessions, which are the primary target for AiTM phishing kits that steal session cookies from the browser. Until Microsoft extends token binding to browser sessions, organisations should treat browser-based access as a higher-risk channel and apply compensating controls such as location restrictions, shorter session durations, and compliant network requirements via <a href="https://learn.microsoft.com/en-us/entra/global-secure-access/concept-universal-continuous-access-evaluation">Global Secure Access</a>.</p><p>CAE propagation is not instantaneous for all event types. Microsoft notes that policy and group membership changes can take up to a day to propagate, although user-level events like password resets and account disablement are enforced in near real time. Organisations that need immediate enforcement of group-based policy changes should use the <code>Revoke-MgUserSignIn</code> PowerShell cmdlet to manually revoke sessions.</p><p>Compliant device policies also introduce friction for organisations with significant BYOD populations or contractors who use unmanaged devices. These users will be blocked from accessing resources unless an alternative access path is configured, such as a virtual desktop environment or a restricted web application with additional session controls. Planning for these edge cases is part of a successful rollout.</p><h2><strong>The Australian Context</strong></h2><blockquote><p>The <a href="https://www.cyber.gov.au/about-us/view-all-content/reports-and-statistics/annual-cyber-threat-report-2024-2025">ASD Annual Cyber Threat Report 2024-25</a> found that phishing, account compromise, and identity information gathering were the top three observed attack techniques across both government and non-government incident reports. Compromised credentials were involved in 42% of critical incidents. Info-stealer malware, which harvests session cookies and credentials from browsers, was specifically called out as a growing concern.</p></blockquote><blockquote><p>The <a href="https://www.cyber.gov.au/business-government/asds-cyber-security-frameworks/essential-eight/essential-eight-maturity-model-changes">Essential Eight Maturity Model</a> now requires phishing-resistant MFA at Maturity Level 2 and mandates event logging that captures authentication events. The session management controls described in this post, particularly CAE, compliant device enforcement, and sign-in log monitoring, align with the Essential Eight&#8217;s requirements at Maturity Levels 2 and 3. For Commonwealth agencies subject to the PGPA Act, these are mandatory.</p></blockquote><p>The ASD&#8217;s advice to organisations is to operate with a mindset of &#8220;assume compromise&#8221; and prioritise protecting high-value assets. Session token defence fits directly within that model: rather than relying solely on preventing initial access, these controls limit what an attacker can do with a stolen token and reduce the window of exposure when a compromise does occur.</p><h2><strong>Resources</strong></h2><p>Documentation and implementation guides for the controls discussed in this post.</p><ul><li><p><strong><a href="https://learn.microsoft.com/en-us/entra/identity/devices/protecting-tokens-microsoft-entra-id">Microsoft: Protecting Tokens in Entra ID</a></strong></p></li><li><p><strong><a href="https://learn.microsoft.com/en-us/entra/identity/conditional-access/concept-token-protection">Token Protection in Conditional Access</a></strong></p></li><li><p><strong><a href="https://learn.microsoft.com/en-us/entra/identity/conditional-access/concept-continuous-access-evaluation">Continuous Access Evaluation</a></strong></p></li><li><p><strong><a href="https://www.cyber.gov.au/business-government/asds-cyber-security-frameworks/essential-eight/essential-eight-maturity-model-changes">ASD Essential Eight Changes</a></strong></p></li></ul>]]></content:encoded></item><item><title><![CDATA[The End of Traditional MFA: The Case for Passkeys]]></title><description><![CDATA[Your SMS codes, authenticator apps, and push notifications are no longer stopping credential theft. Here's what will.]]></description><link>https://ajiththamarakshan.substack.com/p/the-end-of-traditional-mfa-the-case</link><guid isPermaLink="false">https://ajiththamarakshan.substack.com/p/the-end-of-traditional-mfa-the-case</guid><dc:creator><![CDATA[Ajith Thamarakshan]]></dc:creator><pubDate>Sun, 29 Mar 2026 22:19:33 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!-cX_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d971be-a237-4c13-8d2f-40d2e73ae7aa_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-cX_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d971be-a237-4c13-8d2f-40d2e73ae7aa_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-cX_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d971be-a237-4c13-8d2f-40d2e73ae7aa_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!-cX_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d971be-a237-4c13-8d2f-40d2e73ae7aa_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!-cX_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d971be-a237-4c13-8d2f-40d2e73ae7aa_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!-cX_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d971be-a237-4c13-8d2f-40d2e73ae7aa_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-cX_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d971be-a237-4c13-8d2f-40d2e73ae7aa_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/46d971be-a237-4c13-8d2f-40d2e73ae7aa_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1853604,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/192485279?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d971be-a237-4c13-8d2f-40d2e73ae7aa_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-cX_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d971be-a237-4c13-8d2f-40d2e73ae7aa_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!-cX_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d971be-a237-4c13-8d2f-40d2e73ae7aa_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!-cX_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d971be-a237-4c13-8d2f-40d2e73ae7aa_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!-cX_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d971be-a237-4c13-8d2f-40d2e73ae7aa_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>For years, IT administrators and security teams have given the same advice: enable Multi-Factor Authentication to protect your accounts. It was reasonable guidance. Adding a second factor on top of a password raised the cost of a successful attack. But the threats have changed, and that advice alone is no longer sufficient.</p><div class="pullquote"><p><strong>59% of compromised accounts in recent account-takeover campaigns already had some form of MFA enabled.</strong></p></div><p>That number deserves attention. Attackers are now routinely bypassing SMS codes, authenticator apps, and push notifications, often in real time and at scale. Whether you manage authentication for an enterprise or simply want to keep your personal accounts secure, the picture is clear: <strong>traditional MFA is not holding up against modern phishing, and phishing-resistant passkeys are the most effective alternative available.</strong></p><h2><strong>The Rise of the Adversary-in-the-Middle Attack</strong></h2><p>The main reason traditional MFA is losing effectiveness is the growth of <strong>Adversary-in-the-Middle (AiTM)</strong> attacks. Earlier phishing campaigns focused on stealing passwords. Current attacks use <a href="https://www.proofpoint.com/us/blog/email-and-cloud-threats/aitm-phishing-attacks-evolving-threat-microsoft-365">Phishing-as-a-Service (PhaaS) platforms</a>, including tools like <a href="https://blog.talosintelligence.com/state-of-the-art-phishing-mfa-bypass/">EvilProxy, Tycoon 2FA, and Evilginx</a>, to position malicious proxy servers between the victim and the legitimate website.</p><p>The attack works like this. A user clicks a link in a phishing email and arrives at what looks like a normal Microsoft 365 or Google login page. It <em>is</em> the real login page; the attacker&#8217;s proxy is relaying traffic in both directions. The user enters their password. The real site prompts for an MFA code. The proxy passes that prompt along. The user enters the one-time code or taps &#8220;Approve&#8221; on their phone, as trained.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_xR_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75ce23a1-7278-43ae-9482-0d1b0323dd2e_1212x781.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_xR_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75ce23a1-7278-43ae-9482-0d1b0323dd2e_1212x781.png 424w, https://substackcdn.com/image/fetch/$s_!_xR_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75ce23a1-7278-43ae-9482-0d1b0323dd2e_1212x781.png 848w, https://substackcdn.com/image/fetch/$s_!_xR_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75ce23a1-7278-43ae-9482-0d1b0323dd2e_1212x781.png 1272w, https://substackcdn.com/image/fetch/$s_!_xR_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75ce23a1-7278-43ae-9482-0d1b0323dd2e_1212x781.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_xR_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75ce23a1-7278-43ae-9482-0d1b0323dd2e_1212x781.png" width="1212" height="781" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/75ce23a1-7278-43ae-9482-0d1b0323dd2e_1212x781.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:781,&quot;width&quot;:1212,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:951233,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/192485279?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75ce23a1-7278-43ae-9482-0d1b0323dd2e_1212x781.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!_xR_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75ce23a1-7278-43ae-9482-0d1b0323dd2e_1212x781.png 424w, https://substackcdn.com/image/fetch/$s_!_xR_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75ce23a1-7278-43ae-9482-0d1b0323dd2e_1212x781.png 848w, https://substackcdn.com/image/fetch/$s_!_xR_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75ce23a1-7278-43ae-9482-0d1b0323dd2e_1212x781.png 1272w, https://substackcdn.com/image/fetch/$s_!_xR_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75ce23a1-7278-43ae-9482-0d1b0323dd2e_1212x781.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>At that point, the legitimate service authenticates the session and issues a <strong>session cookie</strong>. The attacker captures it. With that cookie, they can <a href="https://pushsecurity.com/blog/phishing-2-0-how-phishing-toolkits-are-evolving-with-aitm">hijack the authenticated session and access the account</a> for as long as the session remains valid, with no need for the password or MFA device again. The <a href="https://www.cyber.gc.ca/en/guidance/defending-against-adversary-middle-threats-phishing-resistant-multi-factor-authentication-itsm30031">Canadian Centre for Cyber Security</a>, which analysed over 100 AiTM campaigns targeting Microsoft Entra ID between 2023 and early 2025, found that phishing-resistant MFA was the only defence that consistently prevented compromise.</p><p>These attacks have <a href="https://www.group-ib.com/resources/knowledge-hub/aitm-attack/">increased roughly 46% in 2025</a>, largely because PhaaS kits have become commoditised. A low-skilled attacker can rent a turnkey phishing platform, select a template mimicking a major identity provider, and begin harvesting session tokens within hours.</p><h2><strong>Why SMS, Authenticator Apps, and Push Notifications Fall Short</strong></h2><p>The reason AiTM works against these MFA methods comes down to one structural weakness: <strong>traditional MFA relies on shared secrets</strong>.</p><p>Every legacy MFA method, whether it sends a code over SMS, generates a time-based one-time password (TOTP) in an authenticator app, or triggers a push notification, ultimately produces a value that gets typed into a browser or approved with a tap. That value is the shared secret. Because it passes through the browser, an AiTM proxy sitting between the user and the real website can capture and replay it in real time.</p><h4><strong>How each method fails against AiTM</strong></h4><p><strong>SMS &amp; Email One-Time Passwords</strong></p><p>The code is transmitted over an interceptable channel, then typed into the browser, where the proxy captures it immediately. <a href="https://www.cisa.gov/sites/default/files/publications/fact-sheet-implementing-phishing-resistant-mfa-508c.pdf">CISA notes</a> that SMS codes are also vulnerable to SIM-swap attacks and SS7 protocol exploits.</p><p><strong>Authenticator Apps (TOTP)</strong></p><p>Although codes are generated locally on your device, the moment you type the six-digit code into a browser window, the AiTM proxy can intercept and use it within its 30-second validity window. The code is still a shared secret; it just has a shorter lifespan.</p><p><strong>Push Notifications</strong></p><p>Attackers bypass push-based MFA in two ways: the proxy can intercept the session approval in real time, or the attacker can <a href="https://www.cisa.gov/news-events/news/phishing-resistant-mfa-key-peace-mind">bombard the user with repeated push requests</a> (a technique called &#8220;MFA fatigue&#8221; or &#8220;push bombing&#8221;) until the user accidentally taps &#8220;Approve.&#8221;</p><p>Because all of these methods can be intercepted and replayed by an attacker observing the authentication exchange as it happens, they offer limited protection against modern phishing kits. The security model they were built on no longer accounts for the way attacks actually work.</p><h2><strong>Phishing-Resistant Passkeys: How They Work</strong></h2><p>Stopping AiTM attacks requires MFA that cannot be intercepted, replayed, or approved by a confused user. The <a href="https://www.microsoft.com/en-us/security/business/security-101/what-is-fido2">FIDO2 and WebAuthn standards</a> were designed to meet that requirement. The most widely adopted form of this technology is the <strong>passkey</strong>.</p><p>Passkeys and hardware security keys (like <a href="https://www.yubico.com/resources/reference-customers/google/">YubiKeys</a>) address the vulnerabilities in traditional MFA at the protocol level. Three properties make them resistant to phishing.</p><h4><strong>Why Passkeys Can&#8217;t Be Phished</strong></h4><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ks8w!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca51f6c9-dfbd-4d89-a0e4-1e1b0101dce1_1441x699.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ks8w!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca51f6c9-dfbd-4d89-a0e4-1e1b0101dce1_1441x699.png 424w, https://substackcdn.com/image/fetch/$s_!Ks8w!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca51f6c9-dfbd-4d89-a0e4-1e1b0101dce1_1441x699.png 848w, https://substackcdn.com/image/fetch/$s_!Ks8w!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca51f6c9-dfbd-4d89-a0e4-1e1b0101dce1_1441x699.png 1272w, https://substackcdn.com/image/fetch/$s_!Ks8w!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca51f6c9-dfbd-4d89-a0e4-1e1b0101dce1_1441x699.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ks8w!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca51f6c9-dfbd-4d89-a0e4-1e1b0101dce1_1441x699.png" width="1441" height="699" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ca51f6c9-dfbd-4d89-a0e4-1e1b0101dce1_1441x699.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:699,&quot;width&quot;:1441,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:667052,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/192485279?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca51f6c9-dfbd-4d89-a0e4-1e1b0101dce1_1441x699.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Ks8w!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca51f6c9-dfbd-4d89-a0e4-1e1b0101dce1_1441x699.png 424w, https://substackcdn.com/image/fetch/$s_!Ks8w!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca51f6c9-dfbd-4d89-a0e4-1e1b0101dce1_1441x699.png 848w, https://substackcdn.com/image/fetch/$s_!Ks8w!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca51f6c9-dfbd-4d89-a0e4-1e1b0101dce1_1441x699.png 1272w, https://substackcdn.com/image/fetch/$s_!Ks8w!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca51f6c9-dfbd-4d89-a0e4-1e1b0101dce1_1441x699.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p><strong>1. No Shared Secrets to Steal</strong></p><p>Unlike passwords or OTP codes, passkeys use <strong>asymmetric public-key cryptography</strong>. Your private key is generated and stored inside your device&#8217;s tamper-resistant hardware. It does not leave the device, is not transmitted over the network, and is not typed into a browser. Because no secret value flows through the browser, there is nothing for an AiTM proxy to intercept.</p><p><strong>2. Cryptographic Origin Binding</strong></p><p>This is the most important property. When you attempt to log in, your browser and authenticator <a href="https://blog.cloudflare.com/cloudflare-now-supports-security-keys-with-web-authentication-webauthn/">automatically verify the website&#8217;s actual domain</a> (its &#8220;origin&#8221;). If an attacker lures you to <code>evil-bank.com</code> instead of <code>real-bank.com</code>, the passkey will refuse to generate a valid cryptographic signature for the fake site. The protocol will not authenticate to a domain the credential was not registered with, regardless of what the user does.</p><p><strong>3. Replay Immunity</strong></p><p>Every authentication challenge is unique and time-bound. Even if an attacker could somehow record the encrypted traffic of your login, they could never replay it to gain access. Each response is valid only for that specific challenge, that specific origin, at that specific moment.</p><p>As <a href="https://www.swissbit.com/en/blog/post/bypassing-mfa-the-rise-of-adversary-in-the-middle-aitm-attacks/">Swissbit&#8217;s security researchers have noted</a>, because FIDO2/WebAuthn does not send credentials, codes, or session tokens over the network, session hijacking (the core technique behind AiTM attacks) becomes ineffective.</p><h2><strong>Real-World Results</strong></h2><p>The case for passkeys and hardware security keys is supported by deployment data from several large organisations that are frequent phishing targets.</p><h4><strong>Google: Zero Phishing Since 2017</strong></h4><blockquote><p>After requiring all 85,000+ employees to use physical security keys, Google reported <a href="https://krebsonsecurity.com/2018/07/google-security-keys-neutralized-employee-phishing/">zero successful phishing attacks</a> on employee work accounts. A <a href="https://fidoalliance.org/google-case-study/">FIDO Alliance case study</a> confirmed the results: an internal study showed TOTP-based authentication had an average failure rate of 3%, while U2F security keys had a 0% failure rate.</p></blockquote><h4><strong>Cloudflare: Hardware Keys Blocked an Active Attack</strong></h4><blockquote><p>In July 2022, Cloudflare was targeted by <a href="https://blog.cloudflare.com/2022-07-sms-phishing-attacks/">the same phishing campaign that breached Twilio</a> and hit over 130 companies. Some Cloudflare employees clicked the phishing links and entered their passwords. The attack did not succeed because the company&#8217;s <a href="https://blog.cloudflare.com/how-cloudflare-implemented-fido2-and-zero-trust/">FIDO2-compliant hardware security keys</a> could not authenticate to the fraudulent domain.</p></blockquote><h4><strong>Microsoft: Passwordless at Scale</strong></h4><blockquote><p>Microsoft has been <a href="https://learn.microsoft.com/en-us/entra/identity/authentication/concept-authentication-passkeys-fido2">rolling out passkey and FIDO2 support across Microsoft Entra ID</a>, and internally uses Windows Hello and FIDO2 security keys for employee authentication. The company now <a href="https://learn.microsoft.com/en-us/entra/identity/authentication/concept-mandatory-multifactor-authentication">requires MFA for all Azure and Microsoft 365 admin access</a>, with passkeys recommended as the strongest option.</p></blockquote><p>The Cloudflare case is worth examining closely. The same phishing campaign that compromised Twilio, a company with a capable security team, was stopped by Cloudflare&#8217;s hardware keys. The difference was not employee training or awareness. Some Cloudflare employees <em>did</em> fall for the phishing messages. The difference was architectural: FIDO2 keys implement origin binding, so a real-time phishing proxy cannot extract usable authentication material.</p><h2><strong>Regulators Are Demanding the Switch</strong></h2><p>Phishing-resistant MFA is also becoming a regulatory expectation. The <a href="https://www.cisa.gov/sites/default/files/publications/fact-sheet-implementing-phishing-resistant-mfa-508c.pdf">U.S. Cybersecurity and Infrastructure Security Agency (CISA)</a> <strong>strongly urges all organisations to implement phishing-resistant MFA</strong> as part of Zero Trust principles. The Office of Management and Budget requires federal agencies to adopt phishing-resistant methods.</p><p>In Australia, the <a href="https://www.cyber.gov.au/business-government/asds-cyber-security-frameworks/essential-eight/essential-eight-maturity-model-changes">Australian Signals Directorate (ASD) updated its Essential Eight Maturity Model</a> in November 2023 to require phishing-resistant MFA at Maturity Level 2, down from the previous Maturity Level 3. This means a much larger number of Australian organisations, including all Commonwealth government agencies subject to the PGPA Act, now need to implement FIDO2 or equivalent phishing-resistant authentication. Weaker methods like SMS codes and standard push notifications no longer satisfy the MFA requirements at this level. The update also removed the option for customers to opt out of MFA on services that store sensitive data, and requires online customer services to offer a phishing-resistant MFA option.</p><p>The urgency of this shift is reflected in the numbers. The <a href="https://www.cyber.gov.au/about-us/view-all-content/reports-and-statistics/annual-cyber-threat-report-2024-2025">ASD Annual Cyber Threat Report 2024-25</a> recorded over 1,200 cyber security incidents (an 11% increase year-on-year) and 84,700 cybercrime reports, roughly one every six minutes. Phishing, account compromise, and identity information gathering were the top three observed attack techniques. Compromised credentials were involved in 42% of critical incidents. The average cost of a cybercrime report for Australian businesses rose 50% to $80,850. The ASD&#8217;s own advice to individuals and organisations now explicitly recommends using phishing-resistant MFA wherever possible, preferably passkeys.</p><p>NIST guidance is moving in the same direction. Microsoft&#8217;s <a href="https://learn.microsoft.com/en-us/entra/identity/authentication/concept-mandatory-multifactor-authentication">mandatory MFA enforcement for Azure</a>, rolled out in phases through 2025, explicitly recommends passkeys (FIDO2) as the preferred method, particularly for break-glass and emergency access accounts.</p><p>The trend is consistent across jurisdictions: legacy MFA is being formally deprecated in favour of phishing-resistant alternatives, and organisations that do not make the transition face growing compliance gaps.</p><h2><strong>Making the Switch</strong></h2><p>A common objection to passkeys is deployment complexity, but passkey support is now built into every major platform. <a href="https://learn.microsoft.com/en-us/entra/identity/authentication/how-to-enable-passkey-fido2">Microsoft Entra ID supports passkeys</a> with granular policy controls. Apple syncs passkeys across devices via iCloud Keychain. Google Password Manager handles passkey sync on Android and Chrome. Windows Hello provides on-device biometric authentication using the same FIDO2 protocol.</p><p>For organisations, the practical rollout follows a predictable path. Start by enabling passkey support in your identity provider (Entra ID, Okta, Google Workspace). Issue hardware security keys to high-privilege users first: IT administrators, executives, anyone with elevated access. Then expand to the broader workforce using platform authenticators (biometrics built into their laptops and phones). Importantly, <strong>disable fallback to weaker MFA methods</strong>. As Cloudflare learned, if users can fall back to TOTP or push notifications, so can attackers.</p><p>For individual users, the process is simpler still. Most major services, including Google, Microsoft, Apple, GitHub, and Dropbox, already support passkeys. You can create one in your account security settings in under a minute. Once enrolled, logging in requires a biometric scan or a tap on a hardware key, which is faster than typing a password and retrieving an OTP code.</p><p>One area where adoption is still lagging is Australian banking. While major Australian banks have signalled their intent to support passkeys, most have not yet rolled out phishing-resistant MFA for consumer accounts. Given that online banking fraud is among the <a href="https://www.cyber.gov.au/about-us/view-all-content/reports-and-statistics/annual-cyber-threat-report-2024-2025">top three cybercrimes reported by individuals in Australia</a>, this gap is worth watching. In the meantime, users should enable passkeys on every service that supports them and use hardware security keys for high-value accounts.</p><h2><strong>Resources and Next Steps</strong></h2><p>Passkey support is available across all major platforms and identity providers. These links cover implementation details for both enterprise and individual use.</p><ul><li><p><strong><a href="https://www.cisa.gov/sites/default/files/publications/fact-sheet-implementing-phishing-resistant-mfa-508c.pdf">CISA Implementation Guide</a></strong></p></li><li><p><strong><a href="https://www.cyber.gov.au/business-government/asds-cyber-security-frameworks/essential-eight/essential-eight-maturity-model-changes">ASD Essential Eight Changes</a></strong></p></li><li><p><strong><a href="https://fidoalliance.org/passkeys/">FIDO Alliance: Passkeys</a></strong></p></li><li><p><strong><a href="https://learn.microsoft.com/en-us/entra/identity/authentication/how-to-enable-passkey-fido2">Microsoft Entra Passkey Setup</a></strong></p></li></ul>]]></content:encoded></item><item><title><![CDATA[Cybersecurity for Healthcare Professionals: What You Actually Need to Know]]></title><description><![CDATA[A practical guide to protecting your hospital, your patients, and yourself in an age of ransomware, deepfakes, and AI-powered attacks. Written for clinicians, not IT departments.]]></description><link>https://ajiththamarakshan.substack.com/p/cybersecurity-for-healthcare-professionals</link><guid isPermaLink="false">https://ajiththamarakshan.substack.com/p/cybersecurity-for-healthcare-professionals</guid><dc:creator><![CDATA[Ajith Thamarakshan]]></dc:creator><pubDate>Wed, 25 Mar 2026 22:20:01 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!KIju!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfd4a768-b4ee-42df-9480-92423a1f5b12_1264x848.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Based on a briefing to members of WIMA (Women&#8217;s wing of Indian Medical Association) from March 2026. A pdf version of the Participant Guide can be downloaded below.</em></p><div class="file-embed-wrapper" data-component-name="FileToDOM"><div class="file-embed-container-reader"><div class="file-embed-container-top"><image class="file-embed-thumbnail-default" src="https://substackcdn.com/image/fetch/$s_!0Cy0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack.com%2Fimg%2Fattachment_icon.svg"></image><div class="file-embed-details"><div class="file-embed-details-h1">WIMA Cybersecurity 2026 Participant Guide</div><div class="file-embed-details-h2">762KB &#8729; PDF file</div></div><a class="file-embed-button wide" href="https://ajiththamarakshan.substack.com/api/v1/file/bd293f2e-7910-4d01-a0b4-e5118db2c210.pdf"><span class="file-embed-button-text">Download</span></a></div><a class="file-embed-button narrow" href="https://ajiththamarakshan.substack.com/api/v1/file/bd293f2e-7910-4d01-a0b4-e5118db2c210.pdf"><span class="file-embed-button-text">Download</span></a></div></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KIju!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfd4a768-b4ee-42df-9480-92423a1f5b12_1264x848.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KIju!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfd4a768-b4ee-42df-9480-92423a1f5b12_1264x848.jpeg 424w, https://substackcdn.com/image/fetch/$s_!KIju!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfd4a768-b4ee-42df-9480-92423a1f5b12_1264x848.jpeg 848w, https://substackcdn.com/image/fetch/$s_!KIju!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfd4a768-b4ee-42df-9480-92423a1f5b12_1264x848.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!KIju!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfd4a768-b4ee-42df-9480-92423a1f5b12_1264x848.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KIju!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfd4a768-b4ee-42df-9480-92423a1f5b12_1264x848.jpeg" width="1264" height="848" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cfd4a768-b4ee-42df-9480-92423a1f5b12_1264x848.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:848,&quot;width&quot;:1264,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:112596,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://ajiththamarakshan.substack.com/i/192148865?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfd4a768-b4ee-42df-9480-92423a1f5b12_1264x848.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!KIju!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfd4a768-b4ee-42df-9480-92423a1f5b12_1264x848.jpeg 424w, https://substackcdn.com/image/fetch/$s_!KIju!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfd4a768-b4ee-42df-9480-92423a1f5b12_1264x848.jpeg 848w, https://substackcdn.com/image/fetch/$s_!KIju!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfd4a768-b4ee-42df-9480-92423a1f5b12_1264x848.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!KIju!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfd4a768-b4ee-42df-9480-92423a1f5b12_1264x848.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>This Is Not an IT Problem</h2><p>On 23 November 2022, staff at AIIMS New Delhi arrived for work to find their hospital&#8217;s computer systems either crawling or completely unresponsive. By 7:00 AM, the e-Hospital system - the platform that handled registrations, admissions, billing, lab reports, and appointments - was offline.</p><p>What followed was not just a technology failure. It was a patient safety crisis. For over two weeks, one of India&#8217;s most well-known government hospitals had to run on pen and paper - handwritten prescriptions, physical file management, manual billing - while serving 12,000 patients a day.</p><p>This guide starts here, not with the history of firewalls or the mechanics of malware, because this is the reality that matters. When hospital systems go down, the result is not just data loss. It is the operational standstill that holds up patient care.</p><div><hr></div><h2>The AIIMS Attack: What Actually Happened</h2><p>The National Informatics Centre confirmed that AIIMS had been hit by a ransomware attack - malicious software that scrambles your data and demands payment for the key to unlock it.</p><ul><li><p>Five of the hospital&#8217;s 100 physical servers were directly breached.</p></li><li><p>About 1.3 terabytes of data were encrypted and made inaccessible.</p></li><li><p>Around 40 million patient records were potentially exposed, including records of senior politicians, judges, and bureaucrats.</p></li><li><p>The attackers, later named as the LockBit ransomware gang, reportedly demanded around &#8377;200 crore (roughly USD 24.5 million) in cryptocurrency.</p></li></ul><p>The hospital went fully manual for over two weeks. Patients who had travelled from rural areas for scheduled surgeries arrived to find no record of their appointments. Emergency triage ran on handwritten notes. Blood bank records were inaccessible, holding up transfusions. The Delhi Police registered a case of extortion and cyber terrorism, and five separate agencies - CERT-In, CBI, NIA, Intelligence Bureau, and the Ministry of Home Affairs - got involved.</p><p>A later report by <a href="https://www.sentinelone.com/">Sentinel Labs</a> and <a href="https://www.recordedfuture.com/">Recorded Future</a> named the attackers as ChamelGang, a group with suspected links to China, using ransomware called &#8220;CatB.&#8221; The report suggested the ransomware may have been partly a cover for espionage.</p><blockquote><p><strong>The Lesson</strong> Every failure at AIIMS was preventable. Not one of the fixes required expensive technology. They required preparation: an incident response plan, offline backups, network segmentation, and staff training.</p></blockquote><div><hr></div><h2>Clinical Continuity: What to Have Ready Before an Attack</h2><p>The question every medical superintendent, nursing director, and department head should be asking is: &#8220;When the systems go down at 3am, what do my staff do in the first 60 minutes?&#8221;</p><h3>Paper fallback systems</h3><p>Pre-printed registration forms, prescription pads, and discharge summaries need to be stored in every department - not in one central store that might be inaccessible during an attack. Think of it like crash carts: you don&#8217;t keep one for the whole hospital.</p><h3>Critical data kept offline</h3><p>The last 48 hours of ICU charts, medication schedules, and ventilator settings should be printed daily. If you build this into the shift handover process, the same printout that works as a handover tool also works as a backup.</p><h3>Crisis communication</h3><p>When your hospital email goes down, your VoIP phones may go down too - they run on the same network. Pre-configured WhatsApp groups (one for senior clinical leadership, one per department) may be the only communication channel that still works, because they run on personal mobile networks, not on the hospital&#8217;s compromised systems.</p><blockquote><p><strong>The WhatsApp Paradox </strong>During normal operations, this guide tells you to be careful with patient data on WhatsApp. But during a cyberattack, WhatsApp may be your only working communication channel. Set up crisis groups now. Test them regularly.</p></blockquote><h3>Trained staff</h3><p>Run annual &#8220;digital downtime&#8221; drills - pick a department, switch off the screens for a shift, and practise paper-based operations. You will find gaps you never knew existed. Reception staff need specific training on manual registration. Pharmacy needs printed formulary access. Lab needs manual sample-tracking workflows.</p><h3>The first 60 minutes</h3><ul><li><p><strong>Clinical leader in charge</strong> - not just the IT head, because the key decisions are about patient triage, not server recovery.</p></li><li><p><strong>Triage systems by clinical priority</strong> - life-support first, then diagnostics, then admin. The billing system can wait. The ICU ventilator network cannot.</p></li><li><p><strong>Switch to manual workflows immediately.</strong> Don&#8217;t wait to see if systems come back.</p></li><li><p><strong>Ambulance diversion</strong> - if your ED can&#8217;t function safely, you need pre-arranged agreements with neighbouring hospitals and a clear protocol for who authorises the diversion.</p></li></ul><h3>Recovery</h3><p>Don&#8217;t rush to reconnect. Systems that haven&#8217;t been fully cleaned can trigger a second wave of encryption. Restore from verified backups, starting with the most critical clinical systems. Every handwritten entry during the downtime needs to go back into the restored digital system - tedious but essential for continuity of care records.</p><div><hr></div><h2>Why Healthcare Is the Number One Target</h2><p>According to the <a href="https://www.seqrite.com/blog/why-healthcare-has-become-the-top-target-for-cyberattacks-in-india-and-what-we-can-do-about-it/">India Cyber Threat Report 2025</a>, the healthcare sector accounted for about 21.82% of all detected cyber threats in India in 2024 - more than banking, more than IT, more than any other sector.</p><p>Why?</p><ul><li><p><strong>High-value data.</strong> A single patient record is worth roughly &#8377;21,000 on the dark web. A credit card number fetches &#8377;420-840. The difference: a credit card can be cancelled with one phone call. Your blood type, surgical history, and Aadhaar-linked insurance details cannot be changed.</p></li><li><p><strong>Life-or-death urgency.</strong> Attackers know hospitals will pay ransoms quickly because the alternative is patients going without care.</p></li><li><p><strong>Expanding attack surface.</strong> Every connected device - heart monitors, infusion pumps, MRI machines - is a potential way in. Many of these devices run outdated software and were never built with security in mind.</p></li><li><p><strong>Legacy systems and thin resources.</strong> Many Indian hospitals run on old operating systems that no longer get security updates. Most small to mid-size hospitals have no dedicated security team at all.</p></li></ul><div><hr></div><h2>Indian Healthcare Case Studies</h2><h3>Regional Cancer Centre, Thiruvananthapuram (April 2024)</h3><p>The Daixin Team targeted 11 of 14 servers at Kerala&#8217;s premier cancer treatment centre on 30 April 2024. Around 20 lakh patient records were exposed. The software controlling linear accelerators - the machines that deliver radiation doses to cancer patients - was directly attacked, forcing a temporary halt to radiotherapy planning. The attackers demanded a ransom reportedly in the range of USD 100 million (roughly &#8377;840 crore).</p><p>This was the first major Indian attack to go after life-saving treatment equipment directly. Previous attacks disrupted records and admin. This one disrupted cancer treatment.</p><h3>Safdarjung Hospital, New Delhi (November 2022)</h3><p>Hit in the same month as AIIMS, Safdarjung - a 1,500-bed central government hospital - had its servers knocked down for a day. The <a href="https://www.healthcareitnews.com/news/asia/not-just-aiims-delhi-safdarjung-hospital-also-reports-cyberattack">Medical Superintendent confirmed</a> it was a cyberattack but not ransomware. During the same period, the ICMR website faced about 6,000 hacking attempts in 24 hours. Three major medical institutions hit in one month. This was coordinated, not random.</p><p>Safdarjung&#8217;s OPD services were less affected because they were already running manually - an accidental insurance policy. But relying on being &#8220;too analogue to hack&#8221; is not a security strategy.</p><h3>MGM Hospital, Navi Mumbai (July 2018)</h3><p>A receptionist at <a href="https://www.bankinfosecurity.asia/mumbai-hospital-hit-by-ransomware-attack-a-11226">MGM Hospital in Vashi</a> switched on her computer one Sunday morning to find a blank screen. By the time anyone reacted, every terminal on the network was infected. Fifteen days of billing and patient data were encrypted. The attackers demanded Bitcoin.</p><p>At the time, India had the highest ransomware infection rate in the world - 67% of organisations hit in 2017, according to Sophos. The entry point was almost certainly a staff member clicking a link in a phishing email.</p><h3>71 Hospitals Breached via a Shared Diagnostic Platform (2022-2023)</h3><p>A breach in a shared cloud-based Laboratory Information Management System (LIMS) gave attackers access to 71 hospitals and over 1,000 diagnostic centres. The platform synced test results, insurance claims, and billing. Attackers exploited a vulnerability in the platform&#8217;s API, and because all 71 hospitals shared the same insecure API tokens with no network segmentation, one breach opened a backdoor to every connected facility.</p><p>Over 1.5 terabytes of data were exposed, including medical scans, insurance details, and doctor&#8217;s notes. Several hospitals had to disconnect and revert to paper for weeks.</p><p>This put paid to the idea that &#8220;cloud integration&#8221; is automatically more secure. In any connected system, the weakest link sets the security level for everyone.</p><h3>Sree Chitra Tirunal Institute, Kerala (Recurring Threats)</h3><p>The <a href="https://www.sctimst.ac.in/">Sree Chitra Tirunal Institute</a> - an Institution of National Importance developing indigenous medical devices like the Chitra Heart Valve and neuro-prosthetics - has faced repeated spear-phishing campaigns. Attackers sent emails to senior cardiac surgeons disguised as official communications from the Ministry of Health or international journals.</p><p>They weren&#8217;t after patient phone numbers. They were after the proprietary design data and alloy compositions of implants worth millions on the black market. In 2023, credential harvesting led to the temporary exposure of treatment protocols for rare neurological disorders - work built up over decades of specialist clinical research.</p><p>For institutes like SCTIMST, the risk is not just data privacy. It is about protecting India&#8217;s indigenous medical R&amp;D.</p><div><hr></div><h2>The Digital Sterile Technique</h2><p>In clinical practice, sterile technique is not optional. You don&#8217;t skip handwashing because you&#8217;re in a hurry. You don&#8217;t reuse a contaminated needle because it&#8217;s more convenient. These are instinctive, non-negotiable practices.</p><p>Digital security needs to reach the same level. Three principles:</p><p><strong>1. Verify every access.</strong> Every login, every device, every access request gets checked - regardless of who is asking or where they are. In security terms this is called &#8220;Zero Trust.&#8221; In practical terms: check everyone&#8217;s ID, every time, even if they work here.</p><p><strong>2. Suspect every message.</strong> If an email or SMS creates urgency or asks for your credentials, stop. Verify through a separate channel. Call the person who supposedly sent it. This takes 30 seconds and can prevent a breach that costs crores.</p><p><strong>3. Never share credentials.</strong> No legitimate authority - not your bank, not your IT team, not the police - will ever ask you to share your password or OTP. If someone does, the conversation is over.</p><div><hr></div><h2>India&#8217;s Legal Framework</h2><p>India does not have a single cybersecurity law. Instead, there is a patchwork:</p><ul><li><p><strong><a href="https://www.meity.gov.in/content/information-technology-act">Information Technology Act, 2000</a></strong> - Section 43A covers compensation for data breaches. Section 66 criminalises computer offences. Section 72A penalises disclosure of personal information.</p></li><li><p><strong>SPDI Rules, 2011</strong> - Mandate &#8220;reasonable security practices&#8221; for sensitive data including health records.</p></li><li><p><strong><a href="https://www.meity.gov.in/data-protection-framework">Digital Personal Data Protection (DPDP) Act, 2023</a></strong> - India&#8217;s dedicated data protection law. The Data Protection Board became operational in late 2025. Consent-based processing, data minimisation, and real financial penalties for non-compliance.</p></li><li><p><strong><a href="https://www.cert-in.org.in/">CERT-In</a> Directives (2022)</strong> - Mandatory 6-hour incident reporting. If you detect a cybersecurity incident, you have 6 hours to report it. Not 6 days, not 6 weeks.</p></li></ul><div class="file-embed-wrapper" data-component-name="FileToDOM"><div class="file-embed-container-reader"><div class="file-embed-container-top"><image class="file-embed-thumbnail-default" src="https://substackcdn.com/image/fetch/$s_!0Cy0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack.com%2Fimg%2Fattachment_icon.svg"></image><div class="file-embed-details"><div class="file-embed-details-h1">DPDP Healthcare Briefing - Not Legal Advice</div><div class="file-embed-details-h2">244KB &#8729; PDF file</div></div><a class="file-embed-button wide" href="https://ajiththamarakshan.substack.com/api/v1/file/bb73c434-f28d-44dc-be6b-4024ee0836db.pdf"><span class="file-embed-button-text">Download</span></a></div><a class="file-embed-button narrow" href="https://ajiththamarakshan.substack.com/api/v1/file/bb73c434-f28d-44dc-be6b-4024ee0836db.pdf"><span class="file-embed-button-text">Download</span></a></div></div><p></p><blockquote><p><strong>The Gap</strong> Unlike the US (which has <a href="https://www.hhs.gov/hipaa/index.html">HIPAA</a>) or the EU (which has GDPR with specific health data provisions), India has no dedicated healthcare cybersecurity regulation. Healthcare providers must piece together obligations from multiple laws.</p></blockquote><div><hr></div><h2>Building Resilience</h2><p><strong>Zero Trust in practice.</strong> Every user verified, every device checked, every network segment isolated. A billing clerk should not have access to clinical records. A radiologist should not have access to financial systems.</p><p><strong>Detection and response.</strong> You need systems that don&#8217;t just block attacks but spot them when they get through. Endpoint Detection and Response (EDR) software watches every device. A Security Information and Event Management (SIEM) system analyses your logs. A Security Operations Centre monitors around the clock - either in-house or outsourced.</p><p><strong>People and process.</strong> Send your own staff fake phishing emails. Those who click get additional coaching, not punishment. Run incident response tabletop exercises at least once a year. Document who to call and in what order when something goes wrong.</p><p><strong>The 3-2-1 backup rule.</strong> Three copies of your critical data. Two different types of storage. One copy offsite or physically disconnected from the network. Test restoration quarterly. An untested backup is no backup at all.</p><div><hr></div><h2>Personal Cybersecurity</h2><h3>Passwords and authentication</h3><ul><li><p><strong>Use a password manager.</strong> <a href="https://bitwarden.com/">Bitwarden</a> is free and works on everything. <a href="https://passwords.google.com/">Google Password Manager</a> is built into Chrome and Android. You only need to remember one master password.</p></li><li><p><strong>Check if your accounts have been breached.</strong> Visit <a href="https://haveibeenpwned.com/">haveibeenpwned.com</a> - a free tool that checks whether your email has appeared in any known data breach. If it has, change those passwords immediately. Subscribe for alerts on future breaches.</p></li><li><p><strong>Turn on Multi-Factor Authentication (MFA)</strong> on every account. Use <a href="https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2">Google Authenticator</a> or <a href="https://www.microsoft.com/en-us/security/mobile-authenticator-app">Microsoft Authenticator</a>. This takes two minutes and is one of the best things you can do for your security.</p></li><li><p><strong>Never share OTPs.</strong> No bank, no government agency, no legitimate service will ever call you and ask for your OTP. If someone does, hang up.</p></li></ul><h3>India-specific scams to watch for</h3><ul><li><p><strong>&#8220;Digital Arrest&#8221; scams</strong> - criminals use deepfake video calls to impersonate CBI or police officials, pressuring you into transfers by threatening arrest.</p></li><li><p><strong>UPI fraud</strong> - fake payment request links or QR codes on WhatsApp or SMS.</p></li><li><p><strong>KYC update phishing</strong> - SMS messages claiming your bank account will be blocked unless you update KYC details immediately.</p></li></ul><h3>Securing your devices</h3><p><strong>Mobile:</strong> Enable biometric lock and a strong PIN. Turn on Find My Device (<a href="https://www.google.com/android/find">Android</a> / <a href="https://www.apple.com/icloud/find-my/">iPhone</a>). Use encrypted backups. Keep Bluetooth and NFC off when not in use. Download apps only from official stores.</p><p><strong>Desktop:</strong> Turn on full-disk encryption (BitLocker on Windows, FileVault on Mac - one checkbox in your settings). Keep everything updated. Use a standard (non-admin) account for daily work. Back up regularly.</p><p><strong>Network:</strong> Change your home Wi-Fi router&#8217;s default password. Use WPA3 encryption. Use a VPN on public Wi-Fi - <a href="https://protonvpn.com/">ProtonVPN</a> has a free tier with no data cap.</p><div><hr></div><h2>Securing WhatsApp and Social Media</h2><p>Let&#8217;s be honest: most Indian healthcare professionals use WhatsApp for patient communication daily. It&#8217;s fast, it&#8217;s convenient, and it&#8217;s end-to-end encrypted. The question is not whether you use it, but whether you use it safely.</p><h3>WhatsApp settings to change now</h3><ul><li><p><strong>Two-Step Verification:</strong> Settings &#8594; Account &#8594; Two-step verification. Set a six-digit PIN. This is the single most important WhatsApp security setting.</p></li><li><p><strong>Biometric app lock:</strong> Settings &#8594; Privacy &#8594; App Lock.</p></li><li><p><strong>View Once for patient data:</strong> When sending X-rays, lab reports, or prescriptions, use View Once. The recipient sees it once, then it&#8217;s gone.</p></li><li><p><strong>Turn off auto-download:</strong> Settings &#8594; Storage and Data &#8594; switch off auto-download for all media. Otherwise patient files end up in your camera roll, backed up to Google Photos, and accessible to other apps.</p></li><li><p><strong>Check linked devices weekly:</strong> Settings &#8594; Linked Devices. Remove anything you don&#8217;t recognise. It takes 10 seconds of physical access to your phone for someone to link your WhatsApp to their laptop.</p></li><li><p><strong>No patient data in group chats.</strong> You cannot control who screenshots, forwards, or is added to a group. Use one-to-one conversations only.</p></li></ul><h3>Patient data red lines</h3><ul><li><p>Never share identifiable patient photos on social media or public groups.</p></li><li><p>Don&#8217;t store patient data on personal devices - use encrypted, organisationally approved platforms.</p></li><li><p>Under the DPDP Act, processing personal health data requires explicit consent.</p></li><li><p>Use fake names and altered details when discussing cases in professional forums.</p></li></ul><blockquote><p><strong>The Long-Term Solution </strong>Most Indian hospitals don&#8217;t provide a secure, approved alternative to WhatsApp for clinical coordination. Until they do, the precautions above are essential. But the real fix requires organisational investment in compliant communication platforms, not just individual discipline.</p></blockquote><div><hr></div><h2>Using AI Tools Safely</h2><p>ChatGPT, Gemini, Copilot and similar tools are finding their way into clinical workflows. Five rules to follow:</p><ol><li><p><strong>No patient data goes into AI tools.</strong> Strip out names, Aadhaar numbers, hospital IDs, and dates of birth before typing anything. Don&#8217;t upload discharge summaries, scans, or reports. Treat every AI chatbox like a postcard, not a sealed letter.</p></li><li><p><strong>Only use tools your hospital has approved.</strong> If your hospital hasn&#8217;t vetted it, don&#8217;t use it for work. Keep a log of which tools are in use across departments.</p></li><li><p><strong>Never act on AI medical output without checking it.</strong> AI produces confident, well-written answers that can be completely wrong. Every AI-generated summary, diagnosis, or drug check must be reviewed by a qualified clinician.</p></li><li><p><strong>AI-powered phishing is now very convincing.</strong> Criminals use AI to write flawless, personalised phishing emails. &#8220;Look for bad grammar&#8221; no longer works. If a message feels off, verify the sender by phone.</p></li><li><p><strong>Put a one-page AI policy in place today.</strong> Which tools are allowed? What data can go in? Who approves new tools? Write it down and circulate it.</p></li></ol><div><hr></div><h2>Five Takeaways</h2><p><strong>1. Cybersecurity is patient safety.</strong> When systems fail, care stops. Treat digital security with the same seriousness as infection control.</p><p><strong>2. Prepare for when, not if.</strong> Paper fallbacks. Crisis WhatsApp groups. Tested backups. Before the attack, not during it.</p><p><strong>3. Practise the Digital Sterile Technique.</strong> Verify every access. Suspect every message. Never share credentials. Make it instinctive.</p><p><strong>4. Your backup is your insurance.</strong> Three copies, two media types, one offsite. Test it quarterly.</p><p><strong>5. It starts with you, today.</strong> Enable MFA. Use a password manager. Turn on WhatsApp Two-Step Verification. Check <a href="https://haveibeenpwned.com/">haveibeenpwned.com</a>. Do it before you close this page.</p><div><hr></div><h2>Quick Reference: Tools You Can Use Right Now</h2><ul><li><p><strong>Password Manager:</strong> <a href="https://bitwarden.com/">Bitwarden</a> (free) - generates and stores unique passwords for every account.</p></li><li><p><strong>MFA App:</strong> <a href="https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2">Google Authenticator</a> (free) - adds a second verification step beyond your password.</p></li><li><p><strong>Breach Check:</strong> <a href="https://haveibeenpwned.com/">Have I Been Pwned</a> (free) - checks if your email has appeared in any known data breach.</p></li><li><p><strong>VPN:</strong> <a href="https://protonvpn.com/">ProtonVPN</a> (free tier, no data cap) - encrypts your traffic on public Wi-Fi.</p></li><li><p><strong>Antivirus (Windows):</strong> Microsoft Defender (built-in) - already on your machine, good enough for most users.</p></li><li><p><strong>Encryption (Windows):</strong> BitLocker (built-in on Pro) - full-disk encryption, one checkbox in Settings.</p></li><li><p><strong>Encryption (Mac):</strong> FileVault (built-in) - System Settings &#8594; Privacy &amp; Security &#8594; FileVault.</p></li><li><p><strong>DNS Protection:</strong> <a href="https://1.1.1.1/family/">Cloudflare 1.1.1.3</a> (free) - set on your router to block malware domains across all devices.</p></li><li><p><strong>Secure Messaging:</strong> <a href="https://signal.org/">Signal</a> (free) - end-to-end encrypted, open-source, minimal data collection.</p></li><li><p><strong>Ad/Tracker Blocker:</strong> <a href="https://ublockorigin.com/">uBlock Origin</a> (free) - browser extension that blocks ads, trackers, and malicious domains.</p></li></ul><div><hr></div><h2>Emergency Contacts</h2><ul><li><p><strong>National Cyber Crime Helpline:</strong> 1930</p></li><li><p><strong>CERT-In Incident Reporting:</strong> <a href="mailto:incident@cert-in.org.in">incident@cert-in.org.in</a></p></li><li><p><strong>Cyber Crime Reporting Portal:</strong> <a href="https://cybercrime.gov.in/">cybercrime.gov.in</a></p></li></ul><div><hr></div><h2>Further Reading</h2><ul><li><p><a href="https://www.cert-in.org.in/">CERT-In</a> - Indian Computer Emergency Response Team</p></li><li><p><a href="https://www.dsci.in/">Data Security Council of India (DSCI)</a></p></li><li><p><a href="https://www.meity.gov.in/">Ministry of Electronics and Information Technology (MeitY)</a></p></li><li><p><a href="https://practiceguides.chambers.com/practice-guides/cybersecurity-2026/india">Chambers and Partners: Cybersecurity 2026 - India Practice Guide</a></p></li><li><p><a href="https://www.seqrite.com/blog/why-healthcare-has-become-the-top-target-for-cyberattacks-in-india-and-what-we-can-do-about-it/">India Cyber Threat Report 2025 - Seqrite / DSCI</a></p></li></ul><div><hr></div><p style="text-align: center;"><em>&#8220;The best security tool is the one you actually use.&#8221;</em></p>]]></content:encoded></item></channel></rss>