{
    "api_version": "1",
    "kind": "dse_post",
    "self": "https://update.dsesecurity.com/api/v1/posts/dse-20260909-487-account-for-deferred-smb-close-before-a-rest-client-uses-the-file-etag/",
    "item": {
        "id": "https://update.dsesecurity.com/updates/dse-20260909-487-account-for-deferred-smb-close-before-a-rest-client-uses-the-file-etag/",
        "slug": "dse-20260909-487-account-for-deferred-smb-close-before-a-rest-client-uses-the-file-etag",
        "url": "https://update.dsesecurity.com/updates/dse-20260909-487-account-for-deferred-smb-close-before-a-rest-client-uses-the-file-etag/",
        "alternate_urls": {
            "markdown": "https://update.dsesecurity.com/updates/dse-20260909-487-account-for-deferred-smb-close-before-a-rest-client-uses-the-file-etag.md",
            "json": "https://update.dsesecurity.com/api/v1/posts/dse-20260909-487-account-for-deferred-smb-close-before-a-rest-client-uses-the-file-etag/"
        },
        "title": "Account for deferred SMB close before a REST client uses the file ETag",
        "summary": "Why can a REST operation report a concurrent modification after a Linux SMB writer has closed the file?",
        "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:23:49+00:00",
        "modified_at": "2026-09-10T02:08:05+00:00",
        "reviewed_on": "2026-09-09",
        "reading_minutes": 2,
        "word_count": 248,
        "potentially_affected": "Use this check for a Linux SMB writer and FileREST client accessing the same Azure file share. Confirm the supported client and mount configuration; this article is not an instruction to change the share's authentication method.",
        "dse_recommendation": "Trace the close-to-REST handoff before removing concurrency protection.",
        "primary_source": {
            "name": "Mount SMB Azure File Share on Linux | Microsoft Learn",
            "url": "https://learn.microsoft.com/en-us/azure/storage/files/storage-how-to-use-files-linux",
            "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>The Linux SMB client can defer sending CLOSE after the application closes a file. On Azure Files, receiving CLOSE after a write updates the last-modified time and ETag. A REST client can therefore obtain an ETag and then fail a conditional operation with HTTP 412 when the deferred close changes it. Microsoft recommends closetimeo=0 for SMB-writer/REST-reader handoffs, trading some open/close performance for immediate close processing. <a href=\"https://learn.microsoft.com/en-us/azure/storage/files/storage-how-to-use-files-linux\" target=\"_blank\" rel=\"noopener noreferrer\">Microsoft Learn</a>.</p>\n<h2>Applicability</h2>\n<p>Use this check for a Linux SMB writer and FileREST client accessing the same Azure file share. Confirm the supported client and mount configuration; this article is not an instruction to change the share&#8217;s authentication method.</p>\n<h2>DSE recommendation</h2>\n<p>Trace the close-to-REST handoff before removing concurrency protection. Have both application owners identify when the writer considers its work finished and when the REST caller obtains its condition value. Review the documented mount option in a controlled client configuration, keeping the previous value available. Do not replace a conditional write with an unconditional overwrite merely to hide the error. Include the performance tradeoff in the acceptance decision.</p>\n<h2>Verification</h2>\n<p>In an approved test, correlate the SMB close, observed ETag and REST result for the same file. Repeat the handoff after the reviewed mount change and check both correctness and representative open/close behavior. Retain other genuine concurrent writers in the investigation if failures remain. Accept the change only when the intended handoff works without weakening the application&#8217;s concurrency checks.</p>\n<h2>Official references</h2>\n<p><a href=\"https://learn.microsoft.com/en-us/azure/storage/files/storage-how-to-use-files-linux\" target=\"_blank\" rel=\"noopener noreferrer\">Microsoft Learn: Mount SMB Azure File Share on Linux</a>.</p>",
        "content_text": "Source facts\nThe Linux SMB client can defer sending CLOSE after the application closes a file. On Azure Files, receiving CLOSE after a write updates the last-modified time and ETag. A REST client can therefore obtain an ETag and then fail a conditional operation with HTTP 412 when the deferred close changes it. Microsoft recommends closetimeo=0 for SMB-writer/REST-reader handoffs, trading some open/close performance for immediate close processing. Microsoft Learn.\nApplicability\nUse this check for a Linux SMB writer and FileREST client accessing the same Azure file share. Confirm the supported client and mount configuration; this article is not an instruction to change the share’s authentication method.\nDSE recommendation\nTrace the close-to-REST handoff before removing concurrency protection. Have both application owners identify when the writer considers its work finished and when the REST caller obtains its condition value. Review the documented mount option in a controlled client configuration, keeping the previous value available. Do not replace a conditional write with an unconditional overwrite merely to hide the error. Include the performance tradeoff in the acceptance decision.\nVerification\nIn an approved test, correlate the SMB close, observed ETag and REST result for the same file. Repeat the handoff after the reviewed mount change and check both correctness and representative open/close behavior. Retain other genuine concurrent writers in the investigation if failures remain. Accept the change only when the intended handoff works without weakening the application’s concurrency checks.\nOfficial references\nMicrosoft Learn: Mount SMB Azure File Share on Linux.",
        "content_markdown": "## Source facts\n\nThe Linux SMB client can defer sending CLOSE after the application closes a file. On Azure Files, receiving CLOSE after a write updates the last-modified time and ETag. A REST client can therefore obtain an ETag and then fail a conditional operation with HTTP 412 when the deferred close changes it. Microsoft recommends closetimeo=0 for SMB-writer/REST-reader handoffs, trading some open/close performance for immediate close processing. [Microsoft Learn](https://learn.microsoft.com/en-us/azure/storage/files/storage-how-to-use-files-linux).\n\n## Applicability\n\nUse this check for a Linux SMB writer and FileREST client accessing the same Azure file share. Confirm the supported client and mount configuration; this article is not an instruction to change the share’s authentication method.\n\n## DSE recommendation\n\nTrace the close-to-REST handoff before removing concurrency protection. Have both application owners identify when the writer considers its work finished and when the REST caller obtains its condition value. Review the documented mount option in a controlled client configuration, keeping the previous value available. Do not replace a conditional write with an unconditional overwrite merely to hide the error. Include the performance tradeoff in the acceptance decision.\n\n## Verification\n\nIn an approved test, correlate the SMB close, observed ETag and REST result for the same file. Repeat the handoff after the reviewed mount change and check both correctness and representative open/close behavior. Retain other genuine concurrent writers in the investigation if failures remain. Accept the change only when the intended handoff works without weakening the application’s concurrency checks.\n\n## Official references\n\n[Microsoft Learn: Mount SMB Azure File Share on Linux](https://learn.microsoft.com/en-us/azure/storage/files/storage-how-to-use-files-linux)."
    },
    "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-487-account-for-deferred-smb-close-before-a-rest-client-uses-the-file-etag/",
                "url": "https://update.dsesecurity.com/updates/dse-20260909-487-account-for-deferred-smb-close-before-a-rest-client-uses-the-file-etag/",
                "isPartOf": {
                    "@id": "https://update.dsesecurity.com/#website"
                },
                "lastReviewed": "2026-09-09"
            },
            {
                "@type": "BreadcrumbList",
                "@id": "https://update.dsesecurity.com/updates/dse-20260909-487-account-for-deferred-smb-close-before-a-rest-client-uses-the-file-etag/#breadcrumbs",
                "itemListElement": [
                    {
                        "@type": "ListItem",
                        "position": 1,
                        "name": "DSE Updates",
                        "item": "https://update.dsesecurity.com/"
                    },
                    {
                        "@type": "ListItem",
                        "position": 2,
                        "name": "Account for deferred SMB close before a REST client uses the file ETag",
                        "item": "https://update.dsesecurity.com/updates/dse-20260909-487-account-for-deferred-smb-close-before-a-rest-client-uses-the-file-etag/"
                    }
                ]
            },
            {
                "@type": [
                    "Article",
                    "TechArticle"
                ],
                "@id": "https://update.dsesecurity.com/updates/dse-20260909-487-account-for-deferred-smb-close-before-a-rest-client-uses-the-file-etag/#article",
                "identifier": "https://update.dsesecurity.com/updates/dse-20260909-487-account-for-deferred-smb-close-before-a-rest-client-uses-the-file-etag/",
                "url": "https://update.dsesecurity.com/updates/dse-20260909-487-account-for-deferred-smb-close-before-a-rest-client-uses-the-file-etag/",
                "headline": "Account for deferred SMB close before a REST client uses the file ETag",
                "description": "Why can a REST operation report a concurrent modification after a Linux SMB writer has closed the file?",
                "abstract": "Why can a REST operation report a concurrent modification after a Linux SMB writer has closed the file?",
                "articleBody": "Source facts\nThe Linux SMB client can defer sending CLOSE after the application closes a file. On Azure Files, receiving CLOSE after a write updates the last-modified time and ETag. A REST client can therefore obtain an ETag and then fail a conditional operation with HTTP 412 when the deferred close changes it. Microsoft recommends closetimeo=0 for SMB-writer/REST-reader handoffs, trading some open/close performance for immediate close processing. Microsoft Learn.\nApplicability\nUse this check for a Linux SMB writer and FileREST client accessing the same Azure file share. Confirm the supported client and mount configuration; this article is not an instruction to change the share’s authentication method.\nDSE recommendation\nTrace the close-to-REST handoff before removing concurrency protection. Have both application owners identify when the writer considers its work finished and when the REST caller obtains its condition value. Review the documented mount option in a controlled client configuration, keeping the previous value available. Do not replace a conditional write with an unconditional overwrite merely to hide the error. Include the performance tradeoff in the acceptance decision.\nVerification\nIn an approved test, correlate the SMB close, observed ETag and REST result for the same file. Repeat the handoff after the reviewed mount change and check both correctness and representative open/close behavior. Retain other genuine concurrent writers in the investigation if failures remain. Accept the change only when the intended handoff works without weakening the application’s concurrency checks.\nOfficial references\nMicrosoft Learn: Mount SMB Azure File Share on Linux.",
                "datePublished": "2026-09-10T00:23:49+00:00",
                "dateModified": "2026-09-10T02:08:05+00:00",
                "mainEntityOfPage": {
                    "@id": "https://update.dsesecurity.com/updates/dse-20260909-487-account-for-deferred-smb-close-before-a-rest-client-uses-the-file-etag/"
                },
                "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-487-account-for-deferred-smb-close-before-a-rest-client-uses-the-file-etag/#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": "Account for deferred SMB close before a REST client uses the file ETag"
                },
                "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": 248,
                "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": "Mount SMB Azure File Share on Linux | Microsoft Learn",
                    "url": "https://learn.microsoft.com/en-us/azure/storage/files/storage-how-to-use-files-linux"
                }
            }
        ]
    }
}