{
    "api_version": "1",
    "kind": "dse_post",
    "self": "https://update.dsesecurity.com/api/v1/posts/dse-20260909-212-avoid-shared-bicep-module-deployment-names-in-concurrent-runs/",
    "item": {
        "id": "https://update.dsesecurity.com/updates/dse-20260909-212-avoid-shared-bicep-module-deployment-names-in-concurrent-runs/",
        "slug": "dse-20260909-212-avoid-shared-bicep-module-deployment-names-in-concurrent-runs",
        "url": "https://update.dsesecurity.com/updates/dse-20260909-212-avoid-shared-bicep-module-deployment-names-in-concurrent-runs/",
        "alternate_urls": {
            "markdown": "https://update.dsesecurity.com/updates/dse-20260909-212-avoid-shared-bicep-module-deployment-names-in-concurrent-runs.md",
            "json": "https://update.dsesecurity.com/api/v1/posts/dse-20260909-212-avoid-shared-bicep-module-deployment-names-in-concurrent-runs/"
        },
        "title": "Avoid shared Bicep module deployment names in concurrent runs",
        "summary": "Prevent one deployment's module outputs from being confused with another run targeting the same scope.",
        "format": {
            "slug": "guide",
            "name": "Guide"
        },
        "priority": {
            "slug": "info",
            "name": "Information"
        },
        "featured": false,
        "image": {
            "theme": "network-infrastructure",
            "label": "Networks & infrastructure",
            "alt": "Resilient network core with engineered blue and gold data paths.",
            "card_url": "https://update.dsesecurity.com/assets/editorial/network-infrastructure-card.webp?v=1.8.20",
            "hero_url": "https://update.dsesecurity.com/assets/editorial/network-infrastructure-hero.webp?v=1.8.20",
            "social_url": "https://update.dsesecurity.com/assets/editorial/network-infrastructure-social-v2.jpg?v=1.8.20",
            "width": 2400,
            "height": 1350
        },
        "topics": [
            {
                "slug": "cybersecurity",
                "name": "Cybersecurity",
                "url": "https://update.dsesecurity.com/topic/cybersecurity/"
            },
            {
                "slug": "networks-infrastructure",
                "name": "Networks & Infrastructure",
                "url": "https://update.dsesecurity.com/topic/networks-infrastructure/"
            }
        ],
        "author": {
            "name": "DSE Security Editorial Team",
            "url": "https://update.dsesecurity.com/#editorial-team",
            "type": "Organization"
        },
        "publisher": {
            "name": "Detection Systems & Engineering",
            "url": "https://dsesecurity.com/"
        },
        "published_at": "2026-09-10T00:28:24+00:00",
        "modified_at": "2026-09-10T01:20:45+00:00",
        "reviewed_on": "2026-09-09",
        "reading_minutes": 2,
        "word_count": 227,
        "potentially_affected": "Bicep deployments running modules concurrently at the same target scope.",
        "dse_recommendation": "Omit the optional module deployment name or make it unique for each concurrent deployment.",
        "primary_source": {
            "name": "Bicep modules - Azure Resource Manager | Microsoft Learn",
            "url": "https://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/modules",
            "published_on": null,
            "authority": "Microsoft Learn"
        },
        "publishing_principles": "https://update.dsesecurity.com/updates/dse-updates-editorial-methodology/",
        "usage_info": "https://update.dsesecurity.com/usage/",
        "copyright_notice": "Copyright © 2026 Detection Systems & Engineering. All rights reserved.",
        "content_html": "<h2>Source facts</h2>\n<p>Microsoft warns that concurrent deployments of a module with the same fixed name at the same scope can interfere with each other&#8217;s outputs. Its example involves two Bicep files targeting one resource group; a deployment can show an output belonging to the other run.</p>\n<p>The module&#8217;s optional name becomes the nested deployment resource name. Omitting it produces a generated GUID. Microsoft also describes explicitly unique names as a way to avoid the collision. <a href=\"https://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/modules\" target=\"_blank\" rel=\"noopener noreferrer\">Microsoft Learn</a>.</p>\n<h2>Applicability</h2>\n<p>Review pipelines that can overlap in one scope, including manual reruns and independent applications sharing a resource group. Inspect the module deployment name rather than assuming a different parent file gives the nested deployment a different identity.</p>\n<h2>DSE recommendation</h2>\n<p>DSE recommends choosing and documenting one collision-avoidance convention. Prefer the generated name where no stable explicit name is needed; otherwise require a demonstrably unique value for each overlapping run. Review downstream consumers of module outputs before changing the convention, and retain deployment identifiers in the release evidence.</p>\n<h2>Verification</h2>\n<p>Use a controlled concurrent deployment test with distinguishable expected outputs. Confirm each parent receives its own module result and that the resulting nested deployment names differ. Also test an ordinary single run. Keep the two deployment identifiers and sanitized output comparison so an intermittent collision cannot be mistaken for an application configuration error.</p>\n<h2>Official references</h2>\n<p><a href=\"https://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/modules\" target=\"_blank\" rel=\"noopener noreferrer\">Microsoft Learn: Bicep modules</a>. Source retrieved September 9, 2026.</p>",
        "content_text": "Source facts\nMicrosoft warns that concurrent deployments of a module with the same fixed name at the same scope can interfere with each other’s outputs. Its example involves two Bicep files targeting one resource group; a deployment can show an output belonging to the other run.\nThe module’s optional name becomes the nested deployment resource name. Omitting it produces a generated GUID. Microsoft also describes explicitly unique names as a way to avoid the collision. Microsoft Learn.\nApplicability\nReview pipelines that can overlap in one scope, including manual reruns and independent applications sharing a resource group. Inspect the module deployment name rather than assuming a different parent file gives the nested deployment a different identity.\nDSE recommendation\nDSE recommends choosing and documenting one collision-avoidance convention. Prefer the generated name where no stable explicit name is needed; otherwise require a demonstrably unique value for each overlapping run. Review downstream consumers of module outputs before changing the convention, and retain deployment identifiers in the release evidence.\nVerification\nUse a controlled concurrent deployment test with distinguishable expected outputs. Confirm each parent receives its own module result and that the resulting nested deployment names differ. Also test an ordinary single run. Keep the two deployment identifiers and sanitized output comparison so an intermittent collision cannot be mistaken for an application configuration error.\nOfficial references\nMicrosoft Learn: Bicep modules. Source retrieved September 9, 2026.",
        "content_markdown": "## Source facts\n\nMicrosoft warns that concurrent deployments of a module with the same fixed name at the same scope can interfere with each other’s outputs. Its example involves two Bicep files targeting one resource group; a deployment can show an output belonging to the other run.\n\nThe module’s optional name becomes the nested deployment resource name. Omitting it produces a generated GUID. Microsoft also describes explicitly unique names as a way to avoid the collision. [Microsoft Learn](https://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/modules).\n\n## Applicability\n\nReview pipelines that can overlap in one scope, including manual reruns and independent applications sharing a resource group. Inspect the module deployment name rather than assuming a different parent file gives the nested deployment a different identity.\n\n## DSE recommendation\n\nDSE recommends choosing and documenting one collision-avoidance convention. Prefer the generated name where no stable explicit name is needed; otherwise require a demonstrably unique value for each overlapping run. Review downstream consumers of module outputs before changing the convention, and retain deployment identifiers in the release evidence.\n\n## Verification\n\nUse a controlled concurrent deployment test with distinguishable expected outputs. Confirm each parent receives its own module result and that the resulting nested deployment names differ. Also test an ordinary single run. Keep the two deployment identifiers and sanitized output comparison so an intermittent collision cannot be mistaken for an application configuration error.\n\n## Official references\n\n[Microsoft Learn: Bicep modules](https://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/modules). Source retrieved September 9, 2026."
    },
    "json_ld": {
        "@context": "https://schema.org",
        "@graph": [
            {
                "@type": "Organization",
                "@id": "https://dsesecurity.com/#organization",
                "name": "Detection Systems & Engineering",
                "alternateName": "DSE Security",
                "url": "https://dsesecurity.com/",
                "logo": {
                    "@type": "ImageObject",
                    "url": "https://update.dsesecurity.com/assets/dse-logo-20260812.png?v=1.8.20"
                }
            },
            {
                "@type": "Organization",
                "@id": "https://update.dsesecurity.com/#editorial-team",
                "name": "DSE Security Editorial Team",
                "url": "https://update.dsesecurity.com/",
                "parentOrganization": {
                    "@id": "https://dsesecurity.com/#organization"
                }
            },
            {
                "@type": "WebSite",
                "@id": "https://update.dsesecurity.com/#website",
                "name": "DSE Updates",
                "alternateName": "DSE Security Knowledge Hub",
                "url": "https://update.dsesecurity.com/",
                "inLanguage": "en-US",
                "publisher": {
                    "@id": "https://dsesecurity.com/#organization"
                },
                "potentialAction": {
                    "@type": "SearchAction",
                    "target": {
                        "@type": "EntryPoint",
                        "urlTemplate": "https://update.dsesecurity.com/?q={search_term_string}"
                    },
                    "query-input": "required name=search_term_string"
                }
            },
            {
                "@type": "WebPage",
                "@id": "https://update.dsesecurity.com/updates/dse-20260909-212-avoid-shared-bicep-module-deployment-names-in-concurrent-runs/",
                "url": "https://update.dsesecurity.com/updates/dse-20260909-212-avoid-shared-bicep-module-deployment-names-in-concurrent-runs/",
                "isPartOf": {
                    "@id": "https://update.dsesecurity.com/#website"
                },
                "lastReviewed": "2026-09-09"
            },
            {
                "@type": "BreadcrumbList",
                "@id": "https://update.dsesecurity.com/updates/dse-20260909-212-avoid-shared-bicep-module-deployment-names-in-concurrent-runs/#breadcrumbs",
                "itemListElement": [
                    {
                        "@type": "ListItem",
                        "position": 1,
                        "name": "DSE Updates",
                        "item": "https://update.dsesecurity.com/"
                    },
                    {
                        "@type": "ListItem",
                        "position": 2,
                        "name": "Avoid shared Bicep module deployment names in concurrent runs",
                        "item": "https://update.dsesecurity.com/updates/dse-20260909-212-avoid-shared-bicep-module-deployment-names-in-concurrent-runs/"
                    }
                ]
            },
            {
                "@type": [
                    "Article",
                    "TechArticle"
                ],
                "@id": "https://update.dsesecurity.com/updates/dse-20260909-212-avoid-shared-bicep-module-deployment-names-in-concurrent-runs/#article",
                "identifier": "https://update.dsesecurity.com/updates/dse-20260909-212-avoid-shared-bicep-module-deployment-names-in-concurrent-runs/",
                "url": "https://update.dsesecurity.com/updates/dse-20260909-212-avoid-shared-bicep-module-deployment-names-in-concurrent-runs/",
                "headline": "Avoid shared Bicep module deployment names in concurrent runs",
                "description": "Prevent one deployment's module outputs from being confused with another run targeting the same scope.",
                "abstract": "Prevent one deployment's module outputs from being confused with another run targeting the same scope.",
                "articleBody": "Source facts\nMicrosoft warns that concurrent deployments of a module with the same fixed name at the same scope can interfere with each other’s outputs. Its example involves two Bicep files targeting one resource group; a deployment can show an output belonging to the other run.\nThe module’s optional name becomes the nested deployment resource name. Omitting it produces a generated GUID. Microsoft also describes explicitly unique names as a way to avoid the collision. Microsoft Learn.\nApplicability\nReview pipelines that can overlap in one scope, including manual reruns and independent applications sharing a resource group. Inspect the module deployment name rather than assuming a different parent file gives the nested deployment a different identity.\nDSE recommendation\nDSE recommends choosing and documenting one collision-avoidance convention. Prefer the generated name where no stable explicit name is needed; otherwise require a demonstrably unique value for each overlapping run. Review downstream consumers of module outputs before changing the convention, and retain deployment identifiers in the release evidence.\nVerification\nUse a controlled concurrent deployment test with distinguishable expected outputs. Confirm each parent receives its own module result and that the resulting nested deployment names differ. Also test an ordinary single run. Keep the two deployment identifiers and sanitized output comparison so an intermittent collision cannot be mistaken for an application configuration error.\nOfficial references\nMicrosoft Learn: Bicep modules. Source retrieved September 9, 2026.",
                "datePublished": "2026-09-10T00:28:24+00:00",
                "dateModified": "2026-09-10T01:20:45+00:00",
                "mainEntityOfPage": {
                    "@id": "https://update.dsesecurity.com/updates/dse-20260909-212-avoid-shared-bicep-module-deployment-names-in-concurrent-runs/"
                },
                "inLanguage": "en-US",
                "isAccessibleForFree": true,
                "author": {
                    "@type": "Organization",
                    "name": "DSE Security Editorial Team",
                    "url": "https://update.dsesecurity.com/#editorial-team"
                },
                "publisher": {
                    "@id": "https://dsesecurity.com/#organization"
                },
                "image": {
                    "@type": "ImageObject",
                    "@id": "https://update.dsesecurity.com/updates/dse-20260909-212-avoid-shared-bicep-module-deployment-names-in-concurrent-runs/#primaryimage",
                    "url": "https://update.dsesecurity.com/assets/editorial/network-infrastructure-social-v2.jpg?v=1.8.20",
                    "contentUrl": "https://update.dsesecurity.com/assets/editorial/network-infrastructure-social-v2.jpg?v=1.8.20",
                    "width": 1200,
                    "height": 630,
                    "caption": "Avoid shared Bicep module deployment names in concurrent runs"
                },
                "articleSection": [
                    "Cybersecurity",
                    "Networks & Infrastructure"
                ],
                "keywords": [
                    "Cybersecurity",
                    "Networks & Infrastructure",
                    "Guide",
                    "Information priority"
                ],
                "genre": "Guide",
                "about": [
                    {
                        "@type": "Thing",
                        "name": "Cybersecurity",
                        "url": "https://update.dsesecurity.com/topic/cybersecurity/"
                    },
                    {
                        "@type": "Thing",
                        "name": "Networks & Infrastructure",
                        "url": "https://update.dsesecurity.com/topic/networks-infrastructure/"
                    }
                ],
                "wordCount": 227,
                "timeRequired": "PT2M",
                "publishingPrinciples": "https://update.dsesecurity.com/updates/dse-updates-editorial-methodology/",
                "usageInfo": "https://update.dsesecurity.com/usage/",
                "copyrightHolder": {
                    "@id": "https://dsesecurity.com/#organization"
                },
                "copyrightNotice": "Copyright © 2026 Detection Systems & Engineering. All rights reserved.",
                "citation": {
                    "@type": "CreativeWork",
                    "name": "Bicep modules - Azure Resource Manager | Microsoft Learn",
                    "url": "https://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/modules"
                }
            }
        ]
    }
}